<?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: Shourya Shinde</title>
    <description>The latest articles on DEV Community by Shourya Shinde (@shourya_shinde_20).</description>
    <link>https://dev.to/shourya_shinde_20</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%2F3862422%2Fb31ff5e1-3472-4313-8c9a-6b5f85fed75a.jpeg</url>
      <title>DEV Community: Shourya Shinde</title>
      <link>https://dev.to/shourya_shinde_20</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/shourya_shinde_20"/>
    <language>en</language>
    <item>
      <title>Morning Digest AI: Let Your Group Chats Catch You Up 🌅🤖</title>
      <dc:creator>Shourya Shinde</dc:creator>
      <pubDate>Sun, 25 Oct 2026 07:11:45 +0000</pubDate>
      <link>https://dev.to/shourya_shinde_20/morning-digest-ai-let-your-group-chats-catch-you-up-4p3e</link>
      <guid>https://dev.to/shourya_shinde_20/morning-digest-ai-let-your-group-chats-catch-you-up-4p3e</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week3-2026-10-19"&gt;Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Ever wake up to hundreds of unread group chat messages and wonder if you missed anything important?&lt;/p&gt;

&lt;p&gt;I’m building &lt;strong&gt;Morning Digest AI&lt;/strong&gt;, a local-first AI agent that turns noisy group chat notifications into a concise, two-line morning summary.&lt;/p&gt;

&lt;p&gt;Instead of scrolling through endless conversations, you can start your day knowing the most important announcements, deadlines, decisions, and pending tasks.&lt;/p&gt;

&lt;p&gt;The goal is simple: &lt;strong&gt;spend less time catching up and more time getting things done.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The project is designed to process messages locally, keeping personal conversations off third-party AI inference APIs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;The project currently runs locally on my Windows PC.&lt;/p&gt;

&lt;p&gt;The prototype uses a Python summarization pipeline connected to Ollama, with Qwen3 generating concise summaries. I’m working toward integrating automatic WhatsApp notification collection and Windows desktop notifications.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4j37v83gmm6t67hpx24p.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F4j37v83gmm6t67hpx24p.png" alt=" " width="800" height="420"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/" rel="noopener noreferrer"&gt;Morning Digest AI&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project uses a simple, modular structure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;app.py&lt;/code&gt; — FastAPI receiver for incoming chat notifications.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;digest.py&lt;/code&gt; — Processes stored messages, calls the local AI model, and generates a summary.&lt;/li&gt;
&lt;li&gt;SQLite — Stores incoming messages and tracks which messages have been summarized.&lt;/li&gt;
&lt;li&gt;Ollama — Runs the language model locally.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;em&gt;Replace the repository link above with your actual project repository before publishing.&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I wanted to explore how far I could get with a small, locally running AI model instead of relying on a paid cloud API.&lt;/p&gt;

&lt;p&gt;My current stack:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Python&lt;/strong&gt; — Core application logic and summarization pipeline.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Qwen3:1.7B&lt;/strong&gt; — Lightweight language model for generating concise summaries.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Ollama&lt;/strong&gt; — Local model inference through its HTTP API.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI&lt;/strong&gt; — Receives incoming messages from a future Android notification bridge.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;SQLite&lt;/strong&gt; — Lightweight local storage for messages and processing status.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Winotify&lt;/strong&gt; — Windows desktop notifications.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The workflow is straightforward:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Collect incoming chat notifications.&lt;/li&gt;
&lt;li&gt;Store messages locally with timestamps.&lt;/li&gt;
&lt;li&gt;Send relevant messages to Qwen3 through Ollama.&lt;/li&gt;
&lt;li&gt;Generate a concise digest highlighting important updates and follow-ups.&lt;/li&gt;
&lt;li&gt;Display the summary as a desktop notification.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I'm starting small and building incrementally: first getting local inference working, then message storage, and finally automatic collection and scheduled delivery.&lt;/p&gt;

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

&lt;p&gt;Open innovation makes projects like this possible for individual developers without requiring expensive infrastructure or proprietary AI subscriptions.&lt;/p&gt;

&lt;p&gt;Using an open-weight model through Ollama gives me control over the model runtime, inference workflow, and application architecture. I can experiment with prompts, adjust the model, and build around my own privacy requirements.&lt;/p&gt;

&lt;p&gt;Local inference also means the summarization step does not need to send message contents to a third-party AI API.&lt;/p&gt;

