Skip to content

Tibi81/InvoiceManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

23 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“§ Invoice Manager

Automated invoice management from Gmail with web and desktop interfaces

Status License

Personal invoice management system that automatically processes invoices from Gmail and manages recurring bills.


✨ Features

MVP (v1.0.0)

βœ… Email-based Invoice Processing

  • Gmail API integration (up to 2 accounts)
  • Automatic PDF invoice parsing
  • Payment link detection
  • Extract amount, due date, IBAN automatically

βœ… Manual Recurring Invoices

  • Create templates for monthly bills (Netflix, rent, etc.)
  • Automatic invoice generation on due dates
  • Edit/pause/delete recurring invoices

βœ… Invoice Management

  • List view with filters: Unpaid / Paid / All
  • Mark invoices as paid
  • QR code generation for bank transfers (EPC standard)
  • Payment link quick access

Platforms

  • 🌐 Web UI - React-based web application
  • πŸ’» Desktop App - Native Windows application (Flet)

πŸ—οΈ Architecture

Backend (Flask REST API)
    ↓
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  React    β”‚    Flet    β”‚
β”‚  Web UI   β”‚  Desktop   β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”΄β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Tech Stack:

  • Backend: Flask (Python 3.11+)
  • Web: React + Vite
  • Desktop: Flet
  • Database: SQLite
  • APIs: Gmail API, PDF parsing

πŸš€ Quick Start

Prerequisites

  • Python 3.11+
  • Node.js 18+
  • Gmail API credentials (setup guide)

Backend Setup

cd backend
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env      # Add your Gmail credentials
python app.py             # Runs on http://localhost:5000

Web Frontend

cd frontend-web
npm install
npm run dev               # Runs on http://localhost:3000

Desktop App

cd frontend-desktop
pip install -r requirements.txt
python main.py            # Opens desktop window

πŸ“– Detailed setup: See docs/SETUP.md


πŸ“¦ Project Status

Backend

  • Flask API setup
  • Database models
  • Gmail API integration
  • PDF parsing
  • QR code generation
  • Recurring invoice logic
  • API endpoints (CRUD)

Web Frontend

  • React setup
  • Gmail account management
  • Invoice list (3 views)
  • Invoice details modal
  • Recurring invoices form
  • QR code display

Desktop

  • Flet setup
  • UI components
  • Backend integration
  • System tray
  • Build pipeline

View detailed roadmap β†’


πŸ“ Project Structure

invoice-manager/
β”œβ”€β”€ backend/              # Flask REST API
β”‚   β”œβ”€β”€ app.py
β”‚   β”œβ”€β”€ models/
β”‚   β”œβ”€β”€ services/
β”‚   └── api/
β”‚
β”œβ”€β”€ frontend-web/         # React application
β”‚   β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ public/
β”‚   └── package.json
β”‚
β”œβ”€β”€ frontend-desktop/     # Flet desktop app
β”‚   β”œβ”€β”€ main.py
β”‚   β”œβ”€β”€ components/
β”‚   └── assets/
β”‚
β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ SETUP.md
β”‚   └── API.md
β”‚
└── agent.md             # AI development guide

🀝 Contributing

This is currently a personal project, but suggestions and bug reports are welcome!

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'feat: add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

See agent.md for coding guidelines.


πŸ“„ License

MIT License - see LICENSE file for details


πŸ—ΊοΈ Roadmap

v1.0.0 - MVP (Current)

  • Email invoice processing
  • Recurring invoices
  • Basic invoice management
  • Web + Desktop interfaces

v1.1.0 - Enhanced Features

  • Statistics dashboard
  • Category/tag system
  • CSV export
  • Email notifications

v1.2.0 - Advanced

  • Multi-currency support
  • Advanced filtering
  • Bulk operations
  • API webhooks

v2.0.0 - Platform Expansion

  • Mobile app (React Native)
  • Multi-user support
  • Cloud sync option
  • Payment integrations

⚠️ Note

This project is in early development. Features may change, and the codebase is not production-ready yet.

Current focus: Backend API (MVP features)


πŸ“ž Support


Built with ❀️ for personal finance management

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors