# sidhuprakash-creater/meil-project architecture

> Architecture diagram of the GitHub repository sidhuprakash-creater/meil-project, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-12). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/sidhuprakash-creater/meil-project
- Repository: https://github.com/sidhuprakash-creater/meil-project

## Overview

MEIL ESG & BRSR is a multi-role enterprise portal for collecting unit-level ESG disclosures, reviewing and approving submissions across an organizational hierarchy, and producing consolidated BRSR reporting and analytics. The principal flow is contributor data entry and evidence capture, followed by staged review and sign-off, then group-level consolidation and dashboards. Separate workspaces support group, subsidiary, business-unit, project-admin, and site-operations roles; the product also includes BRSR guidance and an AI copilot. Edges reflect README-described capabilities and shown source calls; many unsampled routes prevent tracing the full request wiring.

Main entry points: [`src/app/api/pu/data-entry/route.ts`](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/pu/data-entry/route.ts) (ESG data entry), [`src/lib/db.ts`](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/db.ts) (Unified database), [`src/app/api/project-admin/collection-status/route.ts`](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/project-admin/collection-status/route.ts) (Submission review), [`src/components/pu/pu-app.tsx`](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/pu/pu-app.tsx) (Unit workspaces)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_workspaces["Role Workspaces"]
  node_app["Portal entry<br/>[page.tsx]"]
  node_unit["Unit workspaces<br/>[pu-app.tsx]"]
  node_siteops["Site operations<br/>[module-router.tsx]"]
  node_groupadmin["Group workspace<br/>[view-registry.tsx]"]
  node_subadmin["Subsidiary workspace<br/>[view-registry.tsx]"]
  node_projectadmin["Project admin<br/>[view-registry.tsx]"]
end

subgraph group_disclosure["Disclosure &amp; Review"]
  node_dataentry["ESG data entry<br/>[route.ts]"]
  node_evidence["Evidence handling"]
  node_review["Submission review<br/>[route.ts]"]
  node_workflow["Submission workflow<br/>[workflow.ts]"]
end

subgraph group_reporting["BRSR &amp; Insights"]
  node_brsr["BRSR reporting<br/>[route.ts]"]
  node_consolidation["ESG consolidation<br/>[route.ts]"]
  node_analytics["Dashboards &amp; analytics<br/>[route.ts]"]
  node_copilot["AI copilot<br/>[route.ts]"]
end

subgraph group_platform["Platform Services"]
  node_auth["Session &amp; access<br/>[session.ts]"]
  node_esgservice["ESG API services<br/>[server.ts]"]
  node_pauth["Project-admin access<br/>[server.ts]"]
  node_saauth["Subsidiary access<br/>[server.ts]"]
  node_unitdb["Unit data access<br/>[db.ts]"]
  node_records["Level records<br/>[level-records.ts]"]
  node_engines["ESG calculation engines<br/>[engines.ts]"]
  node_cache["Portal cache<br/>[portal-cache.ts]"]
  node_database[("Unified database<br/>[db.ts]")]
end

node_users(("Portal users"))

node_users -->|"enter portal"| node_app
node_users -->|"contribute disclosures"| node_unit
node_unit -->|"submit data"| node_dataentry
node_dataentry -->|"save records"| node_records
node_dataentry -->|"append history"| node_workflow
node_dataentry -->|"sync records"| node_unitdb
node_users -->|"attach evidence"| node_evidence
node_users -->|"review submissions"| node_review
node_review -->|"load records"| node_records
node_review -->|"resolve context"| node_pauth
node_users -->|"manage subsidiary"| node_subadmin
node_subadmin -->|"authorize scope"| node_saauth
node_users -->|"manage group"| node_groupadmin
node_users -->|"manage site data"| node_siteops
node_users -->|"review project data"| node_projectadmin
node_users -->|"prepare BRSR filing"| node_brsr
node_users -->|"consolidate ESG"| node_consolidation
node_users -->|"view KPI dashboards"| node_analytics
node_users -.->|"use AI copilot"| node_copilot
node_esgservice -->|"write audit data"| node_database
node_unitdb -->|"shares client"| node_database
node_engines -->|"query factors"| node_database
node_auth -->|"read sessions"| node_database

