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: docx library → 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 beforeprint to 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 beforeprint recompute.
  • 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
Share this project:

Updates