&lt;p&gt;For a personal productivity tool that handles private conversations, that control matters.&lt;/p&gt;

&lt;p&gt;Open-source frameworks and accessible model runtimes make it possible to build useful AI applications on everyday hardware—not just expensive GPUs or cloud servers.&lt;/p&gt;

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

&lt;p&gt;I'm developing and testing the agent incrementally, validating local inference and the message-processing pipeline before completing the automatic notification bridge.&lt;/p&gt;

&lt;p&gt;I'll add a DevRelay agent session here if I record one during development.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Lazy Payoff
&lt;/h2&gt;

&lt;p&gt;The idea is to eliminate the daily ritual of scrolling through every group chat just to find one important deadline or announcement.&lt;/p&gt;

&lt;p&gt;Instead of manually catching up on dozens of messages, I want a quick morning digest that answers two questions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;What happened?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;What do I need to do next?&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The project is still a work in progress, but the goal is to make staying informed effortless while keeping the workflow lightweight and local.&lt;/p&gt;

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

&lt;p&gt;I'll select the applicable partner categories according to the challenge rules and the integrations included in the final submission.&lt;/p&gt;




&lt;p&gt;Built with Python, Qwen3, Ollama, and a simple idea: let AI handle the scrolling so you don't have to. ☕&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Samjho AI</title>
      <dc:creator>Shourya Shinde</dc:creator>
      <pubDate>Sat, 17 Oct 2026 14:36:46 +0000</pubDate>
      <link>https://dev.to/shourya_shinde_20/samjho-ai-2dah</link>
      <guid>https://dev.to/shourya_shinde_20/samjho-ai-2dah</guid>
      <description>&lt;h1&gt;
  
  
  Samjho AI — Turn Complex Documents into Clear, Actionable Steps
&lt;/h1&gt;

&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week2-2026-10-12"&gt;Hacktoberfest Open-Source AI Challenge Week 2: Side Hustle&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Samjho AI — Understand the information. Know what to do next.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Have you ever received a college circular, scholarship announcement, application form, or government notice and struggled to understand what it actually requires you to do?&lt;/p&gt;

&lt;p&gt;Important information is often buried in lengthy documents, complicated language, eligibility criteria, and confusing instructions. Missing a deadline or misunderstanding a requirement can mean missing an opportunity entirely.&lt;/p&gt;

&lt;p&gt;That's the problem we're solving with &lt;strong&gt;Samjho AI&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Samjho AI is an AI-powered document understanding platform that transforms complex documents into simple explanations and actionable next steps. Instead of making users read through pages of formal language, it helps them understand the information that matters.&lt;/p&gt;

&lt;h3&gt;
  
  
  What can Samjho AI do?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Simplify complex documents:&lt;/strong&gt; Convert formal and complicated language into easy-to-understand explanations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Extract important information:&lt;/strong&gt; Highlight eligibility criteria, deadlines, required documents, and key instructions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Generate actionable next steps:&lt;/strong&gt; Help users understand what they need to do after reading a document.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Support document-based questions:&lt;/strong&gt; Build toward grounded question answering so users can ask questions about the information in their documents.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Who is it for?
&lt;/h3&gt;

&lt;p&gt;Our initial target users are students, particularly those who regularly deal with college notices, scholarship announcements, internship opportunities, and application requirements. The platform could also help job seekers and individuals navigating public notices and administrative paperwork.&lt;/p&gt;

&lt;p&gt;From a side-hustle perspective, Samjho AI could evolve into a freemium product, with basic document explanations available for free and paid plans offering higher usage limits, advanced document analysis, and additional productivity features. These are potential monetization paths, not an existing paid offering.&lt;/p&gt;

&lt;p&gt;Our goal is simple: &lt;strong&gt;make important information easier to understand and easier to act on.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/ShouryaShinde/Hacktoberfest2026_AetherElevateX" rel="noopener noreferrer"&gt;https://github.com/ShouryaShinde/Hacktoberfest2026_AetherElevateX&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend Connection Guide:&lt;/strong&gt; &lt;a href="https://github.com/ShouryaShinde/Hacktoberfest2026_AetherElevateX/blob/main/docs/BACKEND_CONNECTION_GUIDE.md" rel="noopener noreferrer"&gt;https://github.com/ShouryaShinde/Hacktoberfest2026_AetherElevateX/blob/main/docs/BACKEND_CONNECTION_GUIDE.md&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;Explore the complete project repository:&lt;/p&gt;

