# kavyysachaniya/priinteve-admin-panel architecture

> Architecture diagram of the GitHub repository kavyysachaniya/priinteve-admin-panel, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/kavyysachaniya/priinteve-admin-panel
- Repository: https://github.com/kavyysachaniya/priinteve-admin-panel

## Overview

Priinteve Business OS is an internal operations and accounting panel for a print, design, and digital-services business. Staff sign in, manage a customer sale from quotation through order or invoice and payment, then track fulfillment and accounting. The graph combines that documented workflow with the README’s major planning, finance, and administration capabilities. The README describes the page/action/service layering; sampled code confirms project API delegation and task service persistence. Most individual modules were not sampled, so their detailed call wiring is not inferred.

Main entry points: [`app/(app)/layout.tsx`](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/app/(app)/layout.tsx) (Signed-in pages), [`lib/actions/utils.ts`](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/actions/utils.ts) (Server Actions), [`lib/prisma.ts`](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/prisma.ts) (Prisma data access), [`lib/services/quotations.ts`](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/quotations.ts) (Quotations)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_sales["Sales"]
  node_customers["Customer records<br/>[customers.ts]"]
  node_quotations["Quotations<br/>[quotations.ts]"]
  node_orders["Orders<br/>[orders.ts]"]
  node_invoices["Invoices<br/>[invoices.ts]"]
  node_payments["Payments<br/>[payments.ts]"]
  node_products["Products and services<br/>[products.ts]"]
end

subgraph group_operations["Operations"]
  node_production["Production<br/>[production.ts]"]
  node_deliveries["Deliveries<br/>[deliveries.ts]"]
end

subgraph group_planning["Planning"]
  node_projects["Projects and timers<br/>[projects.ts]"]
  node_planner["Planner and calendar<br/>[calendar.ts]"]
  node_tasks_notes["Tasks and notes<br/>[tasks.ts]"]
end

subgraph group_finance["Finance"]
  node_finance["Finance overview<br/>[finance.ts]"]
  node_expenses_vendors["Expenses and vendors<br/>[expenses.ts]"]
  node_accounting["Accounts and journals<br/>[accounts.ts]"]
  node_reports["Statements and reports<br/>[reports.ts]"]
end

subgraph group_platform["Platform"]
  node_login["Sign in<br/>[page.tsx]"]
  node_auth["Authentication<br/>[auth.ts]"]
  node_app_pages["Signed-in pages<br/>[layout.tsx]"]
  node_actions["Server Actions<br/>[utils.ts]"]
  node_prisma[("Prisma data access<br/>[prisma.ts]")]
  node_admin["Users and settings<br/>[settings.ts]"]
end

node_staff(("Staff"))

node_staff -->|"signs in"| node_login
node_login -->|"authenticates"| node_auth
node_staff -->|"uses"| node_app_pages
node_app_pages -->|"checks session"| node_auth
node_app_pages -->|"reads data"| node_customers
node_app_pages -->|"reads data"| node_quotations
node_app_pages -->|"reads data"| node_orders
node_app_pages -->|"reads data"| node_invoices
node_app_pages -->|"reads data"| node_payments
node_app_pages -->|"reads data"| node_production
node_app_pages -->|"reads data"| node_deliveries
node_app_pages -->|"reads data"| node_projects
node_app_pages -->|"reads data"| node_planner
node_app_pages -->|"reads data"| node_tasks_notes
node_app_pages -->|"reads data"| node_finance
node_app_pages -->|"reads data"| node_expenses_vendors
node_app_pages -->|"reads data"| node_accounting
node_app_pages -->|"reads data"| node_reports
node_app_pages -->|"reads data"| node_admin
node_app_pages -->|"reads data"| node_products
node_app_pages -->|"submits changes"| node_actions
node_actions -->|"checks permission"| node_auth
node_actions -->|"calls service"| node_customers
node_actions -->|"calls service"| node_quotations
node_actions -->|"calls service"| node_orders
node_actions -->|"calls service"| node_invoices
node_actions -->|"calls service"| node_payments
node_actions -->|"calls service"| node_production
node_actions -->|"calls service"| node_deliveries
node_actions -->|"calls service"| node_projects
node_actions -->|"calls service"| node_planner
node_actions -->|"calls service"| node_tasks_notes
node_actions -->|"calls service"| node_expenses_vendors
node_actions -->|"calls service"| node_accounting
node_actions -->|"calls service"| node_admin
node_quotations -->|"accepted sale"| node_invoices
node_quotations -->|"accepted sale"| node_orders
node_invoices -->|"records payment"| node_payments
node_payments -->|"updates accounts"| node_accounting
node_customers -->|"customer context"| node_quotations
node_accounting -->|"supplies balances"| node_reports
node_customers -->|"reads and writes"| node_prisma
node_quotations -->|"reads and writes"| node_prisma
node_orders -->|"reads and writes"| node_prisma
node_invoices -->|"reads and writes"| node_prisma
node_payments -->|"reads and writes"| node_prisma
node_products -->|"reads and writes"| node_prisma
node_production -->|"reads and writes"| node_prisma