click node_app "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/page.tsx"
click node_unit "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/pu/pu-app.tsx"
click node_siteops "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/site-ops/modules/module-router.tsx"
click node_groupadmin "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/workspace/view-registry.tsx"
click node_subadmin "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/subsidiary/view-registry.tsx"
click node_projectadmin "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/project-admin/view-registry.tsx"
click node_dataentry "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/pu/data-entry/route.ts"
click node_evidence "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/shared/data-entry/engine-evidence-panel.tsx"
click node_review "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/project-admin/collection-status/route.ts"
click node_workflow "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/workflow.ts"
click node_brsr "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/brsr/route.ts"
click node_consolidation "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/hierarchy/route.ts"
click node_analytics "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/analytics/route.ts"
click node_copilot "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/copilot/chat/route.ts"
click node_auth "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/session.ts"
click node_esgservice "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/esg/server.ts"
click node_pauth "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/project-admin/server.ts"
click node_saauth "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/sa/server.ts"
click node_unitdb "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/db.ts"
click node_records "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/level-records.ts"
click node_engines "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/so/engines.ts"
click node_cache "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/portal-cache.ts"
click node_database "https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/db.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_app,node_unit,node_siteops,node_groupadmin,node_subadmin,node_projectadmin,node_users toneBlue
class node_dataentry,node_evidence,node_review,node_workflow toneAmber
class node_brsr,node_consolidation,node_analytics,node_copilot toneMint
class node_auth,node_esgservice,node_pauth,node_saauth,node_unitdb,node_records,node_engines,node_cache,node_database toneRose
```

## Components

### Role Workspaces

- [Portal entry](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/page.tsx): `src/app/page.tsx`
- [Unit workspaces](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/pu/pu-app.tsx): `src/components/pu/pu-app.tsx`
- [Site operations](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/site-ops/modules/module-router.tsx): `src/components/site-ops/modules/module-router.tsx`
- [Group workspace](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/workspace/view-registry.tsx): `src/components/workspace/view-registry.tsx`
- [Subsidiary workspace](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/subsidiary/view-registry.tsx): `src/components/subsidiary/view-registry.tsx`
- [Project admin](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/project-admin/view-registry.tsx): `src/components/project-admin/view-registry.tsx`

### Disclosure & Review

- [ESG data entry](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/pu/data-entry/route.ts): `src/app/api/pu/data-entry/route.ts`
- [Evidence handling](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/components/shared/data-entry/engine-evidence-panel.tsx): `src/components/shared/data-entry/engine-evidence-panel.tsx`
- [Submission review](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/project-admin/collection-status/route.ts): `src/app/api/project-admin/collection-status/route.ts`
- [Submission workflow](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/workflow.ts): `src/lib/pu/workflow.ts`

### BRSR & Insights

- [BRSR reporting](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/brsr/route.ts): `src/app/api/esg/brsr/route.ts`
- [ESG consolidation](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/hierarchy/route.ts): `src/app/api/esg/hierarchy/route.ts`
- [Dashboards & analytics](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/esg/analytics/route.ts): `src/app/api/esg/analytics/route.ts`
- [AI copilot](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/app/api/copilot/chat/route.ts): `src/app/api/copilot/chat/route.ts`

### Platform Services

- [Session & access](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/session.ts): `src/lib/session.ts`
- [ESG API services](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/esg/server.ts): `src/lib/esg/server.ts`
- [Project-admin access](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/project-admin/server.ts): `src/lib/project-admin/server.ts`
- [Subsidiary access](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/sa/server.ts): `src/lib/sa/server.ts`
- [Unit data access](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/db.ts): `src/lib/pu/db.ts`
- [Level records](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/pu/level-records.ts): `src/lib/pu/level-records.ts`
- [ESG calculation engines](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/so/engines.ts): `src/lib/so/engines.ts`
- [Portal cache](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/portal-cache.ts): `src/lib/portal-cache.ts`
- [Unified database](https://github.com/sidhuprakash-creater/meil-project/blob/main/src/lib/db.ts): `src/lib/db.ts`

### Other components

- **Portal users**

## Connections

- Portal users → Portal entry: enter portal (evidence: `README.md`)
- Portal users → Unit workspaces: contribute disclosures (evidence: `README.md`)
- Unit workspaces → ESG data entry: submit data (evidence: `README.md`)
- ESG data entry → Level records: save records (evidence: `src/app/api/pu/data-entry/route.ts`)
- ESG data entry → Submission workflow: append history (evidence: `src/app/api/pu/data-entry/route.ts`)
- ESG data entry → Unit data access: sync records (evidence: `src/app/api/pu/data-entry/route.ts`)
- Portal users → Evidence handling: attach evidence (evidence: `README.md`)
- Portal users → Submission review: review submissions (evidence: `README.md`)
- Submission review → Level records: load records (evidence: `src/app/api/project-admin/collection-status/route.ts`)
- Submission review → Project-admin access: resolve context (evidence: `src/app/api/project-admin/collection-status/route.ts`)
- Portal users → Subsidiary workspace: manage subsidiary (evidence: `README.md`)
- Subsidiary workspace → Subsidiary access: authorize scope (evidence: `src/lib/sa/server.ts`)
- Portal users → Group workspace: manage group (evidence: `README.md`)
- Portal users → Site operations: manage site data (evidence: `README.md`)
- Portal users → Project admin: review project data (evidence: `README.md`)
- Portal users → BRSR reporting: prepare BRSR filing (evidence: `README.md`)
- Portal users → ESG consolidation: consolidate ESG (evidence: `README.md`)
- Portal users → Dashboards & analytics: view KPI dashboards (evidence: `README.md`)
- Portal users → AI copilot: use AI copilot
- ESG API services → Unified database: write audit data (evidence: `src/lib/esg/server.ts`)
- Unit data access → Unified database: shares client (evidence: `src/lib/pu/db.ts`)
- ESG calculation engines → Unified database: query factors (evidence: `src/lib/so/engines.ts`)
- Session & access → Unified database: read sessions (evidence: `src/lib/session.ts`)
