DEV Community

Atul Srivastava
Atul Srivastava

Posted on

How I Built a Full-Scale ERP System as a Solo Developer

Most developers avoid ERP. It's complex, boring, and usually built by teams of 20+. I built one alone.

Why?

Indian small businesses run on disconnected spreadsheets, Tally, and WhatsApp. I wanted to build one clean desktop app that handles everything — finance, inventory, sales, purchase, GST, manufacturing, HRM, and reporting.

The Stack

  • Electron — Desktop delivery (Windows)
  • React + TypeScript — UI layer
  • SQLite — Local-first data storage
  • Node.js — IPC handlers and service layer

Why desktop + SQLite instead of a web app? Indian SMEs often have unreliable internet. A local-first app that just works, every time, was the right call.

What's Inside — 8 Modules

Finance: Chart of accounts, journal entries, general ledger, trial balance, P&L, balance sheet. Double-entry accounting built from scratch.

Inventory: Item master, warehouse structure, stock movement, valuations, low-stock alerts.

Sales: Customer management, sales orders, GST-compliant invoicing, receipt tracking, aging analysis.

Purchase: Vendor management, purchase orders, goods receipt, purchase invoicing, payment tracking.

Manufacturing: Bill of materials, work centers, production orders, MRP planning, job work, quality control.

HRM: Employee records, attendance, leave management, payroll, tax declarations.

GST & Compliance: E-invoice, e-way bill, GSTR reports, ITC reconciliation, HSN summaries. Built for Indian tax workflows.

Reports: Financial, sales, purchase, inventory, and GST reports with export options.

The Hard Parts

1. Domain modeling

ERP isn't one problem, it's 15 interconnected problems. A stock movement affects inventory valuations, which affects financial reports, which affects GST filings.

2. Double-entry accounting

Getting the chart of accounts, journal entries, and ledger posting right took longer than any UI work.

3. GST compliance

Indian GST rules change constantly. Building a flexible structure that handles e-invoicing, reverse charges, and ITC was the most research-heavy part.

4. Keeping it simple

The biggest temptation in ERP is feature creep. I forced myself to keep the UI clean: clear navigation, card-based actions, search-first header.

What I Learned

  • Build the data model first. If your chart of accounts is wrong, everything downstream breaks.
  • SQLite is underrated. For local-first business software, it's fast, reliable, and zero-config.
  • ERP is a product exercise, not just a coding exercise. You need to understand business operations, not just API design.
  • Ship module by module. I built Finance first, then Inventory, then Sales — each one tested before moving on.

Try It

If you're thinking about building business software as a solo developer — do it. The domain complexity is what makes it valuable, both as a product and on your portfolio.


I'm Atul Srivastava, a full-stack developer building ERP systems, SaaS platforms, and Chrome extensions. Open to freelance and remote work. Reach me at imatulsrivas@gmail.com.

Top comments (0)