&lt;p&gt;👉 &lt;a href="https://github.com/ShouryaShinde/Hacktoberfest2026_AetherElevateX" rel="noopener noreferrer"&gt;Samjho AI on GitHub&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project follows a modular frontend-backend architecture:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React + Vite&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Node.js + Express.js&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; MongoDB with Mongoose&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Architecture:&lt;/strong&gt; MVC with a separate service layer&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Validation:&lt;/strong&gt; Zod schemas for structured AI output&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Document processing:&lt;/strong&gt; PDF and text extraction through the backend API&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The repository also includes implementation documentation, an environment configuration template, and a backend integration guide to make collaboration easier.&lt;/p&gt;

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

&lt;p&gt;We built Samjho AI using a React frontend and a Node.js/Express backend, keeping the application modular so that the AI capabilities can evolve independently of the user interface.&lt;/p&gt;

&lt;p&gt;The backend includes request validation, centralized error handling, request IDs, rate limiting, and document upload and extraction support.&lt;/p&gt;

&lt;p&gt;For the AI layer, we implemented a &lt;strong&gt;Gemma inference adapter&lt;/strong&gt; with versioned prompt templates, Zod-based response validation, safe JSON repair, and a mock provider for development and testing.&lt;/p&gt;

&lt;p&gt;The intended workflow is:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The user uploads a document or provides text.&lt;/li&gt;
&lt;li&gt;The backend extracts the document content.&lt;/li&gt;
&lt;li&gt;The AI inference adapter processes the extracted text using a structured prompt.&lt;/li&gt;
&lt;li&gt;The response is validated against the expected JSON schema.&lt;/li&gt;
&lt;li&gt;The frontend presents the result in a format suitable for understanding key information and taking action.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Structured output is particularly important for this project. We don't just want a block of generated text; we want information that the interface can display consistently, such as summaries, deadlines, eligibility requirements, and next steps.&lt;/p&gt;

&lt;p&gt;The project uses a provider-adapter approach so that the inference implementation can be maintained or replaced without redesigning the entire application.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Current development status:&lt;/strong&gt; The API foundation and Gemma provider adapter are implemented, while end-to-end frontend integration is in progress. Grounded Q&amp;amp;A and session functionality are planned next.&lt;/p&gt;

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

&lt;p&gt;Open innovation made it possible for us to build Samjho AI around an adaptable AI architecture rather than locking the application into a single proprietary provider.&lt;/p&gt;

&lt;p&gt;Open-weight models such as Gemma offer developers more flexibility in how they experiment with inference, structure their applications, and choose deployment options. The ability to build a provider abstraction also makes it easier to evaluate alternatives as performance, cost, and infrastructure requirements change.&lt;/p&gt;

&lt;p&gt;For a student-built project, this flexibility matters. We can focus on solving the actual user problem, test different approaches, and keep the backend maintainable without tying every application feature to one model provider.&lt;/p&gt;

&lt;p&gt;Open innovation also encourages collaboration. By maintaining clear API contracts, modular services, and implementation documentation, we can make it easier for other developers to understand the project and contribute improvements.&lt;/p&gt;

&lt;p&gt;For Samjho AI, the broader vision is to make AI-powered document understanding more accessible, adaptable, and useful in everyday situations.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of Gemma&lt;/strong&gt; — Using Gemma 4 for AI-powered document understanding and summarization.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of GitHub Copilot&lt;/strong&gt; — Using GitHub Copilot to assist with development of the Samjho AI application.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Other Technologies Used
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Ollama&lt;/strong&gt; — Used for local model inference and experimentation.&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;Built with the belief that understanding information should never be a barrier to accessing an opportunity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Samjho AI — Understand the information. Know what to do next.&lt;/strong&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>FieldNotes - DEV Challenge Week 1 Hacktoberfest</title>
      <dc:creator>Shourya Shinde</dc:creator>
      <pubDate>Tue, 06 Oct 2026 15:01:33 +0000</pubDate>
      <link>https://dev.to/shourya_shinde_20/fieldnotes-dev-challenge-week-1-hacktoberfest-152o</link>
      <guid>https://dev.to/shourya_shinde_20/fieldnotes-dev-challenge-week-1-hacktoberfest-152o</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;h3&gt;
  
  
  🌿 Field Notes — Trade Scrolling for Noticing
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Field Notes&lt;/strong&gt; is a local-first, AI-powered outdoor mission generator designed to help people spend less time scrolling and more time experiencing the world around them.&lt;/p&gt;

