DEV Community

Cover image for StudySpark ⚡ - Turning Messy Notes into Smart Study Tools
Aayush Gupta
Aayush Gupta

Posted on

StudySpark ⚡ - Turning Messy Notes into Smart Study Tools

This is a submission for the Hacktoberfest Weekend Challenge: Build for a Friend

What I Built

I built StudySpark for my college roommate. He always ends up with massive, chaotic walls of text for his lecture notes and spends way too much time trying to manually organize them before exams rather than actually studying them.

StudySpark solves this by instantly turning raw study materials into working study tools. You just paste your messy notes in, and it automatically generates a deck of spaced-repetition flashcards, adaptive quizzes, and clean summaries. If you get stuck on a specific concept, it even breaks it down for you using simple analogies.

Demo

StudySpark Home

Try it out live here: https://studyspark-njsw.onrender.com/

Code

⚡ StudySpark

Transform your chaotic lecture notes into working study materials instantly.

StudySpark is a sleek, AI-powered study assistant built for students who struggle to organize their textbook excerpts and lecture notes. By leveraging Google's Gemma open-weight models (via the Gemini API), it processes your notes to ensure private, secure, and fast learning.

✨ Features

  • Smart Flashcards: Automatically extracts key concepts from your notes and converts them into an interactive flashcard deck with spaced repetition marking.
  • Adaptive Quizzes: Generates multiple-choice quizzes to test your comprehension on the fly.
  • Key Summaries: Condenses walls of text into bulleted highlights and extracts key terms for quick review.
  • Concept Explainer: Stuck on a specific topic? Type it in, and StudySpark will break it down with analogies, real-world examples, and study tips.

🚀 Built With

  • Backend: Python, Flask, Gunicorn
  • Frontend: Vanilla JS, Custom CSS (Minimalist Design System)
  • AI…

How I Built It

I wanted to keep the application lightweight and snappy, so I built a Python Flask backend with a completely custom Vanilla JS frontend (no heavy frameworks).

The heavy lifting is powered by Google's Gemma open-weight models (accessed via the Gemini API). I actually had to build a custom fallback system in the backend routing: because the larger gemma-4-31b model can sometimes hang during peak loads, the app dynamically falls back to faster models to ensure the flashcards generate instantly without crashing the student's study session.

Why Does Open Innovation Matter?

Study notes are deeply personal data. Students dump their half-baked thoughts, mistakes, and sometimes personal information into their lecture notes. Sending all of this into a closed, proprietary black-box API where you don't know how the data is used for training isn't ideal.

By building around open-weight models like Gemma, we are paving the way for tools like StudySpark to eventually run 100% locally on a student's laptop. That means total privacy, offline capability in library basements, and most importantly for broke college students: zero recurring API costs.

Prize Categories

  • Best Use of Gemma
  • Best Use of Render

Top comments (0)