Before you begin, ensure you have met the following requirements:
- Node Version Manager (nvm) installed
- pnpm package manager installed
- Make sure to fill your .env (see .env.sample):
cat .env.sample
- Use the required Node.js version using nvm:
nvm use
On Windows, you can use the following command:
nvm use $(Get-Content .nvmrc)
This ensures that the project uses the specified Node.js version.
- Install project dependencies using pnpm:
pnpm install
This will install all the necessary dependencies for your project.
- Watch for changes and automatically restart the server in development:
pnpm dev
This command will use nodemon to watch for changes and restart your application when changes are detected.
- Generate TypeScript types for Mongoose using mongoose-tsgen:
pnpm gen-types
This command will generate TypeScript types based on your Mongoose models.
- Generate Swagger API doc with:
pnpm gen-swagger
This command will generate Swagger documentation, accessible at http://localhost:{port}/api-docs/#/
- Generate Source Code documentation with:
pnpm gen-docs
This command will generate documentation using TypeDoc for the source code and save it in a "docs" folder.
- Build the project:
pnpm build
This command will clean the build/
directory and compile your TypeScript code.
- Start your Node.js application:
pnpm start
This command will start your application using the compiled code.
- Run tests:
pnpm test
This command will run your tests using Mocha. Make sure your tests are
located in ./src/tests/*.test.ts
.
This project is licensed under MIT License
- see the [LICENSE.md] file for details.