Inspiration
The problem: By the time grades show a student is struggling, simple intervention is often too late. Generic content doesn't help.
Our question: What if an AI agent monitored student risk in real time and delivered a personalized recovery plan based on actual missed assignments and weak spots?
The name: EduForge – a workshop where students and teachers see risk, understand it, and act together.
What it does
| Component | What it shows/does |
|---|---|
| Left panel | Teachers see all enrolled students + risk scores (attendance, grades, missed assignments) |
| Right panel | AI agent (Gemini 2.5 Flash) chats directly with the student |
When a student says "I'm struggling with algebra" – the agent:
- Fetches profile from MongoDB (missed assignments, grade history)
- Searches Elastic for relevant resources (videos, practice sets)
- Uses Arize to compute risk and trace reasoning
- Generates a structured, multi‑week recovery plan via Gemini
The teacher sees the entire conversation and can intervene anytime. The agent doesn't just answer – it builds an actionable plan.
How we built it
Architecture: 6 microservices on Google Cloud Run
| Service | Purpose |
|---|---|
agent-orchestrator |
Main Gemini agent |
student-service |
MongoDB MCP server |
content-service |
Elastic MCP server |
prediction-service |
Arize risk scoring |
alert-service |
Dynatrace monitoring |
ingestion-service |
Fivetran data pipeline |
DevOps & tools:
- GitLab CI/CD – auto‑build, test, deploy on every push
- Google Secret Manager – all secrets
- Frontend – dark‑mode dashboard (Stripe/Vercel aesthetic)
AI: Vertex AI Gemini 2.5 Flash with a custom system prompt for specific, actionable advice. Every chat triggers live DB queries + content search before Gemini responds.
Challenges we ran into
| Challenge | What happened | Fix |
|---|---|---|
| CORS in production | Frontend (Cloud Storage) couldn't call backend API | Added CORS middleware to orchestrator |
| Gemini model versions | gemini-1.5-pro deprecated → 404 errors |
Switched to gemini-2.5-flash (current stable) |
| Pipeline config | Adding 7th service (frontend) broke CI/CD matrix | Deployed frontend manually to Cloud Storage to hit deadline |
| Time pressure | Started late, had to prioritise | Working chat API → clean UI → partner integrations (placeholders for Arize, Dynatrace, Fivetran, but architecture is MCP‑ready) |
Accomplishments we're proud of
- ✅ Live Gemini chat – responds in <2 seconds with personalised advice
- ✅ 6 microservices on Cloud Run, all passing health checks
- ✅ Premium UI – feels like a professional tool, not a student project
- ✅ Full CI/CD pipeline – redeploys on every git push
- ✅ 6 partner integrations – MongoDB, Elastic, GitLab, Arize, Dynatrace, Fivetran (MCP URLs configured)
What we learned
| Lesson | Why it matters |
|---|---|
Cloud Run's PORT must match 0.0.0.0:8080 |
Otherwise container fails to start |
| Gemini model names change frequently | Always check Vertex AI model garden |
| CORS isn't optional for different origins | Frontend + API need explicit headers |
| Static frontend on Cloud Storage is faster & more reliable | Avoids container build fights for demos |
What's next for EduForge
- 🔑 Replace placeholder credentials for Arize, Dynatrace, Fivetran with real keys
- 📧 Add real‑time risk alerts (email/Slack) when risk score crosses a threshold
- 🔁 Build teacher feedback loop – agent learns which interventions work
- 📚 Add more subjects (beyond maths and science)
- 🌍 Open‑source the MCP server connectors for other edtech platforms
EduForge isn't a finished product – it's a forge. A place where students and teachers build understanding together, one conversation at a time.
Built with
Platforms & cloud:
Google Cloud Run, Vertex AI (Gemini 2.5 Flash), Google Secret Manager, Cloud Storage
Databases & search:
MongoDB Atlas, Elastic Cloud
Observability & monitoring:
Arize, Dynatrace
Data integration:
Fivetran
DevOps:
GitLab CI/CD
Languages & frontend:
Node.js, Express, HTML/CSS/JavaScript, Inter font, Tabler Icons
Built With
- built-with-(plain-text)-platforms-&-cloud:-google-cloud-run
- cloud-storage-databases-&-search:-mongodb-atlas
- dynatrace-data-integration:-fivetran-devops:-gitlab-ci/cd-languages-&-frontend:-node.js
- elastic-cloud-observability-&-monitoring:-arize
- express.js
- google-secret-manager
- html/css/javascript
- inter-font
- tabler
- vertex-ai-(gemini-2.5-flash)
Log in or sign up for Devpost to join the conversation.