Inspiration
Teachers and NGOs told us they need fast, zero-cost ways to create materials often with limited internet and mixed reading levels in class. Many tools are paywalled, cloud-only, or produce PDFs that are hard to edit. We set out to build something that works entirely in the browser, is teacher-friendly, and costs \$0 to run.
What it does
Paste a URL or text → TinyTeacher generates:
- Summary of key ideas
- Simplified version with a Reading Level toggle (A2 ↔ B2)
- Flashcards and a short MCQ Quiz
- DOCX export (easy editing in Word/Google Docs)
- Text-to-Speech and Dyslexia-friendly mode
- Offline/PWA + local saves (no accounts, no servers)
How we built it
- Frontend: React 18 + Vite + Tailwind (clean, fast MVP)
- Heuristics (no paid AI): sentence scoring (keywords, position, length) + de-dup via Jaccard $J(A,B)=\frac{|A\cap B|}{|A\cup B|}$ to avoid near-duplicate sentences
- Simplification: rule-based phrase substitutions + length caps per level (A2/B2)
- Quiz/Flashcards: cloze-style generation from high-salience terms
- TTS: Web Speech Synthesis API (on-device)
- Export:
docxlibrary → structured sections (Summary, Simplified, Flashcards, Quiz) - Offline: PWA (
vite-plugin-pwa) + local storage for saved lessons - UX polish: framer-motion, lucide icons, dark mode, dyslexia spacing, print hotfix
(we recompute Simplified on
beforeprintto ensure the correct A2/B2 on paper)
Challenges we ran into
- CORS/content extraction: some sites block direct fetch; we added a tiny CORS proxy (free tier) and a “paste text” fallback.
- Quality without LLMs: tuning the heuristic weights and keyword filters to be stable across topics.
- Print consistency: browsers snapshot DOM before print; solved with a
beforeprintrecompute. - A11y in motion UIs: keeping contrast/focus strong while using glass/gradients and animations.
Accomplishments that we're proud of
- A fully offline lesson builder that schools can adopt with zero budget.
- Teacher-centric DOCX export .
- A2/B2 toggle + Dyslexia-friendly mode built-in.
- Polished MVP look/feel that installs as a PWA and runs on low-end devices.
What we learned
- You can get surprisingly good learning materials with deterministic heuristics fast, private, and cheap.
- Teacher workflows prefer editable outputs (DOCX) over static PDFs.
- Small details matter: print lifecycle events, focus states, and mobile tap targets.
What’s next for TinyTeacher
- Better ranking (lightweight ML or on-device embeddings) while staying offline-first
- Templates by grade/subject for DOCX
- On-device OCR (lazy-loaded) for photos of worksheets
- Shareable lesson packs + on-device analytics (privacy-preserving)
- Optional integrations: LMS exports (SCORM/xAPI), Google Classroom
Our Team
Kamil Piejko(173197@stud.prz.edu.pl) - Algorithms & Platform: Implemented the heuristic summarizer/keywords/quiz logic, print A2/B2 hotfix, CORS proxy hookup.
Matuesz Grabowski(173145@stud.prz.edu.pl) - Product & Frontend Lead: Built the React/Vite/Tailwind app, dark mode, TTS integration, animations, PWA polish, and performance tweaks.
Joanna Pich(179357@stud.prz.edu.pl) - UX Polish & Content: Wrote microcopy and lesson content examples, refined accessibility (dyslexia spacing, focus states), prepared the slide deck.
Built With
- cloudflare-worker-as-cors-proxy
- docx
- domparser
- framer-motion
- javascript
- local-storage
- lucide-react
- react-18
- tailwind-css
- vite
- vite-plugin-pwa
- web-speech-synthesis-api
Log in or sign up for Devpost to join the conversation.