A sane, opinionated template for esm node projects written in typescript.
For new, node 24+ projects.
Uses:
- biome for linting and formatting
- commitlint for linting commit messages
- husky for git hooks
- vite for building
- vitest for testing
- tsx for dev time typescript
Runs the project in watch mode.
Builds/transpiles the code to ./build
.
Runs the built project.
Runs tests.
Runs biome in fix mode (only safe fixes) to lint and format the project.
Runs type checking using tsc.
Yup.
You might want to install the recommended extensions in vscode. Search for @recommended in the extensions tab, they'll show up as "workspace recommendations".
If you have been using eslint and prettier and their extensions, you might want to disable eslint entirely and keep prettier as the formatter only for certain types of files.
This is done by the .vscode/settings.json
file.
Debug configurations are also included (for source using tsx and for bundle using the generated source maps).