2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 07:45:04 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00
2025-10-24 10:23:12 -04:00

Envelope Budgeting App

A modern web-based envelope budgeting application built with Next.js, TypeScript, and Tailwind CSS. This app helps you manage your finances using the traditional envelope budgeting method in a digital format.

Features

  • Envelope Management: Create and manage budget envelopes for different spending categories
  • Visual Progress Tracking: See spending progress with color-coded progress bars
  • Transaction History: Track and view recent transactions
  • Data Input Options:
    • Manual Entry: Add individual transactions with amount, description, date, and envelope assignment
    • File Import: Import transactions from bank exports (CSV, OFX, QFX, QBO formats)
  • Transaction Editing: Edit existing transactions with full details
  • Envelope Creation: Add new budget envelopes with custom colors and allocations
  • Data Export: Export all data to CSV or JSON formats for backup or analysis
  • Budget Overview: Monitor total allocated, spent, and remaining amounts
  • Responsive Design: Works seamlessly on desktop and mobile devices

Getting Started

Prerequisites

  • Node.js 18+ and npm

Installation

  1. Clone the repository:
git clone <repository-url>
cd budget
  1. Install dependencies:
npm install
  1. Run the development server:
npm run dev
  1. Open http://localhost:7654 in your browser.

Available Scripts

  • npm run dev - Start the development server
  • npm run build - Build the project for production
  • npm run start - Start the production server
  • npm run lint - Run ESLint for code quality checks

Project Structure

src/
├── app/
│   ├── layout.tsx      # Root layout component
│   ├── page.tsx        # Main budgeting dashboard
│   └── globals.css     # Global styles
public/                 # Static assets

Technologies Used

  • Next.js 16 - React framework with App Router
  • TypeScript - Type-safe JavaScript
  • Tailwind CSS - Utility-first CSS framework
  • React 19 - UI library
  • ESLint - Code linting

How to Use

  1. View Dashboard: The main page shows your budget overview and envelope cards
  2. Add Transactions:
    • Manual Entry: Click "Manual Entry" and fill in transaction details
    • File Import: Click "Import from File", select your bank export format, and upload the file
  3. Monitor Envelopes: Each envelope displays allocated amount, spent amount, and remaining balance
  4. Track Progress: Visual progress bars show spending percentage for each envelope
  5. View Transactions: Recent transactions are listed with envelope associations

Data Import

Supported File Formats

  • CSV: Comma-separated values with columns: Date, Amount, Description, Category (optional)
  • OFX/QFX: Standard bank export formats from most financial institutions
  • QBO: QuickBooks Online format
  • PDF: Coming soon (statement parsing)

CSV Format Example

Date,Amount,Description,Category
2024-01-15,-25.50,Weekly groceries,Groceries
2024-01-16,-12.00,Gas station,Transportation
2024-01-17,1500.00,Salary deposit,Income

Advanced Features

Transaction Editing

  • Click the edit icon (pencil) next to any transaction to modify its details
  • Update amount, description, date, and envelope assignment
  • Changes automatically update envelope spending calculations

Envelope Management

  • Click "Add Envelope" to create new budget categories
  • Choose from multiple colors for visual organization
  • Set custom budget allocations for each envelope

Data Export

  • Export all transactions and envelopes to CSV for spreadsheet analysis
  • Export to JSON format for data backup or integration
  • Includes complete transaction history and envelope details

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting
  5. Submit a pull request

License

This project is licensed under the MIT License.

S
Description
No description provided
Readme
2.2 MiB
0 Stars 1 Watchers 0 Forks
Languages
TypeScript 96.3%
Shell 3%
CSS 0.4%
JavaScript 0.2%
Dockerfile 0.1%