A full-stack invoicing application built with React.js frontend and Flask backend.
- User account creation and authentication
- Invoice creation and management
- Report generation from invoices
- Responsive design
- Frontend: React.js with responsive design
- Backend: Flask (Python)
- Database: SQLite
- Environment: Python virtual environment (.venv)
- Create and activate virtual environment:
python3 -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate- Install Python dependencies:
pip3 install -r requirements.txt- Initialize the database:
cd src/backend
python3 init_db.py- Run the Flask server:
python3 app.py- Install Node.js dependencies:
cd src/frontend
npm install- Start the React development server:
npm startinvoice-application/
├── src/
│ ├── backend/
│ │ ├── app.py
│ │ ├── models.py
│ │ ├── routes/
│ │ └── database.db
│ └── frontend/
│ ├── src/
│ ├── public/
│ └── package.json
├── requirements.txt
└── README.md
POST /api/auth/register- Register new userPOST /api/auth/login- User loginGET /api/invoices- Get user invoicesPOST /api/invoices- Create new invoiceGET /api/reports- Generate reports
- Register a new account or login
- Create invoices with customer details and line items
- View and manage your invoices
- Generate reports from your invoice data