{"slug": "studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts", "title": "StudyForge — I Built an AI Study Assistant for a Friend Too Lazy to Type Prompts", "summary": "A developer built StudyForge, an open-source AI study assistant that turns uploaded PDFs, PowerPoint presentations, and Word documents into structured study content including topic explanations, expected questions, and quizzes. The tool runs on Next.js 16 and React 19 with Supabase for persistence, and uses a multi-provider AI waterfall (Groq, OpenAI, Ollama, Gemini, Claude) in which the first working provider wins; the hosted demo uses Google Gemini 3.8 Flash, while Ollama with a default Qwen3:30B open-weight model enables fully offline, self-hosted use.", "body_md": "*This is a submission for the [Hacktoberfest Weekend Challenge: Build for a Friend](https://dev.to/challenges/hacktoberfest-weekend-2026-10-01)*\n\nI built **StudyForge**, an open-source AI study assistant for my friend, who was struggling with one surprisingly simple problem: he was too lazy to even type prompts into an AI tool to get notes, explanations, and quizzes.\n\nSo instead of asking him to figure out the right prompt every time, I built a study workflow around the task itself.\n\nStudyForge lets a student upload course material such as **PDFs, PowerPoint presentations, and Word documents** and turn that material into structured study content including **topic explanations, expected questions, and quizzes**.\n\n**Core features:**\n\n**Live app:** [https://studyforge-8cdo.onrender.com](https://studyforge-8cdo.onrender.com)\n\nOpen-source AI study assistant — upload your lecture slides and get exam-ready notes, expected questions, and an interactive quiz tailored to your university and course.\n\nNo account required. Works offline with a local Ollama model. Self-hostable.\n\nThe public StudyForge demo is deployed on **Render**:\n\n[https://studyforge-8cdo.onrender.com](https://studyforge-8cdo.onrender.com)\n\nThe hosted deployment uses **Google Gemini 3.8 Flash** (`gemini-3.8-flash`) for AI generation.\n\nStudyForge also supports **Ollama with configurable local models** for self-hosted and offline use.\n\nEvery student uploads lecture slides to ChatGPT and asks \"make me notes\". StudyForge does what that prompt can't.\n\n| Tool | Problem | \n|---|---|\n| ChatGPT / Gemini (raw) | Generic output — knows nothing about your university, syllabus, or exam style | \n| Notability AI, Adobe AI | Requires an account and subscription; sends your documents to a third-party cloud | \n| Manual prompt engineering | Produces notes, questions, *or* a quiz — never all three in one structured pass | \n\n**StudyForge is different**…\n\nStudyForge is built on **Next.js 16 + React 19**, with **Supabase** for persistence and\n\n  a multi-provider AI waterfall at its core. The open-source AI stack is what makes the\n\n  whole thing work:\n\nUniversal (Groq) → OpenAI → Ollama → Gemini → Claude\n\nThe first working provider wins. The key open-source piece is **Ollama** — it runs entirely on the user's machine, with no internet required after the model is downloaded.\n\nThe default local model is Qwen3:30B — an open-weight model that produces genuinely academic-quality output for this task.\n\nOpen innovation makes StudyForge much more flexible than building the entire application around one closed AI API.\n\nWith **Ollama and open-weight models**, users can run models locally, choose models that fit their hardware and requirements, and experiment with different models without rebuilding the application.\n\nIt also means the AI layer can evolve independently of the rest of the product. A student can use a local model, while a hosted deployment can use a compatible cloud provider.\n\nFor a tool built around education, that flexibility matters: the goal is to make AI-assisted studying more accessible and adaptable rather than tying the entire experience to one proprietary model.\n\nThe full development history is transparent via the commit log:[github.com/RishavRajSingh44/StudyForge/commits](https://github.com/RishavRajSingh44/StudyForge/commits/main)", "url": "https://wpnews.pro/news/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts", "canonical_source": "https://dev.to/rishavrajsingh44/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts-5587", "published_at": "2026-10-05 12:10:50+00:00", "updated_at": "2026-10-05 12:19:41.150586+00:00", "lang": "en", "topics": ["ai-tools", "ai-products", "large-language-models", "generative-ai", "developer-tools"], "entities": ["StudyForge", "Ollama", "Google Gemini", "Qwen3:30B", "Next.js", "Supabase", "Groq", "OpenAI"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts", "markdown": "https://wpnews.pro/news/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts.md", "text": "https://wpnews.pro/news/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts.txt", "jsonld": "https://wpnews.pro/news/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts.jsonld"}}