This is a submission for the Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle.
What I Built
SkillLens TutorKit is an open-source, AI-powered worksheet and study pack generator designed specifically for independent tutors, private teachers, and small coaching centres.
Every week, educators spend between 5 to 12 hours manually drafting practice problems, cross-referencing answer keys, balancing difficulty tiers, and formatting study materials. For freelance tutors and boutique coaching academies who operate on thin margins and tight schedules, prep time is unpaid overhead.
SkillLens TutorKit automates this preparation workflow while keeping educators in full pedagogical control:
- Source Material Ingestion: Tutors provide chapter notes, textbook excerpts, or syllabus outlines (supporting PDF, DOCX, TXT, or direct text prompts).
- Pedagogical Structuring: The engine categorizes the subject (STEM, Humanities, Economics, etc.) and generates an aligned curriculum package.
-
Multi-Format Question Generation:
- Diagnostic and practice multiple-choice questions with verified pedagogical explanations for both correct and distractor answers.
- Step-by-step worked exercises with revealable hints and mathematical equations formatted in KaTeX.
- Spaced-retention interactive flashcards covering key definitions and formulas.
- Adaptive Socratic Assistant: A contextual tutor drawer that analyzes student misconceptions, offers progressive scaffolded hints, and generates targeted drill questions on demand.
- Private & Exportable Worksheets: Educators can review, edit, and export completed study sets into printable student-ready formats.
Demo
-
Live Demo: https://skilllens-ai.vercel.app (or run locally via
http://127.0.0.1:5173) - *
- Interactive Tour: The demo demonstrates the end-to-end workflow: uploading a chapter note on projectile motion, selecting "Intermediate" difficulty, automatically synthesizing a structured teaching set with KaTeX formulas, running the Socratic tutor drawer for step-by-step hints, and exporting the worksheet pack.
Code
- GitHub Repository: https://github.com/AryanEjantkar/SkillLensAI
- License: MIT License (Permissive Open Source)
The codebase is organized around a clean separation of concerns:
-
backend/app/: FastAPI application, Pydantic schemas, document extractors, and modular multi-provider AI routing. -
frontend/: React 19 + Vite interface with KaTeX rendering, study workspace drawers, and interactive STEM simulation registries.
System Architecture
graph TD
A[Educator Source Material<br/>PDF, DOCX, TXT, or Prompt] --> B[Document Extractor Service]
C[Curriculum Settings<br/>Subject, Level, Question Types] --> D[Universal Lesson & Worksheet Planner]
B --> D
D --> E{Multi-Provider AI Router}
E -->|Cloud Inference| F[Gemma 4<br/>gemma-4-26b-a4b-it]
E -->|Offline Local Inference| G[Ollama Gemma 2<br/>gemma2:9b]
E -->|Multimodal Fallback| H[Gemini 2.5 Flash]
F --> I[Pydantic Schema Validation]
G --> I
H --> I
I --> J[React + Vite Frontend Engine]
J --> K[Interactive Simulation Reg & KaTeX]
J --> L[Socratic AI Tutor Drawer]
J --> M[Exportable Study Set & Worksheet]
How I Built It
The technology stack was chosen for speed, offline reliability, and educational precision:
- Frontend: React 19, Vite, and Vanilla CSS. Features dynamic KaTeX mathematical typesetting, responsive question review drawers, flashcard study modes, and interactive STEM visualization registries (projectile kinematics, calculus tangent trackers, and reaction mechanisms).
- Backend API: Python 3.10+ and FastAPI, with modular route separation for lesson synthesis, tutor interaction, and provider health checks.
-
Models Tested & Integrated:
-
Google Gemma 4 (
gemma-4-26b-a4b-it): Primary curriculum planning model invoked through the officialgoogle-genaiSDK for lesson plans, multi-choice question generation, and Socratic tutoring. -
Local Gemma 2 (
gemma2:9bvia Ollama): Offline inference provider running onlocalhost:11434, enabling 100% offline generation with zero network calls and zero token fees. - Gemini 2.5 Flash: Optional fallback provider for high-throughput multimodal inputs.
-
Google Gemma 4 (
-
Structured Validation: Strict Pydantic models enforce schema contracts (
LessonPlan,QuizItem,WorkedExample,VisualizationSpec). No unvalidated model output is rendered, and no executable code is injected into the client. -
Document Ingestion: Extensible parsers for
.pdf(usingpypdf),.docx(usingpython-docx), and raw text with strict payload bounds. -
Testing: Comprehensive 23-test automated test suite in
pytestcovering schema normalization, provider switching, tutor hint progression, and document extraction.
Current Implementation Status
| Feature | Status | Notes |
|---|---|---|
| Universal Worksheet & Lesson Generation | ✅ Working | Full schema-validated output across 9 subject categories |
| Gemma 4 Cloud Inference | ✅ Working | Integrated via Google GenAI SDK (gemma-4-26b-a4b-it) |
| Offline Gemma Local Inference | ✅ Working | Zero-cloud offline mode via Ollama (gemma2:9b) |
| Document Text Extractor (PDF/DOCX/TXT) | ✅ Working | Safe multi-format document parser with size limits |
| KaTeX Math & Formula Typesetting | ✅ Working | Clean rendering for physics, calculus, and chemistry |
| Adaptive Socratic Tutor Drawer | ✅ Working | Contextual hints, misconception diagnosis, dynamic practice |
| Exportable Study Sets | ✅ Working | Client-side export of study materials and raw text |
| Automated Direct PDF Print Layout | 🔄 In Progress | ReportLab integration for two-column printable school worksheets |
Why Does Open Innovation Matter?
For an educational application built as a sustainable side hustle, open innovation is essential to the core value proposition:
1. Data Privacy for Proprietary Teaching Notes
Educators and coaching centres frequently work with proprietary question banks, unpublished mock tests, and student assessment data. When using closed cloud APIs, every prompt and document is transmitted to external servers. With open-weight models like Gemma running locally via Ollama, student materials never leave the tutor's laptop.
2. Eliminating Variable Per-Token Overhead
Commercial SaaS APIs charge per thousand tokens. For an independent tutor generating 40 to 60 customized drill sheets a week, per-token billing creates unpredictable variable costs that eat into hourly margins. An open-weight model transforms AI from a recurring meter into a zero-marginal-cost desktop tool.
3. Model Independence & No Vendor Lock-In
By building a pluggable provider interface, SkillLens TutorKit is not held hostage by external pricing changes, deprecation cycles, or sudden API rate limits. Educators can seamlessly switch between cloud Gemma 4 and local Gemma 2 depending on their hardware and connectivity.
4. Inspectability & Pedagogical Customization
Closed AI models are black boxes. Open architectures let the community inspect prompt strategies, validate pedagogical constraints, fine-tune models on specific national syllabi, and guarantee deterministic outputs.
My Agent Session
This project was built and audited using an autonomous AI pair-programmer session with DevRelay. You can inspect the complete build log, prompt engineering, and test runs below:
My First User
To ground TutorKit in real educational needs, I shared the prototype with a high-school mathematics and physics tutor who manages four coaching batches (approx. 25 students).
The Workflow Test:
The educator uploaded raw lecture notes on Kinematics and Projectile Motion and asked TutorKit to generate an intermediate-level problem set with worked solutions and multiple-choice questions.
Findings & Feedback:
- Time Saved: Generating a balanced 10-question practice set with comprehensive step-by-step explanations took under 3 minutes, compared to their typical 90–120 minutes of manual typing and solution verification.
- Answer Key Accuracy: The tutor highlighted that having detailed pedagogical explanations for why an incorrect option is wrong was the single most valuable feature, as writing distractor explanations manually is the most time-consuming part of worksheet prep.
- Willingness to Pay: The tutor stated they would gladly pay $19 to $29 per month (or a one-time license of $79) for an offline desktop version with automated PDF export, as it saves them at least 6 to 8 hours of unpaid prep work each week.
Prize Categories
Featured Category: Best Use of Gemma
SkillLens TutorKit is engineered around the Gemma open-model ecosystem:
-
Google Gemma 4 (
gemma-4-26b-a4b-it): Powers rich curriculum generation, structured multi-tier questions, and the adaptive Socratic tutor through the Google GenAI SDK. -
Local Gemma 2 (
gemma2:9bvia Ollama): Powers complete offline, private worksheet generation on local hardware with zero API keys and zero network dependency.
🌐 Community Wisdom
Developing local-first educational tools requires balancing latency, structured output compliance, and hardware constraints. DEV community builders have documented key patterns for open-weight models in education:
🌐 Community Wisdom: My mom spends hours every week making test papers. I built her a generator that runs offline on Gemma 4
Source: notnirav
Tags:devchallenge,weekendchallenge,hf26challenge,gemmaHighlighting that independent educators are overwhelmed by weekly test paper preparation, and that running Gemma offline provides both zero-cost operating economics and reliable structured output when paired with strict Pydantic parsing.
🌐 Community Wisdom: Building a local-first AI tutor for my daughter (and 10–14 year-olds in Austrian schools) with Gemma 4
Source: georgpiwonka
Tags:devchallenge,gemmachallenge,gemma,dotnetProves that educational deployments in schools demand strict data privacy and pedagogical scaffolding, where open-weight models grant developers full control over hint pacing and data protection.
Summary
SkillLens TutorKit proves that open-weight AI can be transformed into a practical, revenue-generating tool for independent educators. By combining local and cloud Gemma models with strict schema validation and interactive learning components, TutorKit turns hours of tedious worksheet preparation into minutes of effortless curation.
Top comments (0)