Inspiration
In many parts of Africa, exam preparation relies heavily on rote memorization and a one-size-fits-all approach. Whether a student is tackling their UTME/WAEC university admissions or a professional aiming for their ICAN or CFA certifications, they often lack access to personalized, 1-on-1 tutoring.
We wanted to solve this by building Quizant—an AI-powered, path-aware platform. The core inspiration was to move beyond generic "chatbots" and build an AI tutor, named Mentat, that inherently understands your specific academic track, syllabus, and regional exam nuances. We envisioned an AI that doesn't just answer questions, but proactively guides learners through structured masterclasses, tests their knowledge with mock CBTs (Computer Based Tests), and creates spaced-repetition flashcards from their personal study materials.
What it does
Quizant is a comprehensive, adaptive learning ecosystem:
- Path-Aware AI Tutor (Mentat): Chat with an AI that tailors its rigor, vocabulary, and examples based on whether you are an admissions candidate, an undergraduate, or a professional.
- Dynamic Study Tools: Mentat automatically generates micro-quizzes, interactive Guided Lessons (complete with Mermaid.js architecture diagrams), and SM-2 spaced repetition flashcards based on the exact topic you are struggling with.
- Document Ingestion (Study Vault): Users can upload PDFs, Word Docs, or images of handwritten notes. Mentat embeds these documents into a personalized RAG (Retrieval-Augmented Generation) pipeline, turning static notes into chat-able learning sources.
- Mock Exam Simulator: A full CBT engine featuring timed, strict examination parameters pulled from real past question databanks.
How we built it
Quizant is built on a modern, highly scalable stack designed for responsiveness and real-time interactions:
- Frontend: React 18, Vite, TypeScript, and Tailwind CSS (with shadcn/ui). The platform is bundled as a Progressive Web App (PWA) with specialized mobile-first navigation for learners on the go.
- Backend & Database: Supabase handles our PostgreSQL database, authentication, and Row Level Security.
- Serverless AI Gateway: All AI interactions run through Supabase Edge Functions (Deno). We built a custom multi-provider
aiRouterthat interfaces directly with Google Gemini (Flash & Pro models) via Server-Sent Events (SSE) for lightning-fast streaming. - Document Processing Pipeline: We built an asynchronous Google Cloud Run worker (FastAPI) that uses
PyMuPDFand Google Cloud Vision API to extract text from uploads, chunk them, and store vector embeddings directly in Supabase for Mentat's RAG system. - Payments: Fully integrated with Paystack via Edge Functions for seamless subscription-tier management.
Challenges we ran into
Building a robust, AI-first study platform presented several deep technical hurdles:
- Streaming UI Stutter: Rapidly piping Gemini's SSE stream directly into React state caused the main browser thread to lock up and jump. We had to engineer a custom render-throttling mechanism that batches state updates, guaranteeing a buttery-smooth, word-by-word streaming experience even on lower-end mobile devices.
- Mathematical Rendering: Handling the AI's output of complex STEM equations was tricky. Gemini outputs raw LaTeX, but often mixes inline and block formats. We had to build a custom
LatexRendererpreprocessor to auto-wrap orphaned commands (like\frac) and ensure long equations didn't break our mobile layout horizontally. - Cross-Service Authentication: Securing our Cloud Run document ingestion workers behind Google IAM Domain Restricted Sharing meant our Supabase Edge Functions had to dynamically generate OIDC Identity Tokens using Google Auth libraries just to trigger the ingestion pipeline.
- State Hydration & Path Awareness: Managing the UI state so that if a user switches their context from "JAMB Mathematics" to "ICAN Corporate Finance", the entire context window, past question bank, and Mentat system prompts switch instantaneously without leaking data.
What we learned
- Context is Everything: We learned that a Large Language Model's effectiveness in education relies entirely on the system prompt's architecture. By injecting the explicit "Learner Track" and "Taxonomy" into Gemini's context, the quality and relevance of the explanations skyrocketed.
- The intricacies of RAG: Building a document ingestion pipeline taught us the importance of optimal chunk sizes and deduplication. You can't just dump a textbook into a prompt; it requires careful vectorization to ensure the AI retrieves only the most relevant paragraphs for the student's question.
- UX in AI: We learned that users don't just want a chat interface; they want tools. Wrapping Gemini's capabilities into specific, actionable buttons like "Generate Flashcards" or "Quick Quiz" dramatically improved user engagement compared to an open-ended text box.
What's next for Quizant
- Proactive Mentat (Phase 3): Evolving Mentat from a reactive assistant into a proactive mentor that analyzes a user's Mock Exam scores and automatically builds a custom 7-day remediation curriculum using Adaptive Diagnostics.
- Offline Mentat: Finalizing our standalone, fully offline application for the Africa Deep Tech Challenge, bringing Local LLM capabilities to students without internet access.
- WhatsApp Integration: Expanding our reach by allowing students to query the Quizant question bank and Mentat via WhatsApp bots.
Built With
- deno
- fastapi
- framer-motion
- github-actions
- google-cloud
- google-cloud-run
- google-cloud-vision
- google-gemini
- latex
- mermaid.js
- paystack
- postgresql
- pwa
- python
- react
- supabase
- tailwindcss
- typescript
- vercel
- vertex-ai
- vite
Log in or sign up for Devpost to join the conversation.