Skip to content

Bookkeeping Web Application for Receipt Data Parsing, Categorization and Management

License

Notifications You must be signed in to change notification settings

AIalchemistART/booksmaster

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

184 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

📊 Booksmaster

AI-Powered Bookkeeping for Contractors & Freelancers

Free, open source, and built for the perpetual entrepreneur.

License: MIT GitHub Sponsors Ko-fi Made with Next.js Powered by Gemini AI

Built by an indie developer, sustained by your support. If Booksmaster saves you $100 at tax time, consider donating $10 to keep development going.



🎯 What is Booksmaster?

Booksmaster is free, open source bookkeeping software designed specifically for contractors, freelancers, and perpetual entrepreneurs who cycle through multiple ventures before finding sustained success.

The Problem It Solves

Most bookkeeping software assumes you're on a hockey-stick growth trajectory. QuickBooks, FreshBooks, Xero—they're all optimized for businesses scaling to 10+ employees, with features you'll never use and price tags that assume you're profitable.

Reality: Most contractors and freelancers cycle through 3-5 ventures before sustained success. You need bookkeeping that works today, not software designed for a future you may never hit.

The Booksmaster Solution

  • No subscriptions - $0 forever (vs QuickBooks $300/year, FreshBooks $200/year)
  • AI receipt scanning - 6x more accurate than traditional OCR
  • Contractor-focused - Categories and workflows built for 1099 workers
  • Privacy-first - Your data stays on your device (cloud sync optional)
  • Gamified - XP, levels, achievements make bookkeeping less painful
  • Export everything - Your data, your control. No vendor lock-in.

� Table of Contents


� Why Open Source?

Unlike QuickBooks ($300/year), FreshBooks ($200/year), or Wave (free but sells your data), Booksmaster is:

  • 🔓 Truly free - MIT licensed, use forever
  • 🔒 Privacy-first - All data stays on your device (cloud sync optional)
  • 🛠️ Customizable - Fork it, modify it, make it yours
  • 🤝 Community-driven - No corporate agenda, just solving real problems

Built for reality, not growth fantasy. Most contractors and freelancers cycle through 3-5 ventures before finding sustained success. You need bookkeeping software that works today, not one optimized for a hockey-stick growth trajectory you may never hit.


❤️ Support This Project

Booksmaster is free and always will be. If it saves you time or money, consider supporting development:

Recurring Support:

One-Time Donation:

Other Ways to Help:

  • ⭐ Star this repo on GitHub
  • 🐛 Report bugs or request features
  • 📝 Contribute code or documentation
  • 📢 Tell other contractors/freelancers

Why donate? This project took 6 months to build. Your support = more features, faster bug fixes, and continued maintenance. Even $5/month helps me dedicate time to this instead of client work.


✨ Key Features

🤖 AI-Powered Receipt Scanning

Problem: Traditional OCR fails on complex receipts (manifests, logos, handwriting).

Solution: Google Gemini Vision AI understands context, not just characters.

  • 6x more accurate than traditional OCR (Tesseract)
  • 5x faster than manual entry
  • Automatically extracts:
    • Vendor name (even from logos)
    • Total amount (even when buried in itemized lists)
    • Date (multiple formats)
    • Payment method (cash, check, card)
  • Learns your patterns - Gets smarter with use

Real-world test: 100 receipts scanned. Traditional OCR: 67% accurate. Gemini Vision: 94% accurate.


📊 Contractor-Specific Bookkeeping

Built for 1099 workers, not corporate enterprises.

Categories that matter:

  • Materials & Supplies
  • Tools & Equipment
  • Fuel & Mileage
  • Subcontractors
  • Insurance
  • Permits & Licenses
  • Business Use of Home
  • Professional Services (CPA, lawyer)

Workflows optimized for:

  • Multiple job tracking
  • Per-project expense allocation
  • Client invoice management
  • Quarterly tax estimates
  • Schedule C report generation

🎮 Gamification System

Problem: Bookkeeping is boring. Receipts pile up until tax panic.

Solution: XP, levels, achievements, and quests make it less painful.

  • Earn XP for scanning receipts, linking documents, categorizing expenses
  • Level up from "Rookie Bookkeeper" to "Master Accountant"
  • Unlock achievements ("Receipt Hoarder", "Tax Prepared", "Audit-Ready")
  • Complete quests for guided workflows (e.g., "Prepare Q1 Tax Estimate")

Psychology: Small dopamine hits = consistent bookkeeping habits.


🔒 Privacy & Security

