How sampriti-gopisetti/roleready works
RoleReady turns organizational knowledge into assigned, interactive employee training. Managers create projects and connect GitHub, Jira, Confluence, or documents; ingestion and embedding support retrieval, and background generation produces learning assets. Employees use role-specific dashboards and training experiences, while progress, engagement, and gamification support measurement. The README documents this overall flow; sampled source confirms API registration, ingestion dispatch, pipeline stages, and selected learning behavior, but not every endpoint-to-service connection.
Main entry points: supabase.py Supabase data · content_generation AI content generation · data_ingestion Knowledge sources · commands.py Learning engagement
Components 26
RoleReady web app
- Angular application
frontend/src/app/app.routes.ts - Project workflows
frontend/src/app/projects/project-generate-page/project-generate-page.ts - Learner experience
frontend/src/app/video-player/video-player.ts - Ingestion client
frontend/src/app/services/ingestion.service.ts - Learning sessions
frontend/src/app/shared/learning/learning-session.service.ts
Backend API
- FastAPI application
backend/app/main.py - Project endpoints
backend/app/api/v1/endpoints/project.py - Ingestion endpoints
backend/app/api/v1/endpoints/ingestion.py - Job dispatch
backend/app/services/job_dispatch.py - Project pipeline
backend/app/services/pipeline_service.py - Pipeline steps
backend/app/services/pipeline_steps.py
Knowledge and generation
- Knowledge sources
backend/app/services/data_ingestion - Embedding repository
backend/app/repositories/ingestion_repository.py - Semantic retrieval
backend/app/services/content_generation/retrieval.py - AI content generation
backend/app/services/content_generation
Training and learning
- Training management
backend/app/services/training/commands.py - Progress tracking
backend/app/services/progress/commands.py - Learning engagement
backend/app/services/engagement/commands.py - XP and streaks
backend/app/services/gamification/xp_engine.py
Other components
- Manager
- Employee
- Supabase data
backend/app/core/supabase.py - Asset storage
backend/app/repositories/storage_repository.py - Company data systems
- Google Gemini
- Embedding providers
Connections 35
- Manager → Angular application: uses
- Employee → Angular application: uses
- Angular application → Project workflows: routes to
- Angular application → Learner experience: routes to
- Project workflows → Ingestion client: starts ingestion
- Ingestion client → FastAPI application: HTTP requests
- Learning sessions → FastAPI application: records sessions
- FastAPI application → Project endpoints: dispatches
- FastAPI application → Ingestion endpoints: dispatches
- Project endpoints → Project pipeline: starts project pipeline
- Ingestion endpoints → Job dispatch: starts tracked jobs
- Job dispatch → Pipeline steps: runs ingestion
- Project pipeline → Pipeline steps: runs stages
- Pipeline steps → Knowledge sources: processes sources
- Knowledge sources → Company data systems: reads company data
- Knowledge sources → Embedding providers: creates embeddings
- Knowledge sources → Embedding repository: persists vectors
- Embedding repository → Supabase data: writes embeddings
- Project pipeline → AI content generation: generates assets
- Pipeline steps → AI content generation: invokes generators
- AI content generation → Semantic retrieval: retrieves context
- Semantic retrieval → Supabase data: reads vectors
- AI content generation → Google Gemini: generates content
- AI content generation → Asset storage: uploads media
- AI content generation → Supabase data: saves generated assets
- Manager → Training management: creates training
- Training management → Supabase data: persists training
- Employee → Learner experience: completes training
- Learner experience → Learning sessions: records activity
- Learning sessions → Learning engagement: submits events
- Learning engagement → Supabase data: persists events
- Learning engagement → Progress tracking: supports tracking
- Progress tracking → Supabase data: persists progress
- Learning engagement → XP and streaks: awards XP
- XP and streaks → Supabase data: records XP