<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: RishavRajSingh44</title>
    <description>The latest articles on DEV Community by RishavRajSingh44 (@rishavrajsingh44).</description>
    <link>https://dev.to/rishavrajsingh44</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4152742%2F076f3197-169f-4b8d-9637-02c0507e6b28.png</url>
      <title>DEV Community: RishavRajSingh44</title>
      <link>https://dev.to/rishavrajsingh44</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/rishavrajsingh44"/>
    <language>en</language>
    <item>
      <title>StudyForge — I Built an AI Study Assistant for a Friend Too Lazy to Type Prompts</title>
      <dc:creator>RishavRajSingh44</dc:creator>
      <pubDate>Mon, 05 Oct 2026 12:10:50 +0000</pubDate>
      <link>https://dev.to/rishavrajsingh44/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts-5587</link>
      <guid>https://dev.to/rishavrajsingh44/studyforge-i-built-an-ai-study-assistant-for-a-friend-too-lazy-to-type-prompts-5587</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built &lt;strong&gt;StudyForge&lt;/strong&gt;, 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.&lt;br&gt;
So instead of asking him to figure out the right prompt every time, I built a study workflow around the task itself.&lt;br&gt;
StudyForge lets a student upload course material such as &lt;strong&gt;PDFs, PowerPoint presentations, and Word documents&lt;/strong&gt; and turn that material into structured study content including &lt;strong&gt;topic explanations, expected questions, and quizzes&lt;/strong&gt;.&lt;br&gt;
&lt;strong&gt;Core features:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Upload PDF, PPTX, or DOCX lecture slides and past exam papers (up to 20 files)&lt;/li&gt;
&lt;li&gt;Enter your university name and course code — the AI calibrates everything to your
institution's exam format&lt;/li&gt;
&lt;li&gt;Web search augmentation: searches for your syllabus and exam format when a Tavily API key is configured&lt;/li&gt;
&lt;li&gt;Streaming UI: results appear in real time as the model generates&lt;/li&gt;
&lt;li&gt;PDF export: download notes, questions, or quiz as a branded PDF&lt;/li&gt;
&lt;li&gt;No account required — anonymous sessions work out of the box&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Live app:&lt;/strong&gt; &lt;a href="https://studyforge-8cdo.onrender.com" rel="noopener noreferrer"&gt;https://studyforge-8cdo.onrender.com&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/RishavRajSingh44" rel="noopener noreferrer"&gt;
        RishavRajSingh44
      &lt;/a&gt; / &lt;a href="https://github.com/RishavRajSingh44/StudyForge" rel="noopener noreferrer"&gt;
        StudyForge
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      Open-source AI study assistant — upload lecture slides, get exam-ready notes, expected questions &amp;amp; quiz tailored to your institution
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;StudyForge&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;Open-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.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;No account required. Works offline with a local Ollama model. Self-hostable.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://github.com/RishavRajSingh44/StudyForge/actions/workflows/ci.yml" rel="noopener noreferrer"&gt;&lt;img src="https://github.com/RishavRajSingh44/StudyForge/actions/workflows/ci.yml/badge.svg" alt="CI"&gt;&lt;/a&gt;
&lt;a href="https://github.com/RishavRajSingh44/StudyForge/actions/workflows/security.yml" rel="noopener noreferrer"&gt;&lt;img src="https://github.com/RishavRajSingh44/StudyForge/actions/workflows/security.yml/badge.svg" alt="Security Scan"&gt;&lt;/a&gt;
&lt;a href="https://securityscorecards.dev/viewer/?uri=github.com/RishavRajSingh44/StudyForge" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/ebe5111a7c1959cedef56ba57fd18ddea0bcffbd6ee03f4680a71cd2dcd456aa/68747470733a2f2f6170692e736563757269747973636f726563617264732e6465762f70726f6a656374732f6769746875622e636f6d2f52697368617652616a53696e676834342f5374756479466f7267652f6261646765" alt="OpenSSF Scorecard"&gt;&lt;/a&gt;
&lt;a href="https://www.bestpractices.dev/projects/13013" rel="nofollow noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/89b1c7e0483b70516a0877e5243a8e54eed9384d033a10cae509c9cf7557c492/68747470733a2f2f7777772e626573747072616374696365732e6465762f70726f6a656374732f31333031332f6261646765" alt="OpenSSF Best Practices"&gt;&lt;/a&gt;
&lt;a href="https://github.com/RishavRajSingh44/StudyForge/./LICENSE" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/df936148857db877da170255bc4c5d684c9190f2e7d8524c9616fd49123cf675/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4147504c2d2d332e302d6f72616e67652e737667" alt="License: AGPL-3.0"&gt;&lt;/a&gt;
&lt;a href="https://github.com/RishavRajSingh44/StudyForge/./CODE_OF_CONDUCT.md" rel="noopener noreferrer"&gt;&lt;img src="https://camo.githubusercontent.com/4ae39ae593b602cf0ae07972b61c73728b77ec8e2cf40f579a2441948208036b/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f436f6e7472696275746f72253230436f76656e616e742d322e312d3462616161612e737667" alt="Contributor Covenant"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Live Deployment&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;The public StudyForge demo is deployed on &lt;strong&gt;Render&lt;/strong&gt;:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="https://studyforge-8cdo.onrender.com" rel="nofollow noopener noreferrer"&gt;https://studyforge-8cdo.onrender.com&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The hosted deployment uses &lt;strong&gt;Google Gemini 3.8 Flash&lt;/strong&gt; (&lt;code&gt;gemini-3.8-flash&lt;/code&gt;) for AI generation.&lt;/p&gt;
&lt;p&gt;StudyForge also supports &lt;strong&gt;Ollama with configurable local models&lt;/strong&gt; for self-hosted and offline use.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Why StudyForge?&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Every student uploads lecture slides to ChatGPT and asks "make me notes". StudyForge does what that prompt can't.&lt;/p&gt;
&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;Problem&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;ChatGPT / Gemini (raw)&lt;/td&gt;
&lt;td&gt;Generic output — knows nothing about your university, syllabus, or exam style&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Notability AI, Adobe AI&lt;/td&gt;
&lt;td&gt;Requires an account and subscription; sends your documents to a third-party cloud&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Manual prompt engineering&lt;/td&gt;
&lt;td&gt;Produces notes, questions, &lt;em&gt;or&lt;/em&gt; a quiz — never all three in one structured pass&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;StudyForge is different&lt;/strong&gt;…&lt;/p&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/RishavRajSingh44/StudyForge" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h2&gt;
  
  
  How I Built It
