@77sol-ui/configs
v1.0.6
Published
Strict, opinionated configurations for Biome, TypeScript, commitlint, lefthook and editor tooling.
Readme
@77sol-ui/configs
Strict, opinionated configurations for Biome, TypeScript, commitlint, lefthook, VSCode and Claude Code — the 77sol in-house standard.
What you get
- Biome — formatter + linter (
biome/base.json) - TypeScript — maximally strict presets (
tsconfig/base.json,tsconfig/node.json,tsconfig/react-native.json) - commitlint — conventional commits (
commitlint/base.js) - lefthook — pre-commit (staged-file biome + tsc), pre-push (biome + tsc + tests) and commit-msg (commitlint) (
lefthook/base.yml) - VSCode — biome as default formatter, format/organize-imports on save (
.vscode/settings.json,.vscode/extensions.json) - Claude Code — pre-approved tool list for the common workflow (
claude/settings.json)
Installation
Run the installer in your project root:
npx @77sol-ui/configs installThis will:
- Install
@77sol-ui/configs,@biomejs/biome,@commitlint/cli,@commitlint/config-conventional,lefthookandtypescriptas dev dependencies - Write
biome.jsonextending the base preset - Write
tsconfig.jsonextending@77sol-ui/configs/tsconfig/base.json - Write
commitlint.config.jsre-exporting the base config - Write
lefthook.yml - Write
.gitattributes(LF line endings) - Write
.vscode/settings.jsonand.vscode/extensions.json - Write
.claude/settings.json - Add
lint,lint:fix,typecheckandpreparescripts topackage.json - Run
lefthook installandbiome check --write
Doctor
Check that your project is correctly set up:
npx @77sol-ui/configs doctorVerifies every file/script/dependency the installer touches.
TypeScript variants
| Preset | Use case | Highlights |
| --- | --- | --- |
| tsconfig/base.json | Library / check-only | noEmit, Preserve module, bundler resolution, full strict |
| tsconfig/node.json | Node services that emit | NodeNext resolution, emits to dist/ with sourcemaps + declarations |
| tsconfig/react-native.json | React Native / Expo | JSX, react-native types, customConditions |
All presets enable: strict, exactOptionalPropertyTypes, noUncheckedIndexedAccess, noPropertyAccessFromIndexSignature, noImplicitOverride, noImplicitReturns, noFallthroughCasesInSwitch, noUnusedLocals, noUnusedParameters, verbatimModuleSyntax, erasableSyntaxOnly, isolatedModules.
Publishing (maintainers only)
This package is published to the public npm registry under the @77sol-ui org on every release tag:
yarn version <patch|minor|major>
yarn npm publish
git push --follow-tagspublishConfig.access is set to public in package.json, so the scoped package is published publicly. The maintainer must be authenticated to npm (npm login) with publish rights on the @77sol-ui org.