Your data stays YOUR data.

  • Local-first architecture - All data stored in browser localStorage
  • No cloud uploads - Receipt images stay on your device
  • Optional Supabase backup - Encrypted cloud sync (coming soon)
  • Check redaction - Automatic masking of routing/account numbers
  • No tracking - No analytics, no ads, no data selling
  • Open source - Audit the code yourself

Data export: JSON, CSV, QuickBooks IIF, Schedule C CSV. Your data is never held hostage.


🧾 Intelligent Document Management

Beyond simple receipt scanning:

  • Manifest detection - Links itemized receipts to payment receipts
  • Supporting documents - Attach contracts, invoices, warranties
  • Check image handling - Secure storage with auto-redaction
  • Duplicate detection - Prevents double-counting income
  • Document linking - Multiple docs per transaction
  • OCR verification - Manual review workflow for AI suggestions

📈 Tax-Ready Reports

Schedule C compliant from day one.

  • IRS-ready categorization - Maps to Schedule C line items
  • Quarterly estimates - Calculate 1099 tax obligations
  • Year-over-year trends - Track business growth
  • QuickBooks export - Seamless CPA handoff
  • Mileage tracking - IRS standard rate calculations
  • Income verification - Invoice vs deposit reconciliation

🚀 Performance & Reliability

  • Offline-first - Works without internet (except AI scanning)
  • Fast - No server round-trips, instant UI updates
  • Desktop app - Electron wrapper for native experience
  • Auto-save - localStorage persistence
  • Export backups - Regular JSON exports recommended

📸 Screenshots

Dashboard

Dashboard Overview XP progress, financial metrics, tax deadline reminders, and quick actions

AI Receipt Scanning

Receipt Scanning Drag & drop receipts, AI auto-categorization, manual review workflow

Expense Tracking

Expense Ledger Filter by category, date range, job, or vendor. Export to CSV or QuickBooks

Gamification

Achievements Level up, earn badges, complete quests. Make bookkeeping less boring

Tax Reports

Schedule C Report IRS-ready categorization mapped to Schedule C line items

Note: Screenshots coming soon! App is functional, documentation in progress.


💾 Download

Desktop App (Recommended)

Windows: Download BooksmasterSetup.exe (99MB)

Mac/Linux: Coming soon (or run from source)

Web App

Live Demo: booksmaster.netlify.app

Web version works in any modern browser. Desktop app recommended for better performance.


🔧 How It Works

1. Scan Receipts

  • Drag & drop images or use your phone camera
  • AI extracts vendor, amount, date, payment method
  • Review and approve suggestions

2. Categorize Expenses

  • AI suggests categories based on vendor patterns
  • Manual override available
  • System learns from your corrections

3. Track Income

  • Create invoices for clients
  • Mark as paid to add to income ledger
  • Link deposit receipts for verification

4. Generate Reports

  • Schedule C tax report (IRS format)
  • Quarterly tax estimates
  • Profit & loss statements
  • Export to QuickBooks for CPA

5. Stay Organized

  • Attach supporting documents to transactions
  • Track expenses per job/project
  • Monitor mileage with IRS rates
  • Set tax deadline reminders

🏗️ Architecture

Tech Stack

Frontend:

  • Framework: Next.js 14 (App Router, React 18)
  • Language: TypeScript (strict mode)
  • Styling: TailwindCSS 3 + CSS Variables
  • State: Zustand with localStorage persistence
  • UI Components: Custom components + Lucide React icons
  • Desktop: Electron (Windows installer)

AI & OCR:

  • AI Receipt Scanning: Google Gemini Vision API (user-provided key)
  • Image Segmentation: Meta SAM (Segment Anything Model)
  • Fallback OCR: Tesseract.js (client-side)

Integrations:

  • Bank Sync: Plaid API (optional, user-provided credentials)
  • Cloud Backup: Supabase (planned, optional)
  • Error Monitoring: Sentry (planned)

Storage:

  • Primary: Browser localStorage (IndexedDB for large files)
  • Backup: Manual JSON export
  • Cloud: Optional Supabase sync (coming soon)

Deployment:

  • Web: Netlify (static export)
  • Desktop: Electron Builder (Windows .exe)

System Architecture

┌─────────────────────────────────────────────────────────┐
│                     User Interface                       │
│              (Next.js 14 + TailwindCSS)                 │
└─────────────────┬───────────────────────────────────────┘
                  │
┌─────────────────┴───────────────────────────────────────┐
│                  State Management                        │
│                (Zustand + localStorage)                  │
└─────────────────┬───────────────────────────────────────┘
                  │
        ┌─────────┼─────────┐
        │         │         │
┌───────▼───┐ ┌──▼──────┐ ┌▼──────────┐
│  Receipt  │ │Expense  │ │  Reports  │
│  Scanner  │ │Tracker  │ │ Generator │
└───────┬───┘ └──┬──────┘ └┬──────────┘
        │        │         │
