We talk about a lot of advanced Node.js and TypeScript concepts on the blog, particularly focused around Domain-Driven Design and large-scale enterprise application patterns. However, I received a few emails from readers that were interested in seeing what a basic TypeScript starter project looks like. So I've put together just that.
- Minimal
- TypeScript v4
- Testing with Jest
- Linting with Eslint and Prettier
- Pre-commit hooks with Husky
- VS Code debugger scripts
- Local development with Nodemon
Starts the application in development using nodemon
and ts-node
to do hot reloading.
Starts the app in production by first building the project with npm run build
, and then executing the compiled JavaScript at build/index.js
.
Builds the app at build
, cleaning the folder first.
Runs the jest
tests once.
Run the jest
tests in watch mode, waiting for file changes.
Format your code.
Format your code in watch mode, waiting for file changes.
"husky": {
"hooks": {
"pre-commit": "npm run test && npm run prettier-format && npm run lint"
}
},