cb5b302238fb59956b84cd1660e6885fea89bfe1
Prettier is no longer a project dependency and oxc.oxc-vscode handles formatting for all file types the project touches. Switch [json], [jsonc], [markdown], [mdx], and [yaml] formatters from esbenp.prettier-vscode to oxc.oxc-vscode (oxfmt under the hood, Prettier-compatible for JS/TS and native for JSON/MD/YAML). Drop 'esbenp' from cspell dictionary (no longer referenced).
tiny-pattern-ts
Pattern matching for TypeScript/ESM environments (F#-style, not regex).
Development
- Build:
npm run build - Test:
npm run test,npm run test:ci - Checks:
npm run check,npm run fix - Format/Fix:
npm run fix:oxfmt,npm run fix:oxlint
Tooling
- TypeScript 7 — type checker and build (
tsc). - node --test +
--experimental-strip-types— test runner (Node 22.6+, flag dropped on Node 24). - c8 — code coverage for
test:ci. - oxlint — Rust-based linter.
- oxfmt — Rust-based formatter (Prettier-compatible).
- cspell — spell checking.
- sort-package-json — keep
package.jsonkeys alphabetized. - lefthook — git pre-commit hooks.
Requirements
- Node.js >= 22.6 (>= 24 recommended;
--experimental-strip-typesis unflagged on 24).
VSCode integration
- Recommended extensions: see
.vscode/extensions.json(oxc, cspell). - TypeScript 7 is used via
typescript.tsdkpointing atnode_modules/typescript/lib. - oxc extension provides oxlint squiggles and oxfmt format-on-save.
Workflows
- Version updates via
npm version. - Publishing via GitHub Actions on tagged commits (see
.github/workflows/ci.yml). - Changesets is available as a devDependency for changelog automation if desired.
Contribution guidelines
- Commit signing (GPG).
- Set up commit message template:
npm run use:git-commit-message. - See
commit-message-template. - Type-only tests use
expect-type'sexpectTypeOf(...)insidenode --testcases.