How dopazoff1/focal-assist works
Focal is a support-operations workspace: operators capture customer work, consult guided knowledge, govern access and approvals, and use coaching and delivery tools to improve outcomes. The Angular application routes users to workspace surfaces; the Spring API provides domain endpoints and persistence. The README documents major product capabilities that are represented here, but most corresponding source was not sampled, so those connections are shown as unverified rather than asserted as observed calls.
Main entry points: app.routes.ts Workspace routes · LiveChatService.java Live chat · crm.ts CRM inbox · knowledge-base.ts Knowledge base
Components 22
Workspace experience
- Angular workspace
frontend/src/app/app.ts - Workspace routes
frontend/src/app/app.routes.ts
Customer operations
- CRM inbox
frontend/src/app/components/crm/crm.ts - Email conversations
backend/src/main/java/com/focal/api/service/GmailService.java - Live chat
backend/src/main/java/com/focal/api/service/LiveChatService.java - Chat projects
backend/src/main/java/com/focal/api/service/ChatProjectService.java - Case endpoints
backend/src/main/java/com/focal/api/controllers/CrmController.java
Knowledge and guidance
- Knowledge base
frontend/src/app/components/knowledge-base/knowledge-base.ts - Article editing
frontend/src/app/components/article-editor/article-editor.ts - Article validation
backend/src/main/java/com/focal/api/service/KbValidationService.java - SOP decision maps
backend/src/main/java/com/focal/api/service/KbMapService.java - Knowledge Hub
backend/src/main/java/com/focal/api/service/KbHubService.java - Process Assistant
backend/src/main/java/com/focal/api/service/ProcessAssistantService.java
Governance and coaching
- Role and channel access
backend/src/main/java/com/focal/api/service/RoleAccessService.java - Academy training
backend/src/main/java/com/focal/api/service/TrainingAssetService.java - QA and adherence
backend/src/main/java/com/focal/api/controllers/KbAnalyticsController.java
Collaboration and delivery
- Collaboration API
backend/src/main/java/com/focal/api/controllers/CollaborationController.java - Collaboration service
backend/src/main/java/com/focal/api/service/CollaborationService.java - FlowDesk
frontend/src/app/components/flowdesk-board/flowdesk-board.ts - Jira integration
backend/src/main/java/com/focal/api/service/JiraBridgeService.java
Other components
- Support operator
- MySQL database
Connections 25
- Support operator → Angular workspace: uses
README.md - Angular workspace → Workspace routes: navigates
frontend/src/app/app.ts - Workspace routes → CRM inbox: routes to
- Workspace routes → Knowledge base: routes to
frontend/src/app/app.routes.ts - Support operator → CRM inbox: handles cases
README.md - CRM inbox → Case endpoints: uses API
- Support operator → Live chat: handles chats
README.md - Live chat → Chat projects: loads workflows
backend/src/main/java/com/focal/api/service/LiveChatService.java - Support operator → Email conversations: handles email
README.md - Support operator → Knowledge base: searches knowledge
README.md - Knowledge base → Article editing: opens articles
- Article editing → Article validation: submits drafts
- Support operator → SOP decision maps: follows procedures
README.md - Support operator → Knowledge Hub: browses content
README.md - Support operator → Process Assistant: requests guidance
README.md - Support operator → Role and channel access: checks permissions
README.md - Support operator → Academy training: completes courses
README.md - Support operator → QA and adherence: receives coaching
README.md - Support operator → Collaboration API: collaborates
README.md - Collaboration API → Collaboration service: delegates
backend/src/main/java/com/focal/api/controllers/CollaborationController.java - Support operator → FlowDesk: tracks improvements
README.md - Support operator → Jira integration: escalates work
- Email conversations → MySQL database: persists conversations
- Live chat → MySQL database: persists sessions
- Collaboration service → MySQL database: persists collaboration