Skip to content
Masab Qurban — home
Sun Quest Solar

SunQuestSolar

ClientSun Quest Solar
RoleSolo Full Stack Developer
IndustryRenewable Energy
Year2026
Stack
Next.jsReactTailwind CSSPrismaPostgreSQLSupabaseVercel

Sun Quest Solar designs and installs solar systems for homes, businesses and industrial sites across Lahore. Before this project, their quotations, invoices, accounts and staff records lived in Excel sheets that someone had to update by hand every day.

I built the whole system on my own, from the database design to the last screen. It has two parts. The public website presents their services, a four-step process from first call to grid connection, featured installations and an FAQ. Its centrepiece is a multi-step quote form that asks about roof space, budget in PKR and roof structure, so the team receives a usable enquiry instead of a vague message.

Behind it sits the admin panel. Quotations move from request to estimation to confirmed and paid, and both quotations and invoices can be generated as PDF or Excel files in a few clicks. Underneath is a proper accounting system: every invoice and payment posts to a general ledger, and the system produces a trial balance on demand. An HR module covers employees, attendance, payroll and salary advances, the dashboard shows six months of revenue and the health of the pipeline, and any module can be exported as a CSV backup.

The Challenge

The team was spending four to five hours a day keeping spreadsheets in sync. A quotation took a long time to prepare by hand, and the same figures had to be copied between quotation, invoice, payment and account sheets, so totals drifted and nobody had a reliable view of revenue or what was owed.

The Solution

One system where every number is entered once. A quote request becomes a quotation, the quotation becomes an invoice, and payments against it are recorded automatically in a double-entry general ledger. Because every transaction goes through the ledger, the trial balance always balances and the dashboard figures come straight from the books rather than from a separate sheet. Payroll and advances post to the same accounts.

The Tech Stack

Next.js serves the public pages and the admin panel from one codebase, with server rendering so the marketing pages are fast and indexable. The data lives in PostgreSQL on Supabase, and I modelled it with Prisma, which kept the relations between quotations, invoices, ledger entries and staff type-safe end to end. Tailwind CSS keeps the marketing site and the dashboard on one design language. It is deployed on Vercel.

The Impact

The team no longer spends four to five hours a day on Excel and spreadsheets. A quotation that used to take a long time to put together by hand is now generated from the system, as a PDF or Excel file, within minutes, and the books, payroll and pipeline are all visible from one dashboard.

01 / Typography

Geometric Sans

Heavy, rounded display headings for a confident marketing voice, with a clean sans-serif for forms, tables and dashboard figures.

Aa

02 / Palette

Solar Blue

#0E52A4

Sun Amber

#F4B223

Night

#020617

Panel

#F8FAFC

Tool Matrix
Previous

Tool Matrix

Tool Matrix
Next

Tool Matrix