chore(tooling): pin biome, add git hooks, shared tsconfig, and release skeleton - #37
Merged
Merged
Conversation
…e skeleton Pin @biomejs/biome to 2.4.16 and match biome.json $schema so local checks stop printing the version mismatch. Add check (typecheck+test+lint+build) and check:fast (typecheck+lint) scripts. Add lefthook + commitlint: pre-commit runs check:fast (non-mutating), commit-msg enforces Conventional Commits. prepare installs hooks locally, skipped in CI. Add a minimal root-inherited tsconfig per package and apps/cli (apps/site keeps its astro base). fallbacks build config now extends the root. Add a minimal semantic-release config + manual, dry-run-default workflow that releases only packages/fallbacks. Not armed: needs a confirmed license and an NPM_TOKEN before it can publish.
… filter semantic-release uses the default commit convention (no custom releaseRules); the manual release workflow is the gate, so scope does not filter releases.
semantic-release verifies npm auth in verifyConditions (the package is public, so npm whoami runs) before publish is skipped, so the dry run also needs a valid NPM_TOKEN - the prior comment implied it was only needed for a real publish.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Minimal tooling baseline for docfonts: pinned formatter, git hooks, a shared TypeScript config, and a release skeleton for
@docfonts/fallbacks. Everything is kept deliberately small so we can add on top later, not strip back.@biomejs/biometo2.4.16and matchbiome.json's$schema, so local checks stop printing the version mismatch. Newcheck(typecheck + test + lint + build) andcheck:fast(typecheck + lint) scripts.check:fast(non-mutating - no auto-format that would restage files); commit-msg enforces Conventional Commits.prepareinstalls hooks locally and is skipped in CI. This very commit was validated by the hook.apps/cligets a one-linetsconfig.jsonthat extends the root, and the fallbacks build config now extends it too.apps/sitekeeps its astro base (a real exception). The root config stays the single whole-repo typecheck; per-package configs give editors andtsc -pthe inherited paths (verifiedtsc -p packages/registryresolves cross-imports)..releaserc.json(releases onlypackages/fallbacks,fallbacks-v*tags, no@semantic-release/git) and a manual, dry-run-default workflow. semantic-release is run viabunxin that workflow only, so it never weighs down regular CI installs.CI is unchanged - the existing
ci.ymlalready runs typecheck + lint + build + test on push/PR, which is what was asked for.Deliberately not done, because they are gated decisions:
NPM_TOKEN, and the first0.1.0should be published intentionally after a dry run.Verified:
bun run check(typecheck + test + lint + build) green; commitlint accepts conventional / rejects non-conventional; hooks install and fire; per-package tsconfig resolves cross-package imports.