ExpenseSync is a web application designed to track individual expenses and facilitate group expense sharing. Built with NestJS, it provides a robust backend framework for managing user authentication, expense tracking, and group management.
For frontend of this application, please visit the link here
Make sure you have the following installed on your system
- NodeJS
- NestJS
- Docker
To install NestExpenses, follow these steps:
-
Clone the repository:
$ git clone https://github.com/ujjwal-bh/expense-sync-api.git
-
Navigate to the project directory:
$ cd expense-sync-api
-
Install dependencies:
$ npm install
-
Run docker compose file
$ docker-compose up
-
Set up environment variables:
.env file - DATABASE_URL="mysql://username:password@localhost:3306/dbname?schema=public" - PORT - JWTSECRET - JWTREFRESHSECRET - TOKENEXPIRYSTR "example: '2h'" - REFRESHTOKENEXPIRYSTR "example: '7d'"
To start the application in development mode, run the following command:
$ npm run start:dev
This will start the server and make the application accessible at http://localhost:8000
.
We welcome contributions from the community! If you'd like to contribute to NestExpenses, please follow these guidelines:
- Fork the repository.
- Create a new branch for your feature or bug fix:
git checkout -b feature-name
- Make your changes and commit them:
git commit -m "Your commit message"
- Push your changes to your fork:
git push origin feature-name
- Open a pull request against the
main
branch of the original repository.
Please ensure your code follows the project's coding style and conventions.
This project is licensed under the MIT License.