This repo contains the code for the both the frontend and backend of the application. The api is hosted on railway and the frontend is hosted on Vercel.
The backend is written in Node and TypeScript with NestJS as the framework. The database is Postgresql You can find the code for the backend on the api folder.
The frontend is written in React with NextJS as the framework and Tailwindcss as the styling solution. You can find the code for the frontend on the app folder.
This project uses pnpm as the package manager. To install pnpm run the following command:
npm install -g pnpm
To install the backend first go to the api folder.
cd api
And run the following command:
pnpm install
The api folder contains an example for the environment variable file. One is the postgres database and the other jwt secret. Please place an environment variable file in the api folder with the proper values.
After installing the backend, you need to migrate the database and generate prisma client. To migrate the database locally run the following command in api folder:
pnpm migrate:dev
To generate prisma client locally run the following command in api folder:
pnpm generate
Optionally you can use the prisma studio to view or edit the database manually just run the following commmand in api folder:
pnpm studio
After that you can start the server by running the following command in api folder:
pnpm start:dev
You can interact with the deployed server HERE
The swagger documentation for the backend is available in the HERE
To install the frontend run the following command in app directory
pnpm install
Before you start the server you need to have an .env.local file placed in the root of app folder an example is provided. Please make sure the password is at least 32 characters
To start the server run the following command in app folder
pnpm dev
Also please make sure the API_URL is set to the correct url for the backend in the .env.development folder
You can interact with the deployed app HERE
Email: admin@email.com Password: 987654321