A simple booking system built with NestJS 11 & Prisma. This project was created to test the NestJS framework, and additional changes or new features may appear over time.
The project uses a PostgreSQL database running in Docker. Authentication has been implemented using the Google Auth0 with the JWT tokens. Each module features multiple unit and e2e tests.
This project requires Node.js 20+, pnpm 9+ and docker to run.
- Clone the repository and install all dependencies using pnpm
- Copy the values from the
.env.exampleto the.envfile and update the variables - Start the database using the
docker:dbscript - Push the prisma schema to the database
npx prisma db push - Start the development server
pnpm run start:dev - If necessary, run prisma studio to check the db data
pnpm run prisma:studio - You can also populate the database with test data using
pnpm run prisma:seed
Each time you run the prisma:gen command, a new DBML diagram will be generated in the prisma/schema.dbml file. You can use dbdiagram.io to visualize the database schema as an Entity-Relationship diagram.
This project is under the MIT license.