&lt;p&gt;Instead of opening another app and consuming more content, users tell Field Notes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;⚡ How much energy they have — &lt;strong&gt;Slow &amp;amp; Soft, Curious, or Let's Roam&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;🌳 What's nearby — &lt;strong&gt;Anywhere, Park, Streets, or Garden&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;📍 Optionally, something they can see from their door&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Field Notes then uses a locally running open-weight AI model to generate a small, personalized outdoor mission.&lt;/p&gt;

&lt;p&gt;For example:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The Overlooked Corner&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Take the most familiar route near you, but turn once where you normally wouldn't. Find a corner, doorway, tree, or view you've never properly looked at.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Each mission includes:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;A short title&lt;/li&gt;
&lt;li&gt;A practical activity&lt;/li&gt;
&lt;li&gt;An estimated time&lt;/li&gt;
&lt;li&gt;Something to look for&lt;/li&gt;
&lt;li&gt;Something to take away from the experience&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The idea is simple:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The AI shouldn't keep you on the screen. It should give you a reason to leave it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Field Notes is designed for anyone who feels stuck in a scrolling loop, wants a low-pressure break from technology, or simply needs a small reason to step outside.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/ShouryaShinde/FieldNotes?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;ShouryaShinde/FieldNotes&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Project Screenshots:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx08beepu11v2za3tqqmj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fx08beepu11v2za3tqqmj.png" alt="FieldNotesHeroSection" width="800" height="375"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpt0w5qn7e7d1d8cnhdbw.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpt0w5qn7e7d1d8cnhdbw.png" alt="FieldNotesUserInput" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft22gv1w7cmstxvy4tx3f.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ft22gv1w7cmstxvy4tx3f.png" alt="FieldNotesEngineOutput" width="800" height="373"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;The complete project is open source on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ShouryaShinde/FieldNotes?utm_source=chatgpt.com" rel="noopener noreferrer"&gt;Field Notes — GitHub Repository&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project currently uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;HTML&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;li&gt;Vanilla JavaScript&lt;/li&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;Express&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;li&gt;Llama 3.2 3B&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;The original prototype used a hardcoded collection of outdoor missions.&lt;/p&gt;

&lt;p&gt;I changed that architecture so missions are generated dynamically by an &lt;strong&gt;open-weight AI model running locally&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; HTML, CSS, Vanilla JavaScript&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; Node.js + Express&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Runtime:&lt;/strong&gt; Ollama&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Model:&lt;/strong&gt; Llama 3.2 3B&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Communication:&lt;/strong&gt; REST API&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Output:&lt;/strong&gt; Structured JSON&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inference:&lt;/strong&gt; Local&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The architecture is:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;User
  ↓
Field Notes Web UI
  ↓
Vanilla JavaScript
  ↓
POST /api/mission
  ↓
Node.js + Express
  ↓
Ollama
  ↓
Llama 3.2 3B
  ↓
Structured JSON Mission
  ↓
Field Notes UI
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When a user submits their preferences, the browser sends information such as:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"energy"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"medium"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"place"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"park"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"location"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"a quiet lane with two neem trees"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The Express backend constructs a prompt around those preferences and sends it to the local Llama 3.2 3B model through Ollama.&lt;/p&gt;

&lt;p&gt;The model returns structured JSON containing:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"title"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Follow the moving shade"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Walk slowly through the park..."&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"time"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"25 min"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"look"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"Places where sunlight meets shadow"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="nl"&gt;"leave"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"One detail you would normally miss"&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The frontend then renders the generated mission using the existing mission card.&lt;/p&gt;

&lt;p&gt;This means the application no longer depends on a fixed list of missions. Every interaction can produce a new activity based on the user's context.&lt;/p&gt;

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

&lt;p&gt;Open innovation made it possible to build Field Notes around &lt;strong&gt;local AI rather than a closed AI API&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;That matters because the project's entire philosophy is &lt;strong&gt;local-first&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;With a locally running open-weight model:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🔐 User-provided context can stay on the device.&lt;/li&gt;
&lt;li&gt;💸 There are no per-request AI API costs.&lt;/li&gt;
&lt;li&gt;🔑 No proprietary AI API key is required.&lt;/li&gt;
&lt;li&gt;🧪 The model can be replaced and experimented with.&lt;/li&gt;
&lt;li&gt;🛠️ Developers have more control over the AI layer.&lt;/li&gt;
&lt;li&gt;🌱 The application can continue working without depending on a cloud AI provider.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;A closed API could certainly generate outdoor missions. But using an open-weight model changes what is possible.&lt;/p&gt;

