Opinionated, reusable TypeScript tooling configurations focused on performance, code quality, and developer experience.
This package provides recommended, opinionated configurations designed to reduce project setup time and maintain consistent tooling across TypeScript projects.
Use it when you want to:
- Move fast without sacrificing code quality
- Keep a consistent developer experience across repositories
- Avoid repetitive configuration boilerplate
- Standardize tooling with a clear opinionated default
The configurations prioritize:
- Performance — Fast tooling and builds
- Code quality — Comprehensive linting and type checking
- Developer experience — Zero-friction setup and consistent workflows
- Modern tooling — Latest standards and best practices
Note
This package is designed primarily for Bun environments. The workflow validations and tool integrations are optimized for Bun's runtime and package manager.
| Category | Tool | Description |
|---|---|---|
| Type checking | TypeScript | Applied together with Oxlint via typeCheck/typeAware |
| Linter | Oxlint | Fast linting, pre-configured |
| Formatter | Oxfmt | Fast formatting, pre-configured |
| Spellchecking | cspell | Pre-configured for English/Spanish |
| Commit linting | commitlint | Enforces Conventional Commits |
| Git hooks | lefthook | Wired up locally (pre-commit, commit-msg, pre-push) |
| Category | Tool | Description |
|---|---|---|
| CI/CD | GitHub Actions | Automated workflows for validation and release pipelines |
| Release | Semantic Release | Automated versioning and releases |
The easiest way to use this stack is to start from our ready-to-use template:
It is already set up with the recommended defaults and tooling wiring.
Install the package and follow our Installation, Usage & Configuration Guide.