Skip to content

owsam22/Accrue-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

82 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Accrue โ€” Personal Finance Tracker

Live Demo GitHub

A modern, responsive web application for tracking personal expenses, managing bills, splitting costs, and analyzing financial data. Built with React on the frontend and Node.js/Express on the backend, featuring Google OAuth authentication and real-time data visualization.

๐Ÿ“ฝ๏ธ Demo

Accrue Full Demo
A modern, end-to-end look at tracking your financial journey.


โœจ Features

  • ๐Ÿ“Š Dashboard: Overview of your financial health with key metrics and recent activity.
  • ๐Ÿ’ณ Accounts Management: Track multiple accounts and their balances.
  • ๐Ÿ’ฐ Transaction Tracking: Record and categorize income and expenses.
  • ๐Ÿ“„ Bills Management: Keep track of recurring and one-time bills.
  • ๐Ÿค Expense Splitting: Split expenses with friends and family.
  • ๐Ÿ“ˆ Analytics: Visualize spending patterns with interactive charts.
  • ๐Ÿ” Secure Authentication: Google OAuth integration for secure login.
  • ๐Ÿ“ฑ Responsive Design: Works seamlessly across desktop and mobile devices.
  • ๐ŸŒ™ Dark Mode: Toggle between light and dark themes.
  • โšก Real-time Updates: Live data synchronization and polling.
  • ๐Ÿงฎ Calculator: Calculate your expenses.
  • ๐Ÿ“ Notes: Add notes to your transactions and other things.

๐Ÿ“ธ Screenshots & Interface

Desktop vs. Mobile Experience

Dashboard Overview Mobile Responsive
Dashboard Screenshot Mobile View
Comprehensive financial overview Native-feel mobile UI

๐Ÿ“ˆ Expense Analytics

Analytics GIF
Interactive charts and spending analysis powered by Recharts.


๐Ÿค Expense Splitting

Effortlessly split group expenses and track settlements with friends in real-time.


๐Ÿš€ Live Demo

Experience Accrue live: https://accrue-expense-web.vercel.app/

Expense Splitting

Splitting expenses with friends

๐Ÿ› ๏ธ Tech Stack

Frontend

  • React 18 - Modern UI library
  • Vite - Fast build tool and dev server
  • React Router - Client-side routing
  • Styled Components - CSS-in-JS styling
  • Framer Motion - Smooth animations
  • Recharts - Data visualization
  • Axios - HTTP client
  • Lucide React - Beautiful icons

Backend

  • Node.js - Runtime environment
  • Express.js - Web framework
  • MongoDB - NoSQL database
  • Mongoose - ODM for MongoDB
  • JWT - Authentication tokens
  • Google Auth Library - OAuth integration
  • CORS - Cross-origin resource sharing
  • Morgan - HTTP request logger

๐Ÿ“‹ Prerequisites

  • Node.js (v16 or higher)
  • MongoDB (local or cloud instance)
  • Google OAuth credentials

๐Ÿš€ Installation & Setup

Open your browser

Navigate to https://accrue-expense-web.vercel.app/ to access the application...

App will be available soon

๐Ÿ“– Usage

  1. Sign Up/Login: Use Google OAuth to create an account or sign in
  2. Set up Accounts: Add your bank accounts or cash accounts
  3. Track Transactions: Record your income and expenses
  4. Manage Bills: Add recurring bills and track due dates
  5. Split Expenses: Share costs with others and track settlements
  6. View Analytics: Analyze your spending patterns with charts
  7. Customize Settings: Adjust themes and preferences
  8. Add Notes: Add notes to your transactions and other things
  9. Add Calculator: Add calculator to calculate your expenses

๐Ÿ—๏ธ Project Structure

accrue-expense-tracker/
โ”œโ”€โ”€ client/                 # React frontend
โ”‚   โ”œโ”€โ”€ public/
โ”‚   โ”œโ”€โ”€ src/
โ”‚   โ”‚   โ”œโ”€โ”€ components/     # Reusable UI components
โ”‚   โ”‚   โ”œโ”€โ”€ pages/         # Page components
โ”‚   โ”‚   โ”œโ”€โ”€ api/           # API service functions
โ”‚   โ”‚   โ”œโ”€โ”€ context/       # React context providers
โ”‚   โ”‚   โ”œโ”€โ”€ hooks/         # Custom React hooks
โ”‚   โ”‚   โ””โ”€โ”€ ...
โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ””โ”€โ”€ vite.config.js
โ”œโ”€โ”€ server/                 # Node.js backend
โ”‚   โ”œโ”€โ”€ config/            # Database configuration
โ”‚   โ”œโ”€โ”€ controllers/       # Route controllers
โ”‚   โ”œโ”€โ”€ middleware/        # Express middleware
โ”‚   โ”œโ”€โ”€ models/           # MongoDB models
โ”‚   โ”œโ”€โ”€ routes/           # API routes
โ”‚   โ”œโ”€โ”€ package.json
โ”‚   โ””โ”€โ”€ index.js
โ””โ”€โ”€ README.md

๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

๐Ÿ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

๐Ÿ‘จโ€๐Ÿ’ป Author

owsam22 - GitHub | LinkedIn


โญ If you found this project helpful, please give it a star on GitHub!