┌───────▼────────▼─────────▼─────────┐
│        AI Processing Layer          │
│ - Gemini Vision (receipt scanning)  │
│ - SAM (image segmentation)          │
│ - Pattern learning (categorization) │
└───────┬─────────────────────────────┘
        │
┌───────▼─────────────────────────────┐
│      Local Storage Layer            │
│ - localStorage (receipts, txns)     │
│ - IndexedDB (images, large files)   │
│ - Manual JSON export (backup)       │
└─────────────────────────────────────┘

Data Flow:

  1. User uploads receipt image
  2. Gemini Vision API extracts metadata (vendor, amount, date)
  3. AI categorization suggests expense type
  4. User reviews and approves (or corrects)
  5. Transaction saved to localStorage
  6. Learning engine updates patterns for future scans

Privacy Model:

  • All data stays in browser (local-first)
  • API calls only for AI scanning (user's Gemini key)
  • Optional cloud backup (user controls encryption keys)
  • No telemetry or analytics without explicit consent

🚀 Getting Started (Developers)

Prerequisites

Installation

  1. Clone the repository:

    git clone https://github.com/AIalchemistART/booksmaster.git
    cd booksmaster
  2. Install dependencies:

    npm install
  3. Set up environment variables:

    cp .env.example .env.local
  4. Add your API keys to .env.local:

    # Required for AI receipt scanning
    NEXT_PUBLIC_GEMINI_API_KEY=your_gemini_api_key_here
    
    # Optional: Bank sync (Plaid sandbox)
    PLAID_CLIENT_ID=your_plaid_client_id
    PLAID_SECRET=your_plaid_sandbox_secret
    PLAID_ENV=sandbox
  5. Run the development server:

    npm run dev
  6. Open in browser:


Building for Production

Web App (Static Export):

npm run build

Output: out/ directory

Desktop App (Electron):

npm run electron:build

Output: dist/Booksmaster Setup 0.3.0.exe (Windows)

Deploy to Netlify:

npx netlify-cli deploy --prod --dir=out --no-build

Development Scripts

npm run dev              # Next.js dev server (port 3000)
npm run build            # Build static site
npm run start            # Start production server
npm run lint             # ESLint
npm run lint:fix         # Auto-fix linting issues
npm run test             # Run Jest tests
npm run test:watch       # Watch mode for tests
npm run test:coverage    # Generate coverage report
npm run electron:dev     # Run Electron in dev mode
npm run electron:build   # Build Windows installer

Project Structure

booksmaster/
├── src/
│   ├── app/                  # Next.js App Router pages
│   │   ├── page.tsx          # Dashboard
│   │   ├── receipts/         # Receipt scanner
│   │   ├── transactions/     # Expense ledger
│   │   ├── invoices/         # Client invoices
│   │   └── reports/          # Tax reports
│   ├── components/           # React components
│   │   ├── dashboard/        # Dashboard widgets
│   │   ├── gamification/     # XP, achievements
│   │   ├── modals/           # Dialogs
│   │   ├── ocr/              # Receipt scanning
│   │   └── settings/         # Settings panels
│   ├── lib/                  # Business logic
│   │   ├── gemini-categorization.ts   # AI categorization
│   │   ├── receipt-processor.ts       # Receipt handling
│   │   ├── tax/                       # Tax calculations
│   │   └── gamification/              # XP/leveling
│   ├── store/                # Zustand state
│   │   ├── index.ts          # Main store
│   │   └── gamification-slice.ts      # Gamification state
│   └── types/                # TypeScript types
├── public/                   # Static assets
├── electron/                 # Electron main process
├── docs/                     # Documentation
├── .github/                  # GitHub config (FUNDING.yml)
└── README.md                 # This file

🆚 Comparison

Booksmaster vs Competitors

Feature Booksmaster QuickBooks Self-Employed FreshBooks Wave
Price FREE (MIT) $20/mo ($240/yr) $17/mo ($204/yr) Free*
AI Receipt Scanning ✅ Gemini Vision ❌ Traditional OCR ❌ Traditional OCR ❌ Basic OCR
Accuracy 94% ~67% ~70% ~65%
Open Source ✅ MIT License ❌ Proprietary ❌ Proprietary ❌ Proprietary
Privacy ✅ Local-first ❌ Cloud-only ❌ Cloud-only ❌ Cloud + ads
Offline Mode ✅ Full features ❌ Cloud required ❌ Cloud required ❌ Cloud required
Gamification ✅ XP/Levels/Quests
Data Export ✅ JSON/CSV/IIF Limited Limited Limited
Vendor Lock-in ❌ None ⚠️ High ⚠️ High ⚠️ Medium
Schedule C Reports ✅ IRS-ready ⚠️ Basic
Multi-user Coming soon
Mobile App Planned
Best For Contractors, DIY Small businesses Service businesses Very small biz

Wave's catch: Free tier shows ads and tries to upsell paid features (payments, payroll).


❓ FAQ

General

Q: Is Booksmaster really free?
A: Yes! MIT licensed. No subscriptions, no paywalls, no hidden costs. Download, use, modify, and share freely. If it helps you, consider donating.

Q: How do you make money?
A: Donations (GitHub Sponsors, Ko-fi, PayPal), consultation services ($100-200/hour), and custom development ($2k-10k projects). The core app will always be free.

Q: Will there be paid features?
A: Possible future optional paid add-ons (cloud sync, mobile apps). Desktop app remains free forever.


Technical

Q: Where is my data stored?
A: Locally in your browser's localStorage. Receipt images in IndexedDB. No cloud uploads unless you explicitly enable optional sync (coming soon).

Q: Can I run this without internet?
A: Yes! Offline-first architecture. Only AI receipt scanning requires internet (calls Google Gemini API). Everything else works offline.

Q: What about bank sync?
A: Optional Plaid integration. You provide your own Plaid credentials. Bank data synced directly to your device (not our servers).

Q: Is my data safe?
A: Yes. Local-first = no server breaches. Check redaction = no exposed bank info. Open source = auditable code. Regular JSON exports recommended for backups.

Q: Can I import from QuickBooks/FreshBooks?
A: Not yet. Manual CSV import coming soon. For now, start fresh or enter manually.


Tax & Legal

Q: Will this protect me in an IRS audit?
A: Booksmaster is a bookkeeping tool, NOT tax preparation software. We provide no guarantees of IRS compliance. Always consult a licensed CPA before filing taxes. See DISCLAIMER.md.

Q: Can I use this for my business taxes?
A: Yes, but you're responsible for accuracy. AI categorization may contain errors. Review all transactions before filing. We recommend CPA review.

Q: Does this file my taxes for me?
A: No. Booksmaster generates reports (Schedule C, quarterly estimates) but does NOT file taxes. Use TurboTax, H&R Block, or a CPA for filing.


Support & Community

Q: How do I report bugs?
A: Open a GitHub issue. For security vulnerabilities, email manny@aialchemist.net privately.

Q: Can I contribute code?
A: Yes! See CONTRIBUTING.md. We welcome bug fixes, features, and documentation improvements.

Q: Do you offer paid support?
A: Yes. Email manny@aialchemist.net for consultation services ($100-200/hour) or custom development ($2k-10k projects).


🛣️ Roadmap

Current Version (v0.3.0)

  • ✅ AI receipt scanning (Gemini Vision)
  • ✅ Gamification (XP, levels, achievements)
  • ✅ Schedule C tax reports
  • ✅ QuickBooks export
  • ✅ Electron desktop app (Windows)
  • ✅ MIT License open source

Coming Soon (v0.4.0)

  • Cloud backup (Supabase, encrypted, optional)
  • Mobile app (React Native, optional paid)
  • Multi-user support (accountant/co-parent access)
  • CSV import (migrate from other software)
  • Google Drive integration (receipt photo management)

Future (v1.0+)

  • Invoice PDF generation with branding
  • Payroll tracking (for contractors with employees)
  • Multi-currency support
  • Dark mode
  • Desktop app (Mac, Linux)

Vote on features: GitHub Discussions



📖 Documentation


📜 License

MIT License - Free to use, modify, and distribute.

Copyright (c) 2026 Manny (AIalchemistART)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

⚠️ Tax Software Disclaimer

Booksmaster is a bookkeeping tool, not professional tax advice. While we strive for accuracy:

  • ✅ AI categorization may contain errors - always review before tax filing
  • ✅ Consult a licensed CPA or tax professional for tax compliance
  • ✅ We provide no guarantees regarding IRS compliance
  • ✅ You are responsible for the accuracy of your tax filings

See DISCLAIMER.md for complete legal disclaimers.


🤝 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

Quick Start:

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

Security: Found a vulnerability? Report privately to manny@aialchemist.net (see SECURITY.md)


👥 Community


🙏 Acknowledgments

  • Google Gemini - AI-powered receipt scanning
  • Meta SAM - Intelligent receipt segmentation
  • Plaid - Secure bank connections
  • All contributors - Community support and feedback

Built with ❤️ by contractors, for contractors.

About

Bookkeeping Web Application for Receipt Data Parsing, Categorization and Management

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •