Skip to content

Pavan0228/FinanceTracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

FinanceTracker

FinanceTracker is an automatic finance tracker designed to help you keep a close eye on your spending habits. By intelligently scraping your messages and providing insightful analytics, FinanceTracker enables you to manage your budget more effectively and make informed financial decisions.

Features

  • Automatic Message Scraping: Effortlessly track your spending by extracting financial information from messages and transactions.
  • Budget Management: Set budgets for different categories and get notifications when you are nearing your limits.
  • Spending Insights: Gain an overview of your spending patterns with visual graphs and analytics.
  • Customizable Alerts: Receive alerts for unusual spending activity or when bills are due.
  • Data Privacy: Your data remains secure and private with advanced encryption methods.

Demo Credentials

For a demo of the application, you can use the following credentials:

Getting Started

Follow these instructions to get the project up and running on your local machine.

Prerequisites

  • Node.js: Ensure you have Node.js installed on your system.
  • React.js: For the front-end of the application.
  • Express.js: For building the backend.
  • Database: A suitable database like MongoDB for storing transaction data.
  • Redis: Used for checking Firebase data.
  • Scraping Library: Set up the necessary tools for message scraping.
  • AWS SDK: For interacting with AWS services like S3.

Installation

  1. Clone the repository:
    git clone https://github.com/Sridhar1030/FinanceTracker.git
    
  2. Navigate to the project directory:
    cd FinanceTracker
  3. Install dependencies:
    npm install
  4. Set up your environment variables in a .env file. You'll need variables for:
    • Database URL
    • Redis connection string
    • Firebase credentials
    • API keys (if applicable)
    • Encryption keys for data security

Running the Application

To start the development server, run:

npm run dev

For the production build:

npm run build
npm start

Usage

  1. Create an Account: Sign up and connect your message sources.
  2. Set Your Budget: Define budgets for different categories, such as groceries, transportation, and entertainment.
  3. Review Your Spending: View your transaction history, analyze trends, and adjust your spending habits.
  4. Get Insights: Understand your financial habits through personalized insights and recommendations.

Technology Stack

  • Frontend: React.js, Tailwind CSS
  • Backend: Node.js, Express.js
  • Database: MongoDB or your preferred database
  • Message Scraping: Library/tool for scraping messages
  • Caching: Redis for checking Firebase data
  • Data Visualization: Chart.js or similar library for graphs and analytics

AWS Services Used

  • AWS EC2: Deployed the FinanceTracker application on Amazon EC2 for scalable and flexible hosting.
  • AWS S3: Used Amazon S3 for storing user profile photos securely, enabling easy access and management of user data.
  • AWS SDK: Integrated the AWS SDK to facilitate interactions with AWS services for file uploads and data retrieval.

Project Structure

FinanceTracker/
│
├── src/
│   ├── components/     # React components
│   ├── pages/          # Application pages
│   ├── services/       # API and data services
│   ├── utils/          # Utility functions
│   └── App.js          # Main app component
│
├── backend/
│   ├── models/         # Database models
│   ├── routes/         # API routes
│   ├── controllers/    # Request handlers
│   └── server.js       # Main server file
│
├── public/             # Public assets
├── .env                # Environment variables
├── package.json        # Project metadata and dependencies
└── README.md           # Project documentation

Contributing

Contributions are welcome! If you have suggestions for improvements or want to fix bugs, please fork the repository and submit a pull request.

  1. Fork the Project
  2. Create your feature branch: git checkout -b feature/NewFeature
  3. Commit your changes: git commit -m 'Add new feature'
  4. Push to the branch: git push origin feature/NewFeature
  5. Open a pull request

License

This project is licensed under the MIT License. See the LICENSE file for more information.

About

An automatic Finance Tracker that scraps messages from your phone

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages