/budgetWise-template-

A Personal Finance Management App

Primary LanguageJavaScript

BudgetWise

BudgetWise is a personal finance management app designed to help users track their income and expenses, set budgets, and visualize their spending habits.

Features

  • Secure user authentication and registration
  • Linking bank accounts via Plaid
  • Tracking income and expenses
  • Setting and monitoring budgets
  • Generating financial reports and insights

Technology Stack

  • Frontend: React (JavaScript)
  • Backend: Node.js (JavaScript) with Express
  • Database: PostgreSQL
  • APIs: Plaid for bank integration
  • Authentication: OAuth 2.0

Project Structure

budgetwise/ ├── backend/ │ ├── .env │ ├── index.js │ ├── package.json │ ├── Dockerfile │ ├── routes/ │ │ ├── auth.js │ │ ├── transactions.js │ │ ├── budget.js │ │ ├── report.js │ └── models/ │ └── user.js ├── frontend/ │ ├── public/ │ ├── src/ │ │ ├── components/ │ │ │ ├── Login.js │ │ │ ├── Register.js │ │ │ ├── Transactions.js │ │ │ ├── Budget.js │ │ │ ├── Report.js │ │ ├── App.js │ │ ├── index.js │ ├── .env │ ├── package.json │ ├── Dockerfile └── README.md

Getting Started

Prerequisites

  • Node.js
  • PostgreSQL
  • Docker

Backend Setup

  1. Navigate to the backend directory:
    cd backend
    

Install dependencies:

bash Copy code npm install Create a .env file and add your environment variables:

env Copy code JWT_SECRET=your_jwt_secret PLAID_CLIENT_ID=your_plaid_client_id PLAID_SECRET=your_plaid_secret Start the backend server:

bash Copy code npm start (Optional) Build and run the Docker container:

bash Copy code docker build -t budgetwise-backend . docker run -p 5000:5000 budgetwise-backend

Frontend Setup Navigate to the frontend directory: cd frontend

Install dependencies: npm install

Create a .env file and add your environment variables: REACT_APP_API_URL=http://localhost:5000

Start the frontend server: npm start

(Optional) Build and run the Docker container: docker build -t budgetwise-frontend . docker run -p 3000:3000 budgetwise-frontend

Contributing Feel free to fork the repository and make contributions. Pull requests are welcome!

License This project is licensed under the MIT License.

vbnet

This README provides an overview of the project, a breakdown of the features and technology stack, the project structure, and instructions for getting started with the backend and frontend setups.