&lt;p&gt;The AI doesn't need to be a remote service that users continuously send their information to. It can simply be another component running locally alongside the application.&lt;/p&gt;

&lt;p&gt;That makes the technology fit the purpose of the project:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Use technology to help people disconnect from technology.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;h3&gt;
  
  
  Best Use of GitHub Copilot
&lt;/h3&gt;

&lt;p&gt;GitHub Copilot was used during the initial development of Field Notes to help scaffold the project, implement the initial frontend structure, and iterate on the application's functionality.&lt;/p&gt;

&lt;p&gt;Copilot helped accelerate the transition from the initial concept and UI prototype into a working web application, while the AI mission-generation layer was later implemented using Ollama and Llama 3.2 3B.&lt;/p&gt;

&lt;p&gt;The project is open source and available here:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/ShouryaShinde/FieldNotes" rel="noopener noreferrer"&gt;https://github.com/ShouryaShinde/FieldNotes&lt;/a&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>DEV Challenge 1 Complete - StudyMate</title>
      <dc:creator>Shourya Shinde</dc:creator>
      <pubDate>Sun, 04 Oct 2026 22:01:09 +0000</pubDate>
      <link>https://dev.to/shourya_shinde_20/dev-challenge-1-complete-studymate-4al</link>
      <guid>https://dev.to/shourya_shinde_20/dev-challenge-1-complete-studymate-4al</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;h3&gt;
  
  
  StudyMate — AI-Powered Study Assistant
&lt;/h3&gt;

&lt;p&gt;StudyMate is an AI-powered study companion built for students who spend too much time converting long study material into something they can actually revise.&lt;/p&gt;

&lt;p&gt;I built it with fellow students in mind — especially when exams are approaching and there is a lot of material to go through.&lt;/p&gt;

&lt;p&gt;StudyMate allows a student to paste their study material and automatically generates:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;📝 Concise study notes&lt;/li&gt;
&lt;li&gt;🔑 Important key points&lt;/li&gt;
&lt;li&gt;🧠 AI-generated multiple-choice questions&lt;/li&gt;
&lt;li&gt;✅ Interactive quizzes with instant scoring&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Instead of manually reading through lengthy material and creating revision notes and questions, StudyMate turns the material into a structured revision experience in seconds.&lt;/p&gt;

&lt;h2&gt;
  
  
  Demo
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flravd1vwzoq6kkcnofq4.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Flravd1vwzoq6kkcnofq4.png" alt="Home Page" width="800" height="403"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjj8qrrowqnhdm3v900m5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fjj8qrrowqnhdm3v900m5.png" alt="Summary" width="800" height="399"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5dwyvowi6qjjs4xddqjd.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F5dwyvowi6qjjs4xddqjd.png" alt="Quiz" width="799" height="397"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvikshns8axbdu1oqcx1b.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fvikshns8axbdu1oqcx1b.png" alt="Results" width="800" height="398"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Code
&lt;/h2&gt;

&lt;p&gt;💻 &lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/ShouryaShinde/StudyMate" rel="noopener noreferrer"&gt;https://github.com/ShouryaShinde/StudyMate&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project is organized as a monorepo containing:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;client/&lt;/code&gt; — React + Vite frontend&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;packages/ui/&lt;/code&gt; — Shared shadcn/ui components&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;server/&lt;/code&gt; — Node.js + Express backend&lt;/li&gt;
&lt;li&gt;Ollama integration for local AI inference&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;StudyMate is built around &lt;strong&gt;open-source AI and local inference&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  Tech Stack
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;TypeScript&lt;/li&gt;
&lt;li&gt;Vite&lt;/li&gt;
&lt;li&gt;Tailwind CSS&lt;/li&gt;
&lt;li&gt;shadcn/ui&lt;/li&gt;
&lt;li&gt;React Router&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;Express.js&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;AI Model&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;llama3.2:3b&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The core AI functionality runs through Ollama locally rather than relying on a proprietary hosted AI API.&lt;/p&gt;

&lt;p&gt;When a student submits study material, the frontend sends it to the Express backend:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Student
   ↓
Study Material
   ↓
React Frontend
   ↓
Express API
   ↓
Ollama
   ↓
Llama 3.2 3B
   ↓
Structured JSON
   ↓
Notes + Key Points + Quiz
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



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