click node_login "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/app/(auth)/login/page.tsx"
click node_auth "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/auth.ts"
click node_app_pages "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/app/(app)/layout.tsx"
click node_actions "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/actions/utils.ts"
click node_prisma "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/prisma.ts"
click node_customers "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/customers.ts"
click node_quotations "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/quotations.ts"
click node_orders "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/orders.ts"
click node_invoices "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/invoices.ts"
click node_payments "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/payments.ts"
click node_products "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/products.ts"
click node_production "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/production.ts"
click node_deliveries "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/deliveries.ts"
click node_projects "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/projects.ts"
click node_planner "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/calendar.ts"
click node_tasks_notes "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/tasks.ts"
click node_finance "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/finance.ts"
click node_expenses_vendors "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/expenses.ts"
click node_accounting "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/accounting/accounts.ts"
click node_reports "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/accounting/reports.ts"
click node_admin "https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/settings.ts"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_customers,node_quotations,node_orders,node_invoices,node_payments,node_products toneBlue
class node_production,node_deliveries toneAmber
class node_projects,node_planner,node_tasks_notes toneMint
class node_finance,node_expenses_vendors,node_accounting,node_reports toneRose
class node_login,node_auth,node_app_pages,node_actions,node_prisma,node_admin,node_staff toneIndigo
```

## Components

### Sales

- [Customer records](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/customers.ts): `lib/services/customers.ts`
- [Quotations](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/quotations.ts): `lib/services/quotations.ts`
- [Orders](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/orders.ts): `lib/services/orders.ts`
- [Invoices](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/invoices.ts): `lib/services/invoices.ts`
- [Payments](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/payments.ts): `lib/services/payments.ts`
- [Products and services](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/products.ts): `lib/services/products.ts`

### Operations

- [Production](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/production.ts): `lib/services/production.ts`
- [Deliveries](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/deliveries.ts): `lib/services/deliveries.ts`

### Planning

- [Projects and timers](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/projects.ts): `lib/services/projects.ts`
- [Planner and calendar](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/calendar.ts): `lib/services/calendar.ts`
- [Tasks and notes](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/tasks.ts): `lib/services/tasks.ts`

### Finance

- [Finance overview](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/finance.ts): `lib/services/finance.ts`
- [Expenses and vendors](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/expenses.ts): `lib/services/expenses.ts`
- [Accounts and journals](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/accounting/accounts.ts): `lib/services/accounting/accounts.ts`
- [Statements and reports](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/accounting/reports.ts): `lib/services/accounting/reports.ts`

### Platform

- [Sign in](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/app/(auth)/login/page.tsx): `app/(auth)/login/page.tsx`
- [Authentication](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/auth.ts): `auth.ts`
- [Signed-in pages](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/app/(app)/layout.tsx): `app/(app)/layout.tsx`
- [Server Actions](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/actions/utils.ts): `lib/actions/utils.ts`
- [Prisma data access](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/prisma.ts): `lib/prisma.ts`
- [Users and settings](https://github.com/kavyysachaniya/priinteve-admin-panel/blob/main/lib/services/settings.ts): `lib/services/settings.ts`

### Other components

- **Staff**

## Connections

- Staff → Sign in: signs in
- Sign in → Authentication: authenticates
- Staff → Signed-in pages: uses
- Signed-in pages → Authentication: checks session
- Signed-in pages → Customer records: reads data
- Signed-in pages → Quotations: reads data
- Signed-in pages → Orders: reads data
- Signed-in pages → Invoices: reads data
- Signed-in pages → Payments: reads data
- Signed-in pages → Production: reads data
- Signed-in pages → Deliveries: reads data
- Signed-in pages → Projects and timers: reads data
- Signed-in pages → Planner and calendar: reads data
- Signed-in pages → Tasks and notes: reads data
- Signed-in pages → Finance overview: reads data
- Signed-in pages → Expenses and vendors: reads data
- Signed-in pages → Accounts and journals: reads data
- Signed-in pages → Statements and reports: reads data
- Signed-in pages → Users and settings: reads data
- Signed-in pages → Products and services: reads data
- Signed-in pages → Server Actions: submits changes
- Server Actions → Authentication: checks permission
- Server Actions → Customer records: calls service
- Server Actions → Quotations: calls service
- Server Actions → Orders: calls service
- Server Actions → Invoices: calls service
- Server Actions → Payments: calls service
- Server Actions → Production: calls service
- Server Actions → Deliveries: calls service
- Server Actions → Projects and timers: calls service
- Server Actions → Planner and calendar: calls service
- Server Actions → Tasks and notes: calls service
- Server Actions → Expenses and vendors: calls service
- Server Actions → Accounts and journals: calls service
- Server Actions → Users and settings: calls service
- Quotations → Invoices: accepted sale
- Quotations → Orders: accepted sale
- Invoices → Payments: records payment
- Payments → Accounts and journals: updates accounts
- Customer records → Quotations: customer context
- Accounts and journals → Statements and reports: supplies balances
- Customer records → Prisma data access: reads and writes
- Quotations → Prisma data access: reads and writes
- Orders → Prisma data access: reads and writes
- Invoices → Prisma data access: reads and writes
- Payments → Prisma data access: reads and writes
- Products and services → Prisma data access: reads and writes
- Production → Prisma data access: reads and writes
