Node Typescript configurations for performance and good code style π π
- π Fast: Configured for fast development.
- π» Easy Development: Development configurations like hot-reloading, all with performance improve configurations.
- ποΈ Build: Build commands to ship light production code.
- π§ Clean: Linting and Formatting commands to keep your code clean.
- π» Os Compatible: All the scripts are OS compatible.
- π΄ π’ Test - Testing framework with coverage generation.
-
Install pnpm (npm and yarn could be used but are slower)
-
Fork and clone the repo then install dependencies runing
pnpm install
- Add all your files in the
src/
directory. - Your build code will be in the
dist/
directory. - Run
pnpm dev
for developing - Run
pnpm test
for testing - Run
pnpm lint
to check linting orpnpm lint:fix
for auto fixing linting problems
pnpm install
pnpm build
pnpm start
Use all the template scripts under the package.json
file.
- We all know the time and effort that must be spended in a node project to follow good code practices, including linting, formating and testing, the idea of this project is to group a lot of this good practices in a minimal template that could be used for many projects.
- Another common problem with typescript is that all the bundling and compiling is by default slow, using more modern compilers this repo introduce a lot of performance improvement, for faster build times and automatic test iterations.
- Typescript: Better quality code and scalability with support for types, static code anΓ‘lisys, interfaces, decorators, etc.
- Jest: Automated testing library
- Eslint: Linter for better code quality
- Prettier: Formatter so all the codes looks the same
- esbuild: For fast building, hot-reloading and testing.
- pnpm: For fast dependency installation.
If you have any idea that could make this project better please make an issue and open a pull request to add any feature you need!
The following project takes a lot of configurations of Faker project, including scripts, readme, etc. Go check the library, they have really nice tooling!.