How ojashwap/docdev works
Docaya is an enterprise electronic document management system that governs a document from capture to official publication. The intended workflow is staging, manual registration and classification, multi-stage review against working-day SLA targets, then unchanged promotion to SharePoint; approved records also support search and Ask/Browse. The React entry point loads the prototype UI, while sampled App.tsx shows API-backed workspace actions. The API’s use cases and most adapters are documented but not sampled, so their internal wiring is shown only where documentation or source supports it.
Main entry points: Docaya.Application Use cases and ports · prototype Workspace screens · DocumentPromotionOrchestrator.cs Promotion workflow · api.ts API client
Components 21
User experience
- React UI
src/web/src/main.tsx - Workspace screens
src/web/src/prototype - API client
src/web/src/services/api.ts - Search and Ask
src/web/src/features/assistant/AskDocayaPanel.tsx - Notifications
src/web/src/features/notifications - Administration
src/web/src/features/admin/AdminCenter.tsx
Document governance
- Workflow rules
src/api/Docaya.Domain - Staging storage
src/api/Docaya.Application/Ports/IStagingContentStore.cs - Manual classification
src/api/Docaya.Domain/Documents/ClassificationDimensions.cs - Approval workflow
src/api/Docaya.Domain/Documents/DocumentStateMachine.cs - Working-day SLA
src/api/Docaya.Domain/Workflow/WorkingDayCalendar.cs
API and persistence
- API contracts
src/contracts - HTTP API host
src/api/Docaya.Api/Program.cs - Use cases and ports
src/api/Docaya.Application - Provider adapters
src/api/Docaya.Infrastructure - Docaya SQL
src/api/Docaya.Infrastructure/Persistence/DocayaDbContext.cs
Background processing
- Functions host
src/functions/Program.cs - Promotion workflow
src/functions/Orchestrations/DocumentPromotionOrchestrator.cs - Promotion activities
src/functions/Activities/PromotionActivities.cs
Other components
- Staff user
- SharePoint Online
Connections 21
- Staff user → React UI: uses
- React UI → Workspace screens: renders
- Workspace screens → API client: requests data
- API client → HTTP API host: calls
- API contracts → API client: defines contract
- HTTP API host → Use cases and ports: dispatches requests
- Use cases and ports → Workflow rules: applies rules
- Use cases and ports → Staging storage: uses port
- Use cases and ports → Manual classification: registers metadata
- Use cases and ports → Approval workflow: evaluates decisions
- Use cases and ports → Working-day SLA: calculates targets
- Provider adapters → Docaya SQL: configures persistence
- Provider adapters → Use cases and ports: implements ports
- Functions host → Use cases and ports: registers services
- Functions host → Promotion workflow: hosts orchestration
- Promotion workflow → Promotion activities: dispatches steps
- Promotion activities → SharePoint Online: promotes file
- Promotion workflow → Search and Ask: indexes published version
- Workspace screens → Search and Ask: offers discovery
- Workspace screens → Notifications: offers notifications
- Workspace screens → Administration: offers administration