FinTrack is a personal finance tracker mobile application that allows users to monitor their online and offline expenses from various connected accounts in one place. This repository contains both the frontend mobile application built with React Native and the backend server built with Node.js.
- Expense Tracking: Track all your expenses in one place, categorized and summarized for easy review.
- Bank Account Integration: Link your bank accounts using Plaid API to automatically import transactions.
- LLM Integration: Access the power of LLM in order to get personalised insights, summaries and more by simply asking the question to your data.
- Receipt Scanning: Use OCR technology to scan and digitize receipts.
- Analytics: View detailed spending analytics and insights.
- User Authentication: Secure login and registration with biometric authentication support.
- Node.js
- npm or yarn
- Expo CLI
- Android Studio / Xcode (for mobile app development)
-
Clone the repository:
git clone https://github.com/yashsoni27/FinTrack.git cd FinTrack
-
Install dependencies for the mobile app:
cd FinTrack npm install
-
Install dependencies for the server:
cd server npm install
- Start the backend server:
cd server npm start
- Run the mobile app:
cd.. npx expo run:android
- src/: Contains the main codebase for the mobile app
- components/: Reusable UI components
- screens/: App screens and navigation setup
- assets/: Images, icons, etc.
- services/: API service calls and utility functions
- navigation/: Navigation setup
- controllers/: Handles the logic for different routes
- models/: Mongoose models for MongoDB
- routes/: Express routes
- middlewares/: Custom middleware functions
- config/: Configuration files and constants
-
Frontend:
- React Native
- Expo
- Async Storage
- Axios
-
Backend:
- Node.js
- Express.js
- MongoDB
- Mongoose
- Plaid API
- Gemini API
Contributions are welcome! Please fork the repository and create a pull request with your changes. Make sure to follow the existing code style and include relevant tests for any new functionality.
This project is licensed under the MIT License.