How zel-jpeg/skillbridge works
SkillBridge is an assessment-based OJT placement decision-support system. Students complete assessments and review competency evidence; instructors and coordinators manage enrollment, assessments, partner catalogs, and placement decisions; administrators maintain shared institutional data and review analytics. Django owns authorization, grading, recommendations, validation, and persistence, while the React client presents role-specific workflows. The README documents the major stages and integrations; sampled source confirms selected client data handling and competency/NLP dependencies, but not every backend route or UI-to-endpoint call.
Main entry points: App.jsx Role-based application · views.py Django API · useApi.js API and query client · combined_competency.py Competency evidence
Components 23
Web client
- Role-based application
skillbridge-frontend/src/App.jsx - API and query client
skillbridge-frontend/src/hooks/useApi.js
Assessment workflows
- Assessment taking
skillbridge-frontend/src/pages/student/StudentAssessment.jsx - Assessment authoring
skillbridge-frontend/src/hooks/instructor/useInstructorUpload.js - Batch enrollment
skillbridge-backend/api/enrollment_import.py
Competency and placement
- Competency evidence
skillbridge-backend/api/combined_competency.py - Position matching
skillbridge-backend/api/recommendation_nlp.py - Skill taxonomy
skillbridge-backend/api/skill_taxonomy.py - Placement decisions
skillbridge-backend/api/placement_allocator.py - Partner and position catalog
skillbridge-backend/api/organization.py
Institutional operations
- Institute and program management
skillbridge-backend/api/organization.py - Reports and analytics
skillbridge-backend/api/analytics.py - Notifications and email
skillbridge-backend/api/email_outbox.py
API and persistence
- Django API
skillbridge-backend/api/views.py - Domain records
skillbridge-backend/api/models.py - Live change events
skillbridge-backend/api/change_events.py - PostgreSQL
- Google OAuth
- Supabase services
- Brevo email
Other components
- Student
- Instructor / coordinator
- Administrator
Connections 26
- Student → Role-based application: uses
README.md - Instructor / coordinator → Role-based application: uses
README.md - Administrator → Role-based application: uses
README.md - Role-based application → API and query client: loads data
skillbridge-frontend/src/App.jsx - API and query client → Django API: calls API
README.md - Django API → Domain records: persists records
README.md - Domain records → PostgreSQL: stores data
README.md - Role-based application → Assessment taking: routes to
skillbridge-frontend/src/App.jsx - Instructor / coordinator → Assessment authoring: authors assessments
README.md - Instructor / coordinator → Batch enrollment: imports enrollment
README.md - Django API → Competency evidence: computes evidence
- Competency evidence → Domain records: reads records
skillbridge-backend/api/combined_competency.py - Competency evidence → Position matching: uses matching
skillbridge-backend/api/combined_competency.py - Position matching → Skill taxonomy: uses taxonomy
- Instructor / coordinator → Partner and position catalog: maintains catalog
README.md - Instructor / coordinator → Placement decisions: reviews placements
README.md - Position matching → Placement decisions: ranks positions
- Administrator → Institute and program management: manages programs
README.md - Administrator → Reports and analytics: reviews reports
README.md - Django API → Reports and analytics: serves analytics
- Django API → Live change events: publishes changes
- API and query client → Live change events: revalidates queries
- Django API → Notifications and email: queues notices
README.md - Notifications and email → Brevo email: delivers email
README.md - Role-based application → Google OAuth: signs in with
README.md - Role-based application → Supabase services: optional services
README.md