Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/max-hirning/fintrack-api
Finance tracker api: NestJS + MongoDB
https://github.com/max-hirning/fintrack-api
apis authentication cloudinary express file-upload finances mongo-db nestjs nestjs-mailer nodejs rest-apis typescript validation
Last synced: 3 months ago
JSON representation
Finance tracker api: NestJS + MongoDB
- Host: GitHub
- URL: https://github.com/max-hirning/fintrack-api
- Owner: Max-Hirning
- Created: 2024-03-12T15:01:53.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2024-05-10T15:27:54.000Z (8 months ago)
- Last Synced: 2024-09-27T17:22:41.705Z (3 months ago)
- Topics: apis, authentication, cloudinary, express, file-upload, finances, mongo-db, nestjs, nestjs-mailer, nodejs, rest-apis, typescript, validation
- Language: TypeScript
- Homepage: https://fin-track-api.vercel.app
- Size: 287 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FinTrack API
Welcome to the FinTrack API, a backend service for a fintrack app built using NestJS, MongoDB, and other technologies.## Getting Started
To get started with the FinTrack API, follow these steps:- [NestJS](https://nestjs.com/): A progressive Node.js framework for building efficient, reliable, and scalable server-side applications.
- [MongoDB](https://www.mongodb.com/): A NoSQL database for storing recipe data.
- [Cloudinary](https://cloudinary.com/): For storing and serving recipe images.
- [JWT](https://jwt.io/): JSON Web Token for authentication.
- [bcrypt](https://www.npmjs.com/package/bcrypt): A library for hashing passwords securely.
- [Mongoose](https://mongoosejs.com/): A MongoDB object modeling tool.
- [Jest](https://jestjs.io/): A JavaScript testing framework.
- [Supertest](https://github.com/visionmedia/supertest): A library for testing HTTP servers.
- [ESLint](https://eslint.org/): A tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.
- [FXRatesAPI](https://fxratesapi.com/docs): Currencies rates API.Clone the repository:
1. Copy code:
`git clone https://github.com/Max-Hirning/FinTrack-api.git`2. Install dependencies:
`npm install`3. Set up your environment variables by creating a .env file in the root directory. Sample .env variables:
* `EMAIL=""`
* `EMAIL_PASS=""`
* `EMAIL_CODE_EXPIRES_IN="1d"`
* `JWT_TOKEN_EXPIRES_IN="30d"`
* `ADMIN_ID=""`
* `ADMIN_EMAIL=""`
* `ADMIN_PASSWORD=""`
* `CLOUDINARY_CLOUDNAME=""`
* `CLOUDINARY_APIKEY=""`
* `CLOUDINARY_APISECRET=""`
* `PORT=9000`
* `ORIGIN_URL=""`
* `SECRET_KEY=""`
* `ORIGIN_API_URL=""`
* `DB_URL=""`
* `ACCESS_TOKEN_CURRENCY="" for FXRatesAPI`5. Start the development server:
`npm run start:dev`The API server will start at `http://localhost:${PORT}`.
## **[Postman](https://www.postman.com/maxitco/workspace/max-s-api/collection/17033383-a163ca0a-3dc6-4147-a572-adddd170aa2d?action=share&source=copy-link&creator=17033383)**
## Support and Contributions
For support, questions, or feedback, please contact [email protected].If you would like to contribute to the FinTrack API, fork the repository and create a new branch for your feature. Submit a pull request with detailed information about the changes.
## License
This project is licensed under the MIT License.## Additional Commands
***I haven't written the tests yet.***
* Run unit tests:
`npm test`
* Run test coverage:
`npm run test:cov`
* Run linting:
`npm run lint`Thank you for using the Fintrack API! We hope it helps you manage your finance with ease. Happy coding!
## About the Author
FinTrack API is developed and maintained by Max Hirning. For more projects and updates, visit the [GitHub repository](https://github.com/Max-Hirning).## Future updates
* Invest tracker(stocks)
* Crypto tracker(cryptocurrencies)