Placeholder case study: edit it in content.js
Hisaab: invoicing and inventory SaaS
A subscription SaaS that gives small businesses tax-ready invoices, stock tracking and clear daily reports, in Urdu or English.
- Django
- PostgreSQL
- Svelte
- Tailwind CSS
- Client
- Software startup (sample)
- My role
- Full-stack developer and product partner
- Timeline
- 6 months, then ongoing
600+ businesses
On paid monthly plans
99.9% uptime
Over the first year
3 min
To issue a first invoice
The problem
Shopkeepers and small distributors kept accounts in notebooks and spreadsheets. Mistakes crept in, stock ran out unnoticed, and tax-compliant invoices were a chore. The product also had to serve many separate businesses safely from one system.
My approach
I designed a multi-tenant architecture where every record belongs to a business and every query is scoped to it automatically. Subscription plans, usage limits and invoice numbering are handled in Django, and a focused Svelte interface keeps the everyday flow to a few taps.
The hardest part
Strict data isolation between customers
A leak between tenants would end the product. Tenant scoping lives in one base manager and one middleware, so no view can forget it, and automated tests try to read across tenants on every endpoint. Invoice numbers are generated per business inside a transaction, so they stay gapless and unique.
How the technology solved it
Django
Multi-tenant models, plan limits, invoice engine, scheduled report emails and an admin console for support.
PostgreSQL
Per-tenant indexes, transactional invoice numbering and fast aggregate queries for reports.
Svelte
A quick point-of-sale style interface with keyboard shortcuts and instant totals.
Tailwind CSS
A clean, accessible design system shared across the app and marketing pages.
What I built
- Tax-ready invoices and credit notes with PDF export
- Live stock levels with low-stock alerts
- Daily, weekly and monthly sales and profit reports
- Subscription plans with trial, upgrade and billing history
The result
The product reached paying customers within months and has grown steadily on its monthly plans. Support requests dropped because the main flows are simple and the data is consistent.