How azaank-dev/solar-installation-os-erp works
Solar OS is a small solar-installation operations application exposed through Next.js API routes. Its apparent workflow is customer and lead intake, site surveys, equipment-backed quotation creation, then installation-job scheduling. The sampled routes show direct Prisma access and quotation calculations; the tree also documents item and status endpoints, but their implementation and connections were not sampled. The README is the unmodified Next.js starter README, so it documents no additional product capabilities or frontend workflow.
Main entry points: prisma.ts Prisma client · quotations/route.ts Quotations API · customers/route.ts Customers API · [id]/route.ts Customer record API
Components 19
Customer Intake
- Customers API
src/app/api/customers/route.ts - Customer record API
src/app/api/customers/[id]/route.ts - Leads API
src/app/api/leads/route.ts - Lead record API
src/app/api/leads/[id]/route.ts
Survey And Quoting
- Site surveys API
src/app/api/site-surveys/route.ts - Survey record API
src/app/api/site-surveys/[id]/route.ts - Quotations API
src/app/api/quotations/route.ts - Quotation record API
src/app/api/quotations/[id]/route.ts - Quotation items API
src/app/api/quotations/[id]/items/route.ts - Quotation item API
src/app/api/quotations/[id]/items/[itemId]/route.ts - Quotation status API
src/app/api/quotations/[id]/status/route.ts - Equipment API
src/app/api/equipment/route.ts - Equipment record API
src/app/api/equipment/[id]/route.ts
Installation Delivery
- Installation jobs API
src/app/api/jobs/route.ts - Job record API
src/app/api/jobs/[id]/route.ts - Job status API
src/app/api/jobs/[id]/status/route.ts
Persistence
- Prisma client
src/lib/prisma.ts - PostgreSQL database
prisma/schema.prisma
Other components
- API caller
Connections 29
- API caller → Customers API: requests
- API caller → Customer record API: requests
- API caller → Leads API: requests
- API caller → Lead record API: requests
- API caller → Site surveys API: requests
- API caller → Survey record API: requests
- API caller → Quotations API: requests
- API caller → Quotation record API: requests
- API caller → Quotation items API: requests
- API caller → Quotation item API: requests
- API caller → Quotation status API: requests
- API caller → Equipment API: requests
- API caller → Equipment record API: requests
- API caller → Installation jobs API: requests
- API caller → Job record API: requests
- API caller → Job status API: requests
- Customers API → Prisma client: queries
- Customer record API → Prisma client: queries
- Leads API → Prisma client: queries
- Lead record API → Prisma client: queries
- Site surveys API → Prisma client: queries
- Survey record API → Prisma client: queries
- Quotations API → Prisma client: queries
- Quotation record API → Prisma client: queries
- Equipment API → Prisma client: queries
- Equipment record API → Prisma client: queries
- Installation jobs API → Prisma client: queries
- Prisma client → PostgreSQL database: reads/writes
- Quotations API → Prisma client: lead/equipment lookup