A full-stack budget tracking application built with React, Express, and PostgreSQL. Track your income, expenses, and manage your personal finances with an intuitive interface and AI-powered chatbot assistance.
- 📊 Track income and expenses
- 💰 Real-time budget overview
- 🔐 User authentication and authorization
- 🤖 AI chatbot for financial assistance
- 📱 Responsive design with Tailwind CSS
- 🔒 Secure password hashing with bcrypt
- React - UI library
- Vite - Build tool and dev server
- Tailwind CSS - Styling
- React Router - Navigation
- Axios - HTTP client
- @n8n/chat - Chatbot integration
- Node.js - Runtime environment
- Express - Web framework
- PostgreSQL - Database
- bcrypt - Password hashing
- dotenv - Environment configuration
- CORS - Cross-origin resource sharing
- Node.js (v14 or higher)
- PostgreSQL database
- npm or yarn
- Clone the repository:
git clone https://github.com/pradeeshl/BUDGET_TRACKER.git
cd BUDGET_TRACKER- Install backend dependencies:
cd back-end
npm install- Install frontend dependencies:
cd ../front-end
npm install- Set up environment variables:
Create a .env file in the back-end directory:
DATABASE_URL=your_postgresql_connection_string
PORT=3000- Set up the database:
- Ensure PostgreSQL is running
- Create your database and configure the connection in
back-end/db.js
- Start the backend server:
cd back-end
npm run dev- Start the frontend development server:
cd front-end
npm run devThe frontend will be available at http://localhost:5173 and the backend at http://localhost:3000.
- Build the frontend:
cd front-end
npm run build- Start the backend:
cd back-end
npm startBUDGET_TRACKER/
├── back-end/
│ ├── Controller/
│ │ └── ClientController.js
│ ├── Routes/
│ │ └── ClientRoutes.js
│ ├── db.js
│ ├── server.js
│ └── package.json
├── front-end/
│ ├── src/
│ │ ├── components/
│ │ │ ├── BudgetTracker.jsx
│ │ │ ├── ChatBot.jsx
│ │ │ ├── Login.jsx
│ │ │ ├── SignUp.jsx
│ │ │ └── ...
│ │ ├── App.jsx
│ │ └── main.jsx
│ └── package.json
└── README.md
All API endpoints are prefixed with /api
- Authentication routes
- Budget management routes
- Transaction routes
Pradeesh L