How aldjayr/neust-epms works
NEUST EPMS is a university extension-service management system: authenticated users create and review proposals, manage resulting projects and MOAs, submit reports, and access documents and oversight tools. The graph follows the documented browser-to-API boundary and the sampled route-to-service ownership where available. Domain modules and frontend feature areas are grouped at their exact directory paths; internal wiring for unsampled capabilities is not inferred.
Main entry points: app.ts HTTP application · schema PostgreSQL · proposals Proposal workflow · notifications Notifications
Components 20
User application
- Web application
frontend/src/routes - Domain features
frontend/src/features - API client
frontend/src/lib/api/client.ts
API and identity
- HTTP application
backend/src/app.ts - Authentication
backend/src/modules/auth
Program lifecycle
- Proposal workflow
backend/src/modules/proposals - Project management
backend/src/modules/projects - Project reporting
backend/src/modules/reports - MOA management
backend/src/modules/moas - Document storage
backend/src/modules/storage
Oversight tools
- User administration
backend/src/modules/admin - Director tools
backend/src/modules/director - Action center
backend/src/modules/action-center - Cross-domain search
backend/src/modules/search - Audit history
backend/src/modules/audit - Notifications
backend/src/modules/notifications
Persistence and integrations
- PostgreSQL
backend/src/db/schema - Supabase Auth and Storage
- Resend email
Other components
- University user
Connections 30
- University user → Web application: uses
- Web application → Domain features: presents
- Domain features → API client: requests
- API client → HTTP application: calls API
- HTTP application → Authentication: dispatches
- HTTP application → Proposal workflow: dispatches
- HTTP application → Project management: dispatches
- HTTP application → Project reporting: dispatches
- HTTP application → MOA management: dispatches
- HTTP application → Document storage: dispatches
- HTTP application → User administration: dispatches
- HTTP application → Director tools: dispatches
- HTTP application → Action center: dispatches
- HTTP application → Cross-domain search: dispatches
- HTTP application → Audit history: dispatches
- HTTP application → Notifications: dispatches
- Authentication → Supabase Auth and Storage: validates identity
- Authentication → PostgreSQL: loads profile
- Proposal workflow → PostgreSQL: reads and writes
- Proposal workflow → Notifications: creates updates
- Proposal workflow → Audit history: records review
- Project management → PostgreSQL: reads and writes
- Project reporting → PostgreSQL: reads and writes
- MOA management → PostgreSQL: reads and writes
- Document storage → PostgreSQL: records metadata
- Document storage → Supabase Auth and Storage: stores files
- User administration → PostgreSQL: manages accounts
- Cross-domain search → PostgreSQL: searches records
- Notifications → PostgreSQL: stores notifications
- Notifications → Resend email: sends email