&lt;/h2&gt;

&lt;p&gt;StudyForge is built on &lt;strong&gt;Next.js 16 + React 19&lt;/strong&gt;, with &lt;strong&gt;Supabase&lt;/strong&gt; for persistence and&lt;br&gt;
  a multi-provider AI waterfall at its core. The open-source AI stack is what makes the&lt;br&gt;
  whole thing work:&lt;/p&gt;

&lt;h3&gt;
  
  
  The AI provider waterfall
&lt;/h3&gt;

&lt;p&gt;Universal (Groq) → OpenAI → Ollama → Gemini → Claude&lt;br&gt;
The first working provider wins. The key open-source piece is &lt;strong&gt;Ollama&lt;/strong&gt; — it runs entirely on the user's machine, with no internet required after the model is downloaded.&lt;br&gt;
The default local model is Qwen3:30B — an open-weight model that produces genuinely academic-quality output for this task.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Does Open Innovation Matter?
&lt;/h2&gt;

&lt;p&gt;Open innovation makes StudyForge much more flexible than building the entire application around one closed AI API.&lt;br&gt;
With &lt;strong&gt;Ollama and open-weight models&lt;/strong&gt;, users can run models locally, choose models that fit their hardware and requirements, and experiment with different models without rebuilding the application.&lt;br&gt;
It 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.&lt;br&gt;
For 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.&lt;/p&gt;

&lt;h2&gt;
  
  
  My Agent Session
&lt;/h2&gt;

&lt;p&gt;The full development history is transparent via the commit log:&lt;a href="https://github.com/RishavRajSingh44/StudyForge/commits/main" rel="noopener noreferrer"&gt;github.com/RishavRajSingh44/StudyForge/commits&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Prize Categories
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Ollama — local open-weight inference (Qwen3:30B default, fully configurable)&lt;/li&gt;
&lt;li&gt;Open Source AI — built around open-weight models and open-source frameworks&lt;/li&gt;
&lt;li&gt;Render — application is deployed on Render, using it to host the Next.js app and make the AI-powered study workflow publicly accessible.&lt;/li&gt;
&lt;li&gt;GitHub — Best Use of GitHub Copilot.&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
  </channel>
</rss>
