-
Notifications
You must be signed in to change notification settings - Fork 4
Description
Mini-Quest Backend Tasks: Certifications, Analytics & AI Integration
Team: Encrypters (Backend)
Focus: Data Management, API Integration, Analytics, and Certificate Automation
Linked Modules: Creators (Frontend), Applicators (Data Viz), Curators (Admin)
Overview
The Backend team is responsible for implementing the data systems, APIs, and logic layers supporting certifications, analytics dashboards, and AI-assisted insights.
This includes endpoints for student progress, certificate generation, analytics summaries, and admin reporting tools.
Task Breakdown
1. Certifications System
Goal: Allow users to earn and view digital certificates based on completed modules or quests.
Tasks:
- Create
certificationsdatabase schema (user_id,quest_id,completion_date,certificate_url) - Build API endpoint:
POST /api/certificationsto generate a certificate - Integrate with PDF generator (e.g., ReportLab or HTML → PDF)
- Implement
GET /api/certifications/:user_idto fetch user’s certificates - Coordinate with Frontend to display certificates in a carousel view
- Export certificates to LinkedIn Certification section (simulate or API link placeholder)
2. Graphs & Analytics (User Dashboard)
Goal: Provide personal analytics for each user on their activity and progress.
Tasks:
-
Design database tables for:
activity_log(time spent per module)question_responses(accuracy tracking)module_progress(percentage completion)
-
API routes:
GET /api/analytics/user/:id→ returns summary dataGET /api/analytics/user/:id/pdf→ generates a PDF executive summary
-
Generate charts data for:
- Time spent
- Questions answered correctly
- Overall module progress
-
Integrate analytics output with Data Visualization team (Applicators)
3. AI Gemini Chatbot Integration
Goal: Embed a context-aware AI chatbot to help users summarize results, generate LinkedIn-ready descriptions, and reflect on progress.
Tasks:
- Define context endpoints for user data (to pass into Gemini API)
- Create backend route:
POST /api/chat/ai-summary - Secure API key storage (environment variables)
- Implement safeguards for ethical AI use and verification logging
- Return AI-generated summaries that can be used for LinkedIn “About” or “Skills” sections
4. Admin Analytics Dashboard (Content Admin)
Goal: Give instructors/curators a unified dashboard for class-level analytics, progress tracking, and feedback aggregation.
Tasks:
-
Aggregate data from all users:
- Average time spent
- Question accuracy
- Module completion rate
-
GET /api/admin/analytics/overview -
GET /api/admin/progress/all -
GET /api/admin/feedback→ pulls from all module comment sections -
Build filters (by class, by module, by user)
-
Support export to CSV or PDF
-
Collaborate with Curators (Analytics/Admin team) for visualization and UI hooks
5. System Infrastructure
Tasks:
- Set up Flask or Spring Boot project structure
- Define
.envfile for database and API keys - Implement RESTful API design with CORS for Frontend access
- Use SQLite or PostgreSQL (based on hosting)
- Include documentation in
README.mdfor all API routes
Deliverables
- Functional Flask/Spring Boot backend
- REST API documentation (
/docsor Markdown in repo) - Live deployed API link (via Render, Replit, or GitHub Actions)
- Analytics and Certification integration verified with Frontend team
- Final “Executive Summary PDF” downloadable by user
Collaboration Notes
-
Work closely with Frontend (Creators) to ensure UI integration for certificates and analytics.
-
Coordinate with Curators (Admin) for data visualization and progress tracking.
-
Follow Agile workflow:
- Use GitHub Projects for task status.
- Commit messages with tags:
[certs],[analytics],[AI],[admin].