This instruction will get you a copy of this project up and running on your local machine
Run the following docker compose command:
docker compose up
It'll setup necessary environment and run the following servers: An backend will be run at http://localhost:3000 An backend swagger docs will be run at http://localhost:3000/v1/docs And frontend will be run at http://localhost:5173
You need Node JS (v18.x.x) installed on your local machine.
Run the followning command to install all the packages:
yarn setup
Set the following environment variable to backend
directory. Also, an example file is given with the name of .env.example
:
PORT=3000
HOST=http://localhost:3000
DATABASE_URL="postgresql://username:password@localhost:5432/expense_tracker"
JWT_SECRET=thisisasamplesecret
JWT_ACCESS_EXPIRATION_MINUTES=30
JWT_REFRESH_EXPIRATION_DAYS=30
JWT_RESET_PASSWORD_EXPIRATION_MINUTES=10
JWT_VERIFY_EMAIL_EXPIRATION_MINUTES=10
Run the followning command to migrate the prisma schema:
yarn db:migrate
This command also perform seed ๐ฑ to your database with some preset dataset.
By this command your frontend and backend server will be run concurrently
yarn start
An backend will be run at http://localhost:3000 An backend swagger docs will be run at http://localhost:3000/v1/docs And frontend will be run at http://localhost:5173
Use this credential to log into the test user account
email: test@gmail.com
password: password123
- NodeJs - Node.jsยฎ is an open-source, cross-platform JavaScript runtime environment.
- ExpressJs - Fast, unopinionated, minimalist web framework for Node.js.
- Prisma - Next-generation Node.js and TypeScript ORM
- React - The library for web and native user interfaces
- Tailwind CSS - A utility-first CSS framework packed with classes
- Shadcn/ui - Tailwind and RadixUi based component library
- Md Maruf Ahmed - Software Engineer