<?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: Divyanshi Gupta</title>
    <description>The latest articles on DEV Community by Divyanshi Gupta (@divyanshigupta491).</description>
    <link>https://dev.to/divyanshigupta491</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fthepracticaldev.s3.amazonaws.com%2Fi%2F99mvlsfu5tfj9m7ku25d.png</url>
      <title>DEV Community: Divyanshi Gupta</title>
      <link>https://dev.to/divyanshigupta491</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/divyanshigupta491"/>
    <language>en</language>
    <item>
      <title>BugBounty Hunter: Autonomous AI Forensic Bug Reproduction with Verifiable Proof Packs</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Sat, 24 Oct 2026 15:27:06 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/bugbounty-hunter-autonomous-ai-forensic-bug-reproduction-with-verifiable-proof-packs-cak</link>
      <guid>https://dev.to/divyanshigupta491/bugbounty-hunter-autonomous-ai-forensic-bug-reproduction-with-verifiable-proof-packs-cak</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;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%2Fz19gzdk6bmaeq7vh38m7.jpg" 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%2Fz19gzdk6bmaeq7vh38m7.jpg" alt="BugBounty Hunter Cover Banner" width="800" height="447"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;BugBounty Hunter&lt;/strong&gt; is an autonomous open-source AI forensic investigation platform that transforms vague defect reports into verified pytest reproduction tests, isolated execution trace evidence, and tamper-evident &lt;strong&gt;Proof Packs&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Problem It Solves
&lt;/h3&gt;

&lt;p&gt;Every open-source maintainer and security team knows the pain of receiving vague bug or bounty reports:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;em&gt;"The worker crashes when parsing certain image tags."&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"The payload validator raises unhandled exceptions on edge cases."&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"The API endpoint gives unexpected status codes under load."&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Maintainers usually waste hours setting up clean environments, reverse-engineering the reporter's context, writing pytest boilerplate, and determining whether the claim is legitimate or just a hallucinated exploit report.&lt;/p&gt;

&lt;h3&gt;
  
  
  Who Gets to Be Lazier?
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;Open-source maintainers, bug bounty triagers, and software engineers.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Instead of spending an entire afternoon reproducing issue reports by hand, developers can drop in a GitHub repository URL and the raw issue text. BugBounty Hunter methodically inspects the AST, constructs hypotheses, and synthesizes a verified test inside an isolated sandbox—leaving maintainers with a complete, reproducible &lt;strong&gt;Proof Pack&lt;/strong&gt; with a single click.&lt;/p&gt;


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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Frontend&lt;/strong&gt;: &lt;a href="https://bugbounty-hunter.vercel.app" rel="noopener noreferrer"&gt;https://bugbounty-hunter.vercel.app&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API Documentation&lt;/strong&gt;: &lt;a href="https://bugbounty-api.onrender.com/docs" rel="noopener noreferrer"&gt;https://bugbounty-api.onrender.com/docs&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sample Verified Target&lt;/strong&gt;: Comes with built-in fixture repository (&lt;code&gt;fixtures/sample-buggy-repo&lt;/code&gt;) showcasing automated reproduction of Issue #42 with real execution traces and passing forensic reports.&lt;/li&gt;
&lt;/ul&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/Bugbounty-hunter" rel="noopener noreferrer"&gt;
        Bugbounty-hunter
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;BugBounty Hunter&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Every bug has a story. Every claim needs proof.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;BugBounty Hunter is an open-source AI developer tooling platform that turns vague defect reports into reproducible pytest tests, isolated container execution evidence, and portable, verifiable &lt;strong&gt;Proof Packs&lt;/strong&gt;.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🎯 The Core Philosophy: Investigation, Not Hallucination&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Developers frequently receive incomplete reports like:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;em&gt;"The worker crashes when parsing image tags."&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"The validator raises unhandled errors on certain payloads."&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;"This API endpoint returns wrong results on edge cases."&lt;/em&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Rather than having an LLM guess or hallucinate answers in a chat box, BugBounty Hunter treats defect reproduction as a forensic engineering discipline:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The Reproduction Ladder:&lt;/strong&gt; Escalates from baseline checks to AST inspection, candidate synthesis, and container execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest Verdicts:&lt;/strong&gt; Strictly assigns &lt;code&gt;REPRODUCED&lt;/code&gt;, &lt;code&gt;NOT_REPRODUCED&lt;/code&gt;, or &lt;code&gt;INCONCLUSIVE&lt;/code&gt;. A broken setup or timeout is never reported as bug absence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evidence-First Proof Pack:&lt;/strong&gt; Produces a portable, reproducible archive with the exact test source code…&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/divyanshigupta786/Bugbounty-hunter" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;p&gt;Full source code repository: &lt;a href="https://github.com/divyanshigupta786/Bugbounty-hunter" rel="noopener noreferrer"&gt;https://github.com/divyanshigupta786/Bugbounty-hunter&lt;/a&gt;&lt;/p&gt;




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

&lt;p&gt;BugBounty Hunter is built specifically around the philosophy of &lt;strong&gt;"Slow and Steady"&lt;/strong&gt; investigation rather than fast, hallucinated one-shot answers.&lt;/p&gt;

&lt;h3&gt;
  
  
  Architecture Overview
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js 14 Frontend&lt;/strong&gt;: Interactive dashboard with Three.js visualization, real-time investigation timeline (Reproduction Ladder), interactive test code viewer, and Proof Pack download inspector.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;FastAPI Async Engine&lt;/strong&gt;: Python backend implementing a bounded state machine that guards the forensic workflow.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dual Sandbox Isolation&lt;/strong&gt;: Test candidates execute either in containerized environments (&lt;code&gt;--network none&lt;/code&gt;) or confined subprocesses with purged credentials, strict timeouts (30s), memory limits (512MB), and automated secret redaction.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Open-Source AI Stack
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Open-Weight Code Models via Ollama&lt;/strong&gt;: Powered locally by &lt;code&gt;qwen2.5-coder:7b&lt;/code&gt; for precise code AST understanding and targeted hypothesis formulation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cloud Acceleration&lt;/strong&gt;: Optional Google Gemini integration (&lt;code&gt;gemini-2.5-flash&lt;/code&gt;) for instant hypothesis synthesis while retaining full offline, local capabilities.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The 4-Step Reproduction Ladder&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Step 1: Baseline Verification&lt;/strong&gt;: Validates repository test suite hygiene prior to investigation.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step 2: AST &amp;amp; Target Discovery&lt;/strong&gt;: Pinpoints suspect functions and error signatures.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step 3: Candidate Synthesis&lt;/strong&gt;: Generates isolated pytest reproduction scripts.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Step 4: Disposable Execution&lt;/strong&gt;: Runs candidate code in a network-disabled sandbox and captures exit codes, sanitized tracebacks, and stdout.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest Verdicts&lt;/strong&gt;: The engine strictly assigns &lt;code&gt;REPRODUCED&lt;/code&gt;, &lt;code&gt;NOT_REPRODUCED&lt;/code&gt;, or &lt;code&gt;INCONCLUSIVE&lt;/code&gt;. A failed environment setup or timeout is never mistaken for a bug's absence.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;Open-source AI and open innovation were essential to making BugBounty Hunter possible:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Security &amp;amp; Air-Gapped Codebases&lt;/strong&gt;: Companies and security bounty hunters cannot send confidential, unpatched 0-day vulnerability reports or proprietary codebases to black-box commercial APIs. Running open-weight models (like &lt;code&gt;qwen2.5-coder&lt;/code&gt;) locally via Ollama guarantees that sensitive bug reports and source code never leave the developer's machine.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Reproducibility&lt;/strong&gt;: Closed APIs change their weights and system prompts unannounced, breaking agent determinism. Open-weight models ensure reproducible forensic pipelines where a bug investigation conducted today produces verifiable results months later.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Inspectable Toolchains&lt;/strong&gt;: True security tooling requires an auditable chain of custody. Closed models cannot be verified down to the container execution boundary—open innovation allows every step from AST parsing to unprivileged sandbox execution to be transparent and trustworthy.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hours Saved per Issue&lt;/strong&gt;: Triage time drops from &lt;strong&gt;45–90 minutes&lt;/strong&gt; of manual environment setup, script writing, and verification down to &lt;strong&gt;under 2 minutes&lt;/strong&gt; of automated background execution.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Boilerplate&lt;/strong&gt;: Generates ready-to-merge &lt;code&gt;test_reproduction.py&lt;/code&gt; and &lt;code&gt;replay.sh&lt;/code&gt; scripts directly attached to the output Proof Pack.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Noise Elimination&lt;/strong&gt;: Automatically weeds out bogus or hallucinated bug reports without human intervention, sparing maintainers burnout from low-effort submissions.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Primary&lt;/strong&gt;: Hacktoberfest Open-Source AI Challenge Week 3: Slow and Steady&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Categories&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;Best Use of Open-Source AI / Open-Weight Models (Ollama &amp;amp; Qwen 2.5 Coder)&lt;/li&gt;
&lt;li&gt;Developer Tools &amp;amp; Productivity&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>BatchTrace Agent — AI-Powered Food Traceability &amp; Incident Intelligence Platform</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Sun, 18 Oct 2026 03:45:09 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/batchtrace-agent-ai-powered-food-traceability-incident-intelligence-platform-1afk</link>
      <guid>https://dev.to/divyanshigupta491/batchtrace-agent-ai-powered-food-traceability-incident-intelligence-platform-1afk</guid>
      <description>&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;h1&gt;
  
  
  BatchTrace Agent — AI-Powered Food Traceability &amp;amp; Incident Intelligence Platform
&lt;/h1&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Every batch has a story. Find it instantly."&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;




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

&lt;h3&gt;
  
  
  The Problem
&lt;/h3&gt;

&lt;p&gt;Small and mid-sized food manufacturers, commercial bakeries, packaged-food producers, and craft processors (20–250 employees) face a massive operational nightmare: their supply chain records live in &lt;strong&gt;disconnected silos&lt;/strong&gt;. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Supplier invoices arrive as scanned PDFs.&lt;/li&gt;
&lt;li&gt;Receiving dock manifests sit in paper binders.&lt;/li&gt;
&lt;li&gt;Batch production travelers and mixing records are logged in Excel sheets.&lt;/li&gt;
&lt;li&gt;Customer dispatches and bills of lading are stored in carrier portals.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;When an ingredient supplier issues an urgent quality alert (e.g., &lt;em&gt;"Supplier lot L-204 of Organic Rolled Oats has elevated DON mycotoxins"&lt;/em&gt;), quality assurance (QA) teams spend &lt;strong&gt;48 to 72 hours&lt;/strong&gt; in panic mode digging through spreadsheets to answer three critical questions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;em&gt;Which manufacturing batches consumed this lot?&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Which finished products and packaging runs contain it?&lt;/em&gt;&lt;/li&gt;
&lt;li&gt;&lt;em&gt;Which customer orders, distribution centers, and grocery retailers received affected shipments?&lt;/em&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;A delay in answering these questions can lead to catastrophic public recalls, FDA/USDA warning letters, retail fines, and severe brand damage.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Solution: BatchTrace Agent
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;BatchTrace Agent&lt;/strong&gt; is a full-stack, AI-powered industrial intelligence platform that connects disconnected food manufacturing documents into a deterministic traceability graph, reconciles mass balances, and uses an open-weight AI copilot to guide investigations with 100% grounded evidence.&lt;/p&gt;

&lt;h3&gt;
  
  
  Who Would Pay for It?
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Small to Medium Food &amp;amp; Beverage Producers&lt;/strong&gt;: Commercial bakeries, snack producers, granola &amp;amp; cereal brands, and dairy processors.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Co-packers &amp;amp; Contract Manufacturers&lt;/strong&gt;: Facilities managing dozens of client SKUs requiring rapid audit-readiness.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Food Safety &amp;amp; SQF/BRCGS Compliance Consultants&lt;/strong&gt;: Quality managers who need instant mock-recall compliance reports for annual audits.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Business Model&lt;/strong&gt;: SaaS pricing tiered from &lt;strong&gt;$199/month&lt;/strong&gt; (Starter: 5,000 batches/year) to &lt;strong&gt;$799/month&lt;/strong&gt; (Enterprise: multi-facility, live automated document ingestion, and compliance audit exports).&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Web Application&lt;/strong&gt;: &lt;a href="https://batchtrace-dev-challenge.vercel.app" rel="noopener noreferrer"&gt;https://batchtrace-dev-challenge.vercel.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository&lt;/strong&gt;: &lt;a href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-" rel="noopener noreferrer"&gt;https://github.com/divyanshigupta786/Batchtrace-dev-challenge-&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Live Platform Features You Can Test:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;TraceSphere 3D Interactive WebGL Network&lt;/strong&gt;: A procedural 3D supply chain storytelling environment built with Three.js (&lt;code&gt;@react-three/fiber&lt;/code&gt; &amp;amp; &lt;code&gt;@react-three/drei&lt;/code&gt;) with camera controls and hover inspection.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Interactive Live Trace Simulator&lt;/strong&gt;: Switch between lots (&lt;code&gt;L-204&lt;/code&gt;, &lt;code&gt;L-205&lt;/code&gt;, &lt;code&gt;L-206&lt;/code&gt;) to watch the forward trace pipeline animate in real-time, detecting the synthetic 50 kg mass balance discrepancy.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;2D Operational Traceability Explorer (&lt;code&gt;/app/trace&lt;/code&gt;)&lt;/strong&gt;: Execute forward traces from ingredient lots and backward traces from customer orders (&lt;code&gt;ORD-101&lt;/code&gt;) to primary agricultural suppliers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Side-by-Side Document Review (&lt;code&gt;/app/documents&lt;/code&gt;)&lt;/strong&gt;: Raw invoice and receiving logs previewed side-by-side with coordinate-grounded field extraction (page, row, character offsets) and draft/approve/reject actions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open-Weight AI Investigation Copilot (&lt;code&gt;/app/agent&lt;/code&gt;)&lt;/strong&gt;: Query the agent with natural language; inspect live step-by-step tool execution traces (&lt;code&gt;get_ingredient_lot&lt;/code&gt;, &lt;code&gt;trace_ingredient_lot&lt;/code&gt;, &lt;code&gt;check_quantity_discrepancies&lt;/code&gt;, &lt;code&gt;get_source_evidence&lt;/code&gt;); view evidence chips; and approve proposed human sign-off actions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Printable Audit Dossier (&lt;code&gt;/app/incidents/INC-2026-001&lt;/code&gt;)&lt;/strong&gt;: Audit-ready printable layout (&lt;code&gt;window.print()&lt;/code&gt;) with complete provenance citations.&lt;/li&gt;
&lt;/ol&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-" rel="noopener noreferrer"&gt;
        Batchtrace-dev-challenge-
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;BatchTrace Agent — AI-Powered Food Traceability &amp;amp; Incident Intelligence Platform&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;"Every batch has a story. Find it instantly."&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Explainable, evidence-grounded food supply chain traceability and batch investigation platform designed for food manufacturers, bakeries, and packaged-food producers.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;1. System Overview &amp;amp; Problem Statement&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;When an ingredient supplier issues an alert (e.g. &lt;em&gt;"Supplier lot L-204 has elevated DON mycotoxin levels"&lt;/em&gt;), quality assurance and plant operations teams typically spend hours or days digging through disconnected spreadsheets, PDF invoices, paper traveler sheets, and carrier bills of lading to answer three critical questions:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Which production batches consumed this ingredient lot?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Which finished-product lots and packaging runs were generated?&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Which customer orders, distribution centers, and retailers received affected goods?&lt;/strong&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&lt;strong&gt;BatchTrace Agent&lt;/strong&gt; solves this through a dual-engine architecture:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Relational Engine&lt;/strong&gt;: Serves as the immutable single source of truth. Traverses the graph, enforces mass balances, isolates quantity discrepancies, and computes certainty ratings (&lt;code&gt;CONFIRMED&lt;/code&gt;…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Repository Highlights:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Next.js 16 Full-Stack&lt;/strong&gt;: App Router, React 19, TypeScript strict mode, Tailwind CSS.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Trace Engine&lt;/strong&gt;: Pure deterministic TypeScript engine (&lt;a href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-/blob/main/src/lib/engine/traceabilityEngine.ts" rel="noopener noreferrer"&gt;&lt;code&gt;src/lib/engine/traceabilityEngine.ts&lt;/code&gt;&lt;/a&gt;) and standalone Python engine (&lt;a href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-/blob/main/backend/engine.py" rel="noopener noreferrer"&gt;&lt;code&gt;backend/engine.py&lt;/code&gt;&lt;/a&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database Schema&lt;/strong&gt;: 17 normalized relational tables in &lt;a href="https://github.com/divyanshigupta786/Batchtrace-dev-challenge-/blob/main/supabase/migrations/20261017000000_batchtrace_schema.sql" rel="noopener noreferrer"&gt;&lt;code&gt;supabase/migrations/20261017000000_batchtrace_schema.sql&lt;/code&gt;&lt;/a&gt; with Row Level Security (RLS) policies and B-tree indexes.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;OpenAPI Microservice&lt;/strong&gt;: Python FastAPI backend with Pydantic v2 schemas and unit tests.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automated Test Suite&lt;/strong&gt;: 5 test suites (22 assertions) running with &lt;code&gt;npm test&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;h3&gt;
  
  
  1. Open-Source AI Architecture
&lt;/h3&gt;

&lt;p&gt;At the core of the investigation workspace is the &lt;strong&gt;Qwen2.5/Qwen3&lt;/strong&gt; open-weight model family, run via &lt;strong&gt;Ollama&lt;/strong&gt; for private, on-premise inference and configurable for hosted endpoints.&lt;/p&gt;

&lt;p&gt;Rather than treating the LLM as an unconstrained chatbot that might fabricate customer orders or lot codes, BatchTrace employs a &lt;strong&gt;strictly controlled tool-calling harness&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The AI model operates within a finite set of typed, server-side tools:

&lt;ul&gt;
&lt;li&gt;&lt;code&gt;search_records&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get_ingredient_lot&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;trace_ingredient_lot&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;trace_finished_lot_backward&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;check_quantity_discrepancies&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get_source_evidence&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;prepare_incident_report&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Hallucination Guarantee&lt;/strong&gt;: The relational PostgreSQL database and deterministic traversal engine are the single source of truth. The AI model has no direct SQL write access.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Evidence-Backed Chips&lt;/strong&gt;: Every factual claim generated in the agent's response is tagged with an evidence reference (record ID, document citation, row number).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Graceful Deterministic Fallback&lt;/strong&gt;: If the local Ollama instance or external inference endpoint is offline, the system seamlessly enters &lt;strong&gt;Deterministic Fallback Mode&lt;/strong&gt;, ensuring 100% uptime for plant operators.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Dual-Engine Traceability &amp;amp; Mass Balance Reconciliation
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Forward Traversal&lt;/strong&gt;: Resolves: Supplier → Ingredient Lot (&lt;code&gt;L-204&lt;/code&gt;) → Batches (&lt;code&gt;PB-031&lt;/code&gt;, &lt;code&gt;PB-032&lt;/code&gt;) → Finished Lots (&lt;code&gt;FP-101&lt;/code&gt;, &lt;code&gt;FP-102&lt;/code&gt;) → Retail Orders (&lt;code&gt;ORD-101&lt;/code&gt; to &lt;code&gt;ORD-107&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backward Traversal&lt;/strong&gt;: Resolves from any downstream customer delivery back to the master production batch, all consumed raw ingredients, and agricultural growers.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Mass Balance Audit&lt;/strong&gt;: Automatically compares received inventory against recorded production consumption. For example, Lot &lt;code&gt;L-204&lt;/code&gt; received 1,200 kg, but production logged 800 kg in &lt;code&gt;PB-031&lt;/code&gt; and 450 kg in &lt;code&gt;PB-032&lt;/code&gt; (1,250 kg total), immediately flagging an intentional &lt;strong&gt;-50 kg discrepancy&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Certainty System&lt;/strong&gt;: Explicitly labels every relationship as &lt;code&gt;CONFIRMED&lt;/code&gt; (backed by approved signed traveler sheets), &lt;code&gt;POSSIBLE&lt;/code&gt; (suggested by matching rules but pending QA review), or &lt;code&gt;UNKNOWN&lt;/code&gt; (missing records).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Frontend &amp;amp; Visual Design System
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Curated Industrial Palette&lt;/strong&gt;: Forest Green (&lt;code&gt;#173D32&lt;/code&gt;), Deep Forest (&lt;code&gt;#102C25&lt;/code&gt;), Warm Ivory (&lt;code&gt;#F7F6F0&lt;/code&gt;), Soft Sage (&lt;code&gt;#DCE8DF&lt;/code&gt;), Signal Amber (&lt;code&gt;#E9A23B&lt;/code&gt;), and Risk Red (&lt;code&gt;#B94343&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Motion &amp;amp; Scrolling&lt;/strong&gt;: &lt;strong&gt;Lenis&lt;/strong&gt; momentum wheel scrolling paired with &lt;strong&gt;Anime.js v4&lt;/strong&gt; procedural SVG supply chain path drawing and &lt;strong&gt;Framer Motion&lt;/strong&gt; micro-interactions.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;TraceSphere 3D Experience&lt;/strong&gt;: Restrained procedural WebGL node network using Three.js and &lt;code&gt;@react-three/drei&lt;/code&gt; with camera-facing Billboards and SDF Text.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;Food supply chain and batch execution data represents some of the most &lt;strong&gt;confidential commercial intellectual property&lt;/strong&gt; a manufacturer possesses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Proprietary recipe ratios and ingredient formulations.&lt;/li&gt;
&lt;li&gt;Supplier pricing, volume discounts, and vendor identities.&lt;/li&gt;
&lt;li&gt;Yield efficiency metrics, scrap rates, and operating margins.&lt;/li&gt;
&lt;li&gt;Customer delivery volumes, retailer distribution networks, and packaging agreements.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Why Closed APIs Fail This Use Case:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Data Sovereignty &amp;amp; Trade Secrets&lt;/strong&gt;: Mid-sized food manufacturers cannot stream proprietary formulation logs and internal supplier invoices to closed, third-party proprietary API clouds where terms of service permit telemetry logging or training.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Air-Gapped &amp;amp; Edge Plant Readiness&lt;/strong&gt;: Food processing facilities and grain elevators are often located in rural areas with intermittent connectivity. Open-weight models like Qwen running on local hardware via Ollama allow food safety software to run entirely on-premise without internet dependency.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Auditability &amp;amp; Explainability&lt;/strong&gt;: Regulatory bodies (FDA, CFIA, EFSA) do not accept &lt;em&gt;"the cloud AI said so"&lt;/em&gt; during a product recall audit. Open-source models paired with deterministic relational constraints provide verifiable, reproducible, and legally defensible recall dossiers.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Open innovation makes it possible to build enterprise-grade intelligence that respects user ownership, guarantees privacy, and delivers reliable decision-support software.&lt;/p&gt;




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

&lt;p&gt;This complete hackathon MVP was designed, planned, developed, tested, and deployed with &lt;strong&gt;Google Antigravity&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Autonomous generation of the 17-table PostgreSQL Supabase schema with Row-Level Security.&lt;/li&gt;
&lt;li&gt;Development of the dual TypeScript and Python deterministic traceability engines.&lt;/li&gt;
&lt;li&gt;Construction of the React 19 / Next.js 16 frontend with Three.js WebGL canvas and Lenis momentum scrolling.&lt;/li&gt;
&lt;li&gt;Implementation of the controlled open-weight model adapter with bounded tool calling.&lt;/li&gt;
&lt;li&gt;Automated end-to-end verification passing all 5 test suites (22 assertions) with &lt;code&gt;npm test&lt;/code&gt; and &lt;code&gt;python backend/test_backend.py&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  My First User
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Persona: Elena Rostova, Quality Assurance Manager at Meadow Pantry Products Inc.
&lt;/h3&gt;

&lt;p&gt;We ran an end-to-end simulation using the synthetic dataset for &lt;strong&gt;Meadow Pantry Products Inc.&lt;/strong&gt;, a mid-sized organic granola and snack producer.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Test Scenario:&lt;/strong&gt;&lt;br&gt;
Elena received a formal notification from &lt;em&gt;Greenfield Ingredients Co.&lt;/em&gt; flagging &lt;strong&gt;Lot L-204&lt;/strong&gt; of Organic Rolled Oats due to an elevated DON mycotoxin advisory.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Elena's Feedback:&lt;/strong&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"Usually, when an alert like this arrives at 4:30 PM on a Friday, our QA team has to stay until midnight pulling physical batch folders, matching PO numbers in QuickBooks, and calling cold-storage logistics to see where pallets ended up. With BatchTrace, we pasted the lot code, and within 3 seconds it showed both granola batches (PB-031 and PB-032), flagged the 50 kg over-consumption, identified the 5 affected grocery orders (Whole Foods, FreshDirect, Trader Joe's), and drafted an incident report with exact document references. This transforms a multi-day panic into a 5-minute verified response."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Best Open-Source AI Project&lt;/strong&gt; (leveraging Qwen open-weight models via Ollama with controlled tool-calling and zero-hallucination deterministic grounding)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Side Hustle / Commercial Viability&lt;/strong&gt; (high-value, B2B compliance-critical SaaS targeted at small-to-medium food manufacturers)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Developer Experience / Documentation&lt;/strong&gt; (full OpenAPI specs, 17-table relational migration, complete test suites, and 1-click deployment blueprints)&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;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Mundane — Your City Is More Interesting Than You Think (Offline Urban Field Journal)</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Mon, 12 Oct 2026 06:57:57 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/mundane-your-city-is-more-interesting-than-you-think-offline-urban-field-journal-1297</link>
      <guid>https://dev.to/divyanshigupta491/mundane-your-city-is-more-interesting-than-you-think-offline-urban-field-journal-1297</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;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.unsplash.com%2Fphoto-1518495973542-4542c06a5843%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" 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%2Fimages.unsplash.com%2Fphoto-1518495973542-4542c06a5843%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" alt="Mundane Cover — The Overlooked City" width="800" height="1200"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Tagline:&lt;/strong&gt; &lt;em&gt;“Your city is more interesting than you think.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Most modern AI applications do the exact opposite of getting you outside: they trap you in infinite chat windows, summarize experiences you never had, and replace genuine human curiosity with pre-digested answers.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;Mundane&lt;/strong&gt; as an antidote: a tactile, editorial urban field journal inspired by documentary photography and independent print zines. It invites you to step outside, slow down, put your phone in your pocket, and record the subtle, overlooked textures, geometries, and artifacts of your everyday neighborhood.&lt;/p&gt;




&lt;h3&gt;
  
  
  The Defining Principle: Blind First, AI Second
&lt;/h3&gt;

&lt;p&gt;Mundane is governed by a strict philosophy: &lt;strong&gt;AI never interprets before you observe.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Observe&lt;/strong&gt;: Pick an observational quest (e.g., &lt;em&gt;Pattern Hunt&lt;/em&gt;, &lt;em&gt;Urban Archaeology&lt;/em&gt;, &lt;em&gt;Design Detective&lt;/em&gt;, &lt;em&gt;Light and Shadow&lt;/em&gt;, or &lt;em&gt;Unexpected Geometry&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Record&lt;/strong&gt;: Register your physical observations in your own unfiltered words. Attach an optional photo. Everything is stored locally on-device in &lt;strong&gt;IndexedDB&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reflect (Optional &amp;amp; Grounded)&lt;/strong&gt;: Only after your observation is saved can you request an AI reflection. The model reflects strictly on what you documented, synthesizes your field note, asks &lt;strong&gt;one&lt;/strong&gt; thought-provoking follow-up question, and recommends your next urban walk.&lt;/li&gt;
&lt;/ol&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%2Fimages.unsplash.com%2Fphoto-1513694203232-719a280e022f%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" 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%2Fimages.unsplash.com%2Fphoto-1513694203232-719a280e022f%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" alt="Raking Shadows and Everyday Geometries" width="1200" height="801"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  The Mundane Field Folio Studio (Zero-Screen Immersion)
&lt;/h3&gt;

&lt;p&gt;To achieve true digital detox, Mundane features the &lt;strong&gt;Field Folio Studio&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;8-Page Pocket Mini-Zine&lt;/strong&gt;: An algorithmic imposition engine formats an entire 8-page observation booklet onto a &lt;strong&gt;single sheet of A4 paper&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No Glue Required&lt;/strong&gt;: Three simple creases and one center slit transform the printed sheet into an authentic pocket zine complete with cover art, observation checklist, sketching frame, and notes log.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Single-Page Worksheet&lt;/strong&gt;: Printable A4 field notes sheet for clipboards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;3D Digital Folio Viewer&lt;/strong&gt;: An interactive book-opening simulator featuring authentic paper folds, spine gutter shading, and tactile page-turning controls.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Application:&lt;/strong&gt; &lt;a href="https://dev-challenge-2-ten.vercel.app" rel="noopener noreferrer"&gt;https://dev-challenge-2-ten.vercel.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API &amp;amp; Backend:&lt;/strong&gt; &lt;a href="https://dev-challenge-2-production.up.railway.app" rel="noopener noreferrer"&gt;https://dev-challenge-2-production.up.railway.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;https://github.com/divyanshigupta786/dev-challenge-2&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Highlights to Try Out:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The Hero Carousel (&lt;code&gt;/&lt;/code&gt;):&lt;/strong&gt; Explore the 4 rotating photographic scenarios with hover-pause and manual &lt;code&gt;&amp;lt; &amp;gt;&lt;/code&gt; slides. Tap the hand-drawn observation circle to discover hidden urban clues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The 3D Booklet Preview (&lt;code&gt;/&lt;/code&gt; &amp;amp; &lt;code&gt;/folio&lt;/code&gt;):&lt;/strong&gt; Toggle the &lt;em&gt;"Fold Booklet / Open Booklet"&lt;/em&gt; animation to see the pocket zine open flat in 3D perspective.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Printable Folio (&lt;code&gt;/folio&lt;/code&gt;):&lt;/strong&gt; Click &lt;em&gt;"Print Booklet (A4)"&lt;/em&gt; to trigger the pre-configured print stylesheet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Journal (&lt;code&gt;/journal&lt;/code&gt;):&lt;/strong&gt; Browse, search, and edit past entries with zero internet connection.&lt;/li&gt;
&lt;/ol&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;
        dev-challenge-2
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;Mundane&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Your city is more interesting than you think.&lt;/strong&gt;
Built for Hacktoberfest Dev Challenge 2: &lt;em&gt;"Touch Grass"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mundane is a local-first AI field journal designed to help you slow down, explore the overlooked corners of your everyday city, and register physical observations before consulting artificial intelligence.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🌿 Core Tenets&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Blind First, AI Second&lt;/strong&gt;: You must look and write first. The AI reflection stays locked until your own field observation is recorded.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local-First &amp;amp; Private&lt;/strong&gt;: Observations and photos remain stored on your machine in IndexedDB. No forced cloud accounts, tracking, or telemetry.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest AI&lt;/strong&gt;: Clear real-time status reporting against your local Ollama runtime (&lt;code&gt;gemma3:4b&lt;/code&gt;). No fake responses or mocked status badges.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Urban Field Notebook Aesthetic&lt;/strong&gt;: Tailored typography (Newsreader serif headings, DM Sans body) with concrete paper tones and natural mineral accents (oxide, weathered stone, dust, patina).&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧭 Screen Tour&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Today&lt;/strong&gt;: Daily rotating observation quest…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Architectural Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React 19, TypeScript, Vite, Tailwind CSS, Lucide Icons, &lt;code&gt;motion/react&lt;/code&gt; (Framer Motion).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Storage Engine:&lt;/strong&gt; Dexie.js (IndexedDB) for client-side privacy and offline persistence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend Service:&lt;/strong&gt; FastAPI, Pydantic v2 Settings, HTTPX, Uvicorn, Docker.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Runtimes:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Offline Inference:&lt;/strong&gt; Ollama integration (&lt;code&gt;gemma3:4b&lt;/code&gt; / &lt;code&gt;llama3.2:3b&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fast Cloud Inference:&lt;/strong&gt; Groq open-weight provider (&lt;code&gt;qwen/qwen3.8-27b&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment:&lt;/strong&gt; Containerized on Railway (backend) and Vercel CDN (frontend).&lt;/li&gt;
&lt;/ul&gt;




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

&lt;h3&gt;
  
  
  1. Open-Weight AI Architecture
&lt;/h3&gt;

&lt;p&gt;Mundane is built around open-weight models:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Offline Inference with Ollama:&lt;/strong&gt; When walking through parks or subways with no reception, users can run open-weight models completely offline on &lt;code&gt;http://localhost:11434&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;High-Speed Cloud Inference with Groq:&lt;/strong&gt; In the cloud deployment, Mundane connects to open-weight models like &lt;code&gt;qwen/qwen3.8-27b&lt;/code&gt; via Groq, delivering sub-second latency with zero cold-start delay.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Strict Grounding Prompt Engineering
&lt;/h3&gt;

&lt;p&gt;Commercial chatbots often hallucinate what you "probably saw". Mundane uses an isolated prompt engine (&lt;code&gt;prompt_service.py&lt;/code&gt;) with strict negative constraints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Must reflect &lt;strong&gt;only&lt;/strong&gt; on details explicitly mentioned in the user's field note.&lt;/li&gt;
&lt;li&gt;Never flatters or praises artificially.&lt;/li&gt;
&lt;li&gt;Concludes with exactly &lt;strong&gt;one&lt;/strong&gt; grounded question that challenges the user to return to the physical location and look closer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Mathematical Mini-Zine Imposition
&lt;/h3&gt;

&lt;p&gt;Fitting 8 pages onto a single A4 landscape sheet requires precise geometric inversion:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The top 4 panels (Pages 1, 8, 7, 6) are rotated &lt;strong&gt;180 degrees&lt;/strong&gt; so they face right-side-up once the paper is folded horizontally.&lt;/li&gt;
&lt;li&gt;Bottom panels (Pages 2, 3, 4, 5) remain upright.&lt;/li&gt;
&lt;li&gt;Fold and cut guides are calibrated to ISO 216 dimensions (&lt;code&gt;210mm × 297mm&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Local-First Privacy Sovereignty
&lt;/h3&gt;

&lt;p&gt;All entries, timestamps, and camera photo blobs reside in browser IndexedDB. Zero tracking cookies, zero external analytics, and zero required account sign-ups.&lt;/p&gt;




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

&lt;p&gt;Open innovation is fundamental to why this project works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Human Sovereignty &amp;amp; Privacy&lt;/strong&gt;: Personal thoughts recorded during solitary walks should never be monetized, profiled, or ingested by closed AI corporations to train ad-targeting models. Open innovation ensures that local-first, on-device computing remains viable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;True Digital Detox &amp;amp; Off-Grid Independence&lt;/strong&gt;: Closed AI APIs demand constant connectivity. Open-weight models empower you to disconnect your Wi-Fi, turn off cellular data, step into nature or quiet city alleys, and still enjoy an intelligent companion that respects your focus.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grounded Reflection Over Engagement Optimization&lt;/strong&gt;: Proprietary consumer AI models are optimized to keep users chatting for as long as possible. Open-source models allowed us to craft a focused system whose primary mission is to get you off the screen and back into the world.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This application was engineered using agentic AI pair programming:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Implemented and verified the mathematical Field Folio booklet imposition.&lt;/li&gt;
&lt;li&gt;Polished the responsive editorial design system (&lt;code&gt;Instrument Serif&lt;/code&gt;, &lt;code&gt;Newsreader&lt;/code&gt;, &lt;code&gt;Caveat&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Containerized the FastAPI backend with multi-stage Docker and verified 10/10 passing unit tests.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Touch Grass&lt;/strong&gt; (Primary) — Built entirely to break screen fatigue, inspire real-world urban exploration, and enable zero-screen observations via printable 8-page pocket booklets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open Innovation&lt;/strong&gt; — Centered on open-weight inference (Ollama local inference and Groq open-weight models), transparent grounding prompts, and local-first data architecture.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Community Discussion &amp;amp; Feedback 💬
&lt;/h2&gt;

&lt;p&gt;I wrote Mundane because I found myself constantly looking down at my phone during walks instead of noticing the incredible architectural history, moss patterns, and transient light in my own city.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have you ever noticed a tiny detail on your daily commute that you had walked past for years?&lt;/li&gt;
&lt;li&gt;Would you print out a pocket zine like the Field Folio, or do you prefer logging notes digitally?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Drop your thoughts and questions in the comments below — I would love to hear how you explore your city!&lt;/strong&gt; 🌿&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>opensource</category>
      <category>ai</category>
    </item>
    <item>
      <title>Mundane — Your City Is More Interesting Than You Think (Offline Urban Field Journal)</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Mon, 12 Oct 2026 06:48:43 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/mundane-your-city-is-more-interesting-than-you-think-offline-urban-field-journal-1mk7</link>
      <guid>https://dev.to/divyanshigupta491/mundane-your-city-is-more-interesting-than-you-think-offline-urban-field-journal-1mk7</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;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fimages.unsplash.com%2Fphoto-1518495973542-4542c06a5843%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" 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%2Fimages.unsplash.com%2Fphoto-1518495973542-4542c06a5843%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" alt="Mundane Cover — The Overlooked City" width="800" height="1200"&gt;&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Tagline:&lt;/strong&gt; &lt;em&gt;“Your city is more interesting than you think.”&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Most modern AI applications do the exact opposite of getting you outside: they trap you in infinite chat windows, summarize experiences you never had, and replace genuine human curiosity with pre-digested answers.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;Mundane&lt;/strong&gt; as an antidote: a tactile, editorial urban field journal inspired by documentary photography and independent print zines. It invites you to step outside, slow down, put your phone in your pocket, and record the subtle, overlooked textures, geometries, and artifacts of your everyday neighborhood.&lt;/p&gt;




&lt;h3&gt;
  
  
  The Defining Principle: Blind First, AI Second
&lt;/h3&gt;

&lt;p&gt;Mundane is governed by a strict philosophy: &lt;strong&gt;AI never interprets before you observe.&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Observe&lt;/strong&gt;: Pick an observational quest (e.g., &lt;em&gt;Pattern Hunt&lt;/em&gt;, &lt;em&gt;Urban Archaeology&lt;/em&gt;, &lt;em&gt;Design Detective&lt;/em&gt;, &lt;em&gt;Light and Shadow&lt;/em&gt;, or &lt;em&gt;Unexpected Geometry&lt;/em&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Record&lt;/strong&gt;: Register your physical observations in your own unfiltered words. Attach an optional photo. Everything is stored locally on-device in &lt;strong&gt;IndexedDB&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reflect (Optional &amp;amp; Grounded)&lt;/strong&gt;: Only after your observation is saved can you request an AI reflection. The model reflects strictly on what you documented, synthesizes your field note, asks &lt;strong&gt;one&lt;/strong&gt; thought-provoking follow-up question, and recommends your next urban walk.&lt;/li&gt;
&lt;/ol&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%2Fimages.unsplash.com%2Fphoto-1513694203232-719a280e022f%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" 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%2Fimages.unsplash.com%2Fphoto-1513694203232-719a280e022f%3Fauto%3Dformat%26fit%3Dcrop%26w%3D1200%26q%3D80" alt="Raking Shadows and Everyday Geometries" width="1200" height="801"&gt;&lt;/a&gt;&lt;/p&gt;




&lt;h3&gt;
  
  
  The Mundane Field Folio Studio (Zero-Screen Immersion)
&lt;/h3&gt;

&lt;p&gt;To achieve true digital detox, Mundane features the &lt;strong&gt;Field Folio Studio&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;8-Page Pocket Mini-Zine&lt;/strong&gt;: An algorithmic imposition engine formats an entire 8-page observation booklet onto a &lt;strong&gt;single sheet of A4 paper&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;No Glue Required&lt;/strong&gt;: Three simple creases and one center slit transform the printed sheet into an authentic pocket zine complete with cover art, observation checklist, sketching frame, and notes log.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Single-Page Worksheet&lt;/strong&gt;: Printable A4 field notes sheet for clipboards.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;3D Digital Folio Viewer&lt;/strong&gt;: An interactive book-opening simulator featuring authentic paper folds, spine gutter shading, and tactile page-turning controls.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Application:&lt;/strong&gt; &lt;a href="https://dev-challenge-2-ten.vercel.app" rel="noopener noreferrer"&gt;https://dev-challenge-2-ten.vercel.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;API &amp;amp; Backend:&lt;/strong&gt; &lt;a href="https://dev-challenge-2-production.up.railway.app" rel="noopener noreferrer"&gt;https://dev-challenge-2-production.up.railway.app&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;GitHub Repository:&lt;/strong&gt; &lt;a href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;https://github.com/divyanshigupta786/dev-challenge-2&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  Highlights to Try Out:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;The Hero Carousel (&lt;code&gt;/&lt;/code&gt;):&lt;/strong&gt; Explore the 4 rotating photographic scenarios with hover-pause and manual &lt;code&gt;&amp;lt; &amp;gt;&lt;/code&gt; slides. Tap the hand-drawn observation circle to discover hidden urban clues.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;The 3D Booklet Preview (&lt;code&gt;/&lt;/code&gt; &amp;amp; &lt;code&gt;/folio&lt;/code&gt;):&lt;/strong&gt; Toggle the &lt;em&gt;"Fold Booklet / Open Booklet"&lt;/em&gt; animation to see the pocket zine open flat in 3D perspective.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Printable Folio (&lt;code&gt;/folio&lt;/code&gt;):&lt;/strong&gt; Click &lt;em&gt;"Print Booklet (A4)"&lt;/em&gt; to trigger the pre-configured print stylesheet.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Journal (&lt;code&gt;/journal&lt;/code&gt;):&lt;/strong&gt; Browse, search, and edit past entries with zero internet connection.&lt;/li&gt;
&lt;/ol&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;
        dev-challenge-2
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;Mundane&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Your city is more interesting than you think.&lt;/strong&gt;
Built for Hacktoberfest Dev Challenge 2: &lt;em&gt;"Touch Grass"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mundane is a local-first AI field journal designed to help you slow down, explore the overlooked corners of your everyday city, and register physical observations before consulting artificial intelligence.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🌿 Core Tenets&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Blind First, AI Second&lt;/strong&gt;: You must look and write first. The AI reflection stays locked until your own field observation is recorded.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local-First &amp;amp; Private&lt;/strong&gt;: Observations and photos remain stored on your machine in IndexedDB. No forced cloud accounts, tracking, or telemetry.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Honest AI&lt;/strong&gt;: Clear real-time status reporting against your local Ollama runtime (&lt;code&gt;gemma3:4b&lt;/code&gt;). No fake responses or mocked status badges.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Urban Field Notebook Aesthetic&lt;/strong&gt;: Tailored typography (Newsreader serif headings, DM Sans body) with concrete paper tones and natural mineral accents (oxide, weathered stone, dust, patina).&lt;/li&gt;
&lt;/ol&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;🧭 Screen Tour&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Today&lt;/strong&gt;: Daily rotating observation quest…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/divyanshigupta786/dev-challenge-2" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Architectural Stack
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React 19, TypeScript, Vite, Tailwind CSS, Lucide Icons, &lt;code&gt;motion/react&lt;/code&gt; (Framer Motion).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Storage Engine:&lt;/strong&gt; Dexie.js (IndexedDB) for client-side privacy and offline persistence.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend Service:&lt;/strong&gt; FastAPI, Pydantic v2 Settings, HTTPX, Uvicorn, Docker.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI Runtimes:&lt;/strong&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Offline Inference:&lt;/strong&gt; Ollama integration (&lt;code&gt;gemma3:4b&lt;/code&gt; / &lt;code&gt;llama3.2:3b&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fast Cloud Inference:&lt;/strong&gt; Groq open-weight provider (&lt;code&gt;qwen/qwen3.8-27b&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deployment:&lt;/strong&gt; Containerized on Railway (backend) and Vercel CDN (frontend).&lt;/li&gt;
&lt;/ul&gt;




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

&lt;h3&gt;
  
  
  1. Open-Weight AI Architecture
&lt;/h3&gt;

&lt;p&gt;Mundane is built around open-weight models:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Local Offline Inference with Ollama:&lt;/strong&gt; When walking through parks or subways with no reception, users can run open-weight models completely offline on &lt;code&gt;http://localhost:11434&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;High-Speed Cloud Inference with Groq:&lt;/strong&gt; In the cloud deployment, Mundane connects to open-weight models like &lt;code&gt;qwen/qwen3.8-27b&lt;/code&gt; via Groq, delivering sub-second latency with zero cold-start delay.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. Strict Grounding Prompt Engineering
&lt;/h3&gt;

&lt;p&gt;Commercial chatbots often hallucinate what you "probably saw". Mundane uses an isolated prompt engine (&lt;code&gt;prompt_service.py&lt;/code&gt;) with strict negative constraints:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Must reflect &lt;strong&gt;only&lt;/strong&gt; on details explicitly mentioned in the user's field note.&lt;/li&gt;
&lt;li&gt;Never flatters or praises artificially.&lt;/li&gt;
&lt;li&gt;Concludes with exactly &lt;strong&gt;one&lt;/strong&gt; grounded question that challenges the user to return to the physical location and look closer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. Mathematical Mini-Zine Imposition
&lt;/h3&gt;

&lt;p&gt;Fitting 8 pages onto a single A4 landscape sheet requires precise geometric inversion:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The top 4 panels (Pages 1, 8, 7, 6) are rotated &lt;strong&gt;180 degrees&lt;/strong&gt; so they face right-side-up once the paper is folded horizontally.&lt;/li&gt;
&lt;li&gt;Bottom panels (Pages 2, 3, 4, 5) remain upright.&lt;/li&gt;
&lt;li&gt;Fold and cut guides are calibrated to ISO 216 dimensions (&lt;code&gt;210mm × 297mm&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. Local-First Privacy Sovereignty
&lt;/h3&gt;

&lt;p&gt;All entries, timestamps, and camera photo blobs reside in browser IndexedDB. Zero tracking cookies, zero external analytics, and zero required account sign-ups.&lt;/p&gt;




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

&lt;p&gt;Open innovation is fundamental to why this project works:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Human Sovereignty &amp;amp; Privacy&lt;/strong&gt;: Personal thoughts recorded during solitary walks should never be monetized, profiled, or ingested by closed AI corporations to train ad-targeting models. Open innovation ensures that local-first, on-device computing remains viable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;True Digital Detox &amp;amp; Off-Grid Independence&lt;/strong&gt;: Closed AI APIs demand constant connectivity. Open-weight models empower you to disconnect your Wi-Fi, turn off cellular data, step into nature or quiet city alleys, and still enjoy an intelligent companion that respects your focus.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Grounded Reflection Over Engagement Optimization&lt;/strong&gt;: Proprietary consumer AI models are optimized to keep users chatting for as long as possible. Open-source models allowed us to craft a focused system whose primary mission is to get you off the screen and back into the world.&lt;/li&gt;
&lt;/ol&gt;




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

&lt;p&gt;This application was engineered using agentic AI pair programming:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Implemented and verified the mathematical Field Folio booklet imposition.&lt;/li&gt;
&lt;li&gt;Polished the responsive editorial design system (&lt;code&gt;Instrument Serif&lt;/code&gt;, &lt;code&gt;Newsreader&lt;/code&gt;, &lt;code&gt;Caveat&lt;/code&gt;).&lt;/li&gt;
&lt;li&gt;Containerized the FastAPI backend with multi-stage Docker and verified 10/10 passing unit tests.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Touch Grass&lt;/strong&gt; (Primary) — Built entirely to break screen fatigue, inspire real-world urban exploration, and enable zero-screen observations via printable 8-page pocket booklets.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open Innovation&lt;/strong&gt; — Centered on open-weight inference (Ollama local inference and Groq open-weight models), transparent grounding prompts, and local-first data architecture.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Community Discussion &amp;amp; Feedback 💬
&lt;/h2&gt;

&lt;p&gt;I wrote Mundane because I found myself constantly looking down at my phone during walks instead of noticing the incredible architectural history, moss patterns, and transient light in my own city.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Have you ever noticed a tiny detail on your daily commute that you had walked past for years?&lt;/li&gt;
&lt;li&gt;Would you print out a pocket zine like the Field Folio, or do you prefer logging notes digitally?&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Drop your thoughts and questions in the comments below — I would love to hear how you explore your city!&lt;/strong&gt; 🌿&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>opensource</category>
      <category>ai</category>
    </item>
    <item>
      <title>AcadFlow — I Built an AI Academic Operating System for My Friend Who Drowns in Deadlines Every Semester</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Sun, 04 Oct 2026 14:58:54 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/acadflow-i-built-an-ai-academic-operating-system-for-my-friend-who-drowns-in-deadlines-every-7h6</link>
      <guid>https://dev.to/divyanshigupta491/acadflow-i-built-an-ai-academic-operating-system-for-my-friend-who-drowns-in-deadlines-every-7h6</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;My closest friend, Priya, is a third-year Computer Science student. Every semester, she drowns in the same chaos — missed assignment notifications buried in WhatsApp groups, half-remembered quiz dates, and study plans that collapse the moment a professor reschedules a lab.&lt;/p&gt;

&lt;p&gt;She does not lack information. She has &lt;em&gt;too much&lt;/em&gt;, scattered across five apps, three portals, and a camera roll full of screenshots.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;AcadFlow&lt;/strong&gt; — an AI Academic Operating System that solves exactly this problem. Instead of another generic planner or a ChatGPT wrapper that confidently invents fake deadlines, AcadFlow is a &lt;strong&gt;deterministic planning engine with open-source AI assistance&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  What it does:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Academic Inbox&lt;/strong&gt;: Paste raw WhatsApp announcements, upload syllabus PDFs, or voice-dictate assignment requirements. Open-source LLMs extract structured tasks, courses, and deadlines.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero-Hallucination Priority Engine&lt;/strong&gt;: Every task gets a mathematically computed priority score (RED / ORANGE / YELLOW / GREEN). If a deadline is not explicitly stated, it stays &lt;code&gt;null&lt;/code&gt; — the system never invents one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Daily Planner&lt;/strong&gt;: Generates focus blocks within a customizable study-hour budget, with cognitive breaks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Adaptive Replanning&lt;/strong&gt; &lt;em&gt;(Signature Feature)&lt;/em&gt;: When Priya reports "I only finished 45 minutes of DBMS instead of 90", AcadFlow recalculates the entire schedule — safely shifting low-priority tasks to tomorrow while preserving imminent exam revision. It explains its trade-offs in plain language.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Base (RAG)&lt;/strong&gt;: Upload lecture notes and study guides. Ask questions grounded in actual indexed documents with source citations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Workload Analytics&lt;/strong&gt;: Tracks completion rates and learns that Priya consistently takes 30% longer on programming assignments, automatically adjusting future estimates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goals &amp;amp; Projects&lt;/strong&gt;: Long-term milestone tracking and collaborative project management with AI blocker warnings.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;&lt;strong&gt;Live Frontend (Vercel)&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://acadflow-devchallenge1.vercel.app" rel="noopener noreferrer"&gt;https://acadflow-devchallenge1.vercel.app&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;GitHub Pages (Landing Showcase)&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://divyanshigupta786.github.io/Acadflow-devchallenge1/" rel="noopener noreferrer"&gt;https://divyanshigupta786.github.io/Acadflow-devchallenge1/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Try the Pre-loaded Demo Student Account:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Email&lt;/strong&gt;: &lt;code&gt;demo@acadflow.dev&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Password&lt;/strong&gt;: &lt;code&gt;demo123&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pre-loaded with 5 real CS courses, 12 realistic tasks, an active daily schedule, indexed study documents, and a collaborative AI project — ready to explore immediately.&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/Acadflow-devchallenge1" rel="noopener noreferrer"&gt;
        Acadflow-devchallenge1
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;AcadFlow — AI-Powered Academic Operating System&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;From academic chaos to clarity.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;AcadFlow is a production-quality, open-source AI academic productivity and planning platform. Designed for college and university students managing multiple courses, assignments, exams, projects, and extracurriculars, AcadFlow transforms fragmented academic information into an adaptive, personalized action plan.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;1. Product Philosophy: Not Another Chatbot&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Students do not have a lack of academic information; they have an &lt;strong&gt;academic information overload problem&lt;/strong&gt;. Academic information is scattered across:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WhatsApp messages&lt;/li&gt;
&lt;li&gt;Google Classroom&lt;/li&gt;
&lt;li&gt;College ERP &amp;amp; Portals&lt;/li&gt;
&lt;li&gt;Emails &amp;amp; PDFs&lt;/li&gt;
&lt;li&gt;Screenshots &amp;amp; handwritten notes&lt;/li&gt;
&lt;li&gt;Project chat threads&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;AcadFlow replaces manual planning with an academic decision and planning engine powered by open-source AI.&lt;/strong&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;The Core Loop&lt;/h3&gt;
&lt;/div&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;INPUT ──► UNDERSTAND ──► PRIORITIZE ──► PLAN ──► EXECUTE ──► MONITOR ──► REPLAN
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;2. Signature Feature: Adaptive Replanning&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;When a student reports:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"I only completed 45 minutes of DBMS."&lt;/em&gt; or &lt;em&gt;"I lost 2 hours today."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;AcadFlow does &lt;strong&gt;not&lt;/strong&gt; simply…&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/divyanshigupta786/Acadflow-devchallenge1" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Project Structure
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Acadflow-devchallenge1/
├── frontend/                 # Next.js 14 (App Router) + TypeScript + Tailwind
│   └── src/
│       ├── app/              # 17 pages: dashboard, tasks, inbox, courses, analytics...
│       ├── components/       # Sidebar, Navbar, ThemeToggle, Footer...
│       └── lib/              # api.ts, types.ts, utils.ts
├── backend/                  # Python 3.11 + FastAPI + SQLAlchemy
│   └── app/
│       ├── main.py           # Application entry point
│       ├── config.py         # Pydantic Settings + Supabase config
│       └── routers/          # Auth, tasks, courses, inbox, planner, AI endpoints
│           └── ai.py         # Ollama LLM + deterministic fallback + RAG
├── backend/tests/            # 13 test cases (pytest)
├── index.html                # Standalone self-contained landing page showcase
├── docker-compose.yml        # One-command stack: FastAPI + Next.js + PostgreSQL + Ollama
└── .github/workflows/        # CI + GitHub Pages automated deployment
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






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

&lt;h3&gt;
  
  
  Open-Source AI Architecture
&lt;/h3&gt;

&lt;p&gt;AcadFlow is built around a &lt;strong&gt;dual-intelligence&lt;/strong&gt; architecture that decouples AI assistance from deterministic business logic:&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Local LLM Inference via Ollama
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# backend/app/routers/ai.py
&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;settings&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OLLAMA_BASE_URL&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/api/generate&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;model&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;settings&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OLLAMA_MODEL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;# qwen2.5:7b, llama3.2, mistral, gemma2
&lt;/span&gt;        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;prompt&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;extraction_prompt&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;stream&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="bp"&gt;False&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;timeout&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Supported models: &lt;strong&gt;Qwen 2.5:7b&lt;/strong&gt;, &lt;strong&gt;Llama 3.2&lt;/strong&gt;, &lt;strong&gt;Mistral 7B&lt;/strong&gt;, &lt;strong&gt;Gemma 2&lt;/strong&gt;, plus any OpenAI-compatible local endpoint.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. Anti-Hallucination Rules (Hardcoded)
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# The LLM is explicitly instructed:
# "If you are not 100% certain of the deadline from the text, set deadline to null."
# "Never invent, estimate, or assume deadlines."
# Inferred estimates are tagged ai_estimate=True and shown visually in the UI.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  3. Deterministic Priority Engine (Zero LLM Involvement)
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Priority Score = (Urgency + Importance + Workload + Dependency Risk + Exam Proximity)
                 ─────────────────────────────────────────────────────────────────────
                                   Completion Progress Factor

RED    &amp;gt;= 75  →  Imminent deadline (&amp;lt;24h), exam, or overdue
ORANGE 50-74  →  Due within 48h or blocking teammates
YELLOW 25-49  →  Standard runway assignments
GREEN  &amp;lt; 25   →  Extended deadlines or completed
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  4. Adaptive Replanning Engine
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;replan&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;student_report&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;active_tasks&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;today_budget_minutes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;int&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="c1"&gt;# 1. Parse what was completed vs planned
&lt;/span&gt;    &lt;span class="c1"&gt;# 2. Recalculate remaining workload per task
&lt;/span&gt;    &lt;span class="c1"&gt;# 3. Identify tasks safely shiftable (low priority, distant deadline)
&lt;/span&gt;    &lt;span class="c1"&gt;# 4. Preserve imminent exam revision and high-stakes deadlines
&lt;/span&gt;    &lt;span class="c1"&gt;# 5. Return new schedule + plain-language trade-off explanation
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  5. Knowledge Base RAG
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Documents are chunked, embedded with &lt;strong&gt;BGE Embeddings&lt;/strong&gt;, stored in &lt;strong&gt;pgvector&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Queries retrieve top-k chunks by cosine similarity.&lt;/li&gt;
&lt;li&gt;Every AI answer includes source citations linking back to the original document.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Next.js 14 (App Router), TypeScript, Tailwind CSS, Lucide Icons&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Python 3.11, FastAPI, Pydantic v2, SQLAlchemy 2.0, Uvicorn&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Database&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;SQLite (local dev) / PostgreSQL + pgvector / Supabase&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AI Inference&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Ollama — Qwen 2.5, Llama 3.2, Mistral, Gemma 2 + Deterministic Fallback&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Embeddings &amp;amp; RAG&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;BGE Embeddings + cosine similarity via pgvector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;UI Design&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Cormorant Garamond + Poppins, cream/teal palette, dark/light theme&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Containerization&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Docker + Docker Compose&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Deployment&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vercel (frontend) + GitHub Pages + GitHub Actions CI/CD&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tests&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Pytest — 13 test cases&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




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

&lt;h3&gt;
  
  
  1. Student Privacy Cannot Be Negotiated
&lt;/h3&gt;

&lt;p&gt;A proprietary closed API like GPT-4 would mean sending every student's assignment text, course names, exam schedules, and study patterns to a third-party commercial server. With Ollama, &lt;strong&gt;no academic data ever leaves Priya's laptop&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Zero Cost = Universal Access
&lt;/h3&gt;

&lt;p&gt;University students do not have budgets for $20/month API subscriptions. With open-weight models (Llama, Qwen, Gemma — all free, all local), the entire system runs on a consumer laptop with 8–16GB RAM. A closed API would price out the exact students who need it most — those in emerging economies without premium subscription budgets.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Deterministic Reliability Over Probabilistic Drift
&lt;/h3&gt;

&lt;p&gt;The most critical feature — the &lt;strong&gt;Priority Engine and Adaptive Replanning&lt;/strong&gt; — uses &lt;strong&gt;zero AI&lt;/strong&gt;. It runs deterministic math. This architectural decision was only possible because open-source models forced intentionality: &lt;em&gt;use AI only where it adds value, hardcode everything where correctness is non-negotiable.&lt;/em&gt; Proprietary APIs tempt developers to "just ask GPT what priority this task should be" — leading to hallucinated urgency and fabricated deadlines. Open-source models prevented this anti-pattern.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Community Auditability for Academic Tools
&lt;/h3&gt;

&lt;p&gt;Any tool that affects a student's study plan and exam preparation must be transparent. With open-source models and a fully open-source codebase, any student, professor, or researcher can audit exactly how AcadFlow makes its recommendations. Closed APIs are black boxes. Open innovation means accountability.&lt;/p&gt;




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

&lt;p&gt;This project was built with &lt;strong&gt;Google Antigravity (AGY)&lt;/strong&gt; AI coding assistant. The session covered:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designing the deterministic priority scoring system and anti-hallucination pipeline&lt;/li&gt;
&lt;li&gt;Building the Adaptive Replanning Engine&lt;/li&gt;
&lt;li&gt;Full Next.js 14 App Router frontend with 17 pages&lt;/li&gt;
&lt;li&gt;Real-time dark/light theme toggle with localStorage persistence&lt;/li&gt;
&lt;li&gt;Supabase + PostgreSQL backend integration&lt;/li&gt;
&lt;li&gt;GitHub Actions CI/CD pipeline&lt;/li&gt;
&lt;li&gt;Live Vercel deployment and debugging (including fixing a &lt;code&gt;@/lib/api&lt;/code&gt; gitignore exclusion bug mid-deployment)&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Open Source AI&lt;/strong&gt; — Built entirely on open-weight models (Ollama, Qwen, Llama, Gemma, BGE Embeddings). Zero proprietary closed APIs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of AI&lt;/strong&gt; — Deterministic + AI hybrid architecture solving real academic planning with zero hallucination guarantees.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Deployed Project&lt;/strong&gt; — Live on Vercel (Next.js frontend) and GitHub Pages (showcase).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Student Developer&lt;/strong&gt; — Built by a student, for a student.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Acceptance Criteria
&lt;/h2&gt;

&lt;p&gt;✅ Register, login, and JWT session handling&lt;br&gt;
✅ One-click seeded demo student account (&lt;code&gt;demo@acadflow.dev&lt;/code&gt;)&lt;br&gt;
✅ Academic Inbox (raw text, PDF upload, voice input)&lt;br&gt;
✅ Open-source LLM extraction with zero-hallucination deterministic fallback&lt;br&gt;
✅ Review &amp;amp; edit extracted items before saving&lt;br&gt;
✅ Deterministic Priority Engine (RED / ORANGE / YELLOW / GREEN)&lt;br&gt;
✅ Daily planner with study hour budget selector&lt;br&gt;
✅ &lt;strong&gt;Signature Feature&lt;/strong&gt;: Adaptive Replanning with plain-language trade-off explanation&lt;br&gt;
✅ Workload estimation with personalized programming multipliers&lt;br&gt;
✅ Course pages with strong/weak topic tracking and AI study recommendations&lt;br&gt;
✅ Knowledge Base RAG with grounded source citations&lt;br&gt;
✅ Project Mode with team roles and AI blocker warnings&lt;br&gt;
✅ Long-term Goals with milestone checklists&lt;br&gt;
✅ Workload Analytics with completion rates and insights&lt;br&gt;
✅ Smart contextual notifications&lt;br&gt;
✅ Docker Compose ready (PostgreSQL + pgvector + Ollama)&lt;br&gt;
✅ 13 automated test cases (pytest)&lt;br&gt;
✅ Light/Dark theme toggle with localStorage persistence&lt;br&gt;
✅ Deployed live on Vercel and GitHub Pages&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Built with love for every student who has ever missed a deadline they were certain they remembered.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>AcadFlow — I Built an AI Academic Operating System for My Friend Who Drowns in Deadlines Every Semester</title>
      <dc:creator>Divyanshi Gupta</dc:creator>
      <pubDate>Sun, 04 Oct 2026 14:45:31 +0000</pubDate>
      <link>https://dev.to/divyanshigupta491/acadflow-i-built-an-ai-academic-operating-system-for-my-friend-who-drowns-in-deadlines-every-2c31</link>
      <guid>https://dev.to/divyanshigupta491/acadflow-i-built-an-ai-academic-operating-system-for-my-friend-who-drowns-in-deadlines-every-2c31</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;My closest friend, Priya, is a third-year Computer Science student. Every semester, she drowns in the same chaos — missed assignment notifications buried in WhatsApp groups, half-remembered quiz dates, and study plans that collapse the moment a professor reschedules a lab.&lt;/p&gt;

&lt;p&gt;She does not lack information. She has &lt;em&gt;too much&lt;/em&gt;, scattered across five apps, three portals, and a camera roll full of screenshots.&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;AcadFlow&lt;/strong&gt; — an AI Academic Operating System that solves exactly this problem. Instead of another generic planner or a ChatGPT wrapper that confidently invents fake deadlines, AcadFlow is a &lt;strong&gt;deterministic planning engine with open-source AI assistance&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  What it does:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Academic Inbox&lt;/strong&gt;: Paste raw WhatsApp announcements, upload syllabus PDFs, or voice-dictate assignment requirements. Open-source LLMs extract structured tasks, courses, and deadlines.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero-Hallucination Priority Engine&lt;/strong&gt;: Every task gets a mathematically computed priority score (RED / ORANGE / YELLOW / GREEN). If a deadline is not explicitly stated, it stays &lt;code&gt;null&lt;/code&gt; — the system never invents one.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Daily Planner&lt;/strong&gt;: Generates focus blocks within a customizable study-hour budget, with cognitive breaks.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Adaptive Replanning&lt;/strong&gt; &lt;em&gt;(Signature Feature)&lt;/em&gt;: When Priya reports "I only finished 45 minutes of DBMS instead of 90", AcadFlow recalculates the entire schedule — safely shifting low-priority tasks to tomorrow while preserving imminent exam revision. It explains its trade-offs in plain language.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Knowledge Base (RAG)&lt;/strong&gt;: Upload lecture notes and study guides. Ask questions grounded in actual indexed documents with source citations.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Workload Analytics&lt;/strong&gt;: Tracks completion rates and learns that Priya consistently takes 30% longer on programming assignments, automatically adjusting future estimates.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Goals &amp;amp; Projects&lt;/strong&gt;: Long-term milestone tracking and collaborative project management with AI blocker warnings.&lt;/li&gt;
&lt;/ul&gt;




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

&lt;p&gt;&lt;strong&gt;Live Frontend (Vercel)&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://acadflow-devchallenge1.vercel.app" rel="noopener noreferrer"&gt;https://acadflow-devchallenge1.vercel.app&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;GitHub Pages (Landing Showcase)&lt;/strong&gt;:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;a href="https://divyanshigupta786.github.io/Acadflow-devchallenge1/" rel="noopener noreferrer"&gt;https://divyanshigupta786.github.io/Acadflow-devchallenge1/&lt;/a&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Try the Pre-loaded Demo Student Account:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Email&lt;/strong&gt;: &lt;code&gt;demo@acadflow.dev&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Password&lt;/strong&gt;: &lt;code&gt;demo123&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Pre-loaded with 5 real CS courses, 12 realistic tasks, an active daily schedule, indexed study documents, and a collaborative AI project — ready to explore immediately.&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/divyanshigupta786" rel="noopener noreferrer"&gt;
        divyanshigupta786
      &lt;/a&gt; / &lt;a href="https://github.com/divyanshigupta786/Acadflow-devchallenge1" rel="noopener noreferrer"&gt;
        Acadflow-devchallenge1
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      
    &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;AcadFlow — AI-Powered Academic Operating System&lt;/h1&gt;
&lt;/div&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;From academic chaos to clarity.&lt;/strong&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;AcadFlow is a production-quality, open-source AI academic productivity and planning platform. Designed for college and university students managing multiple courses, assignments, exams, projects, and extracurriculars, AcadFlow transforms fragmented academic information into an adaptive, personalized action plan.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;1. Product Philosophy: Not Another Chatbot&lt;/h2&gt;
&lt;/div&gt;
&lt;p&gt;Students do not have a lack of academic information; they have an &lt;strong&gt;academic information overload problem&lt;/strong&gt;. Academic information is scattered across:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;WhatsApp messages&lt;/li&gt;
&lt;li&gt;Google Classroom&lt;/li&gt;
&lt;li&gt;College ERP &amp;amp; Portals&lt;/li&gt;
&lt;li&gt;Emails &amp;amp; PDFs&lt;/li&gt;
&lt;li&gt;Screenshots &amp;amp; handwritten notes&lt;/li&gt;
&lt;li&gt;Project chat threads&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;AcadFlow replaces manual planning with an academic decision and planning engine powered by open-source AI.&lt;/strong&gt;&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h3 class="heading-element"&gt;The Core Loop&lt;/h3&gt;
&lt;/div&gt;
&lt;div class="snippet-clipboard-content notranslate position-relative overflow-auto"&gt;&lt;pre class="notranslate"&gt;&lt;code&gt;INPUT ──► UNDERSTAND ──► PRIORITIZE ──► PLAN ──► EXECUTE ──► MONITOR ──► REPLAN
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;2. Signature Feature: Adaptive Replanning&lt;/h2&gt;

&lt;/div&gt;
&lt;p&gt;When a student reports:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"I only completed 45 minutes of DBMS."&lt;/em&gt; or &lt;em&gt;"I lost 2 hours today."&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;AcadFlow does &lt;strong&gt;not&lt;/strong&gt; simply…&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/divyanshigupta786/Acadflow-devchallenge1" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


&lt;h3&gt;
  
  
  Project Structure
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Acadflow-devchallenge1/
├── frontend/                 # Next.js 14 (App Router) + TypeScript + Tailwind
│   └── src/
│       ├── app/              # 17 pages: dashboard, tasks, inbox, courses, analytics...
│       ├── components/       # Sidebar, Navbar, ThemeToggle, Footer...
│       └── lib/              # api.ts, types.ts, utils.ts
├── backend/                  # Python 3.11 + FastAPI + SQLAlchemy
│   └── app/
│       ├── main.py           # Application entry point
│       ├── config.py         # Pydantic Settings + Supabase config
│       └── routers/          # Auth, tasks, courses, inbox, planner, AI endpoints
│           └── ai.py         # Ollama LLM + deterministic fallback + RAG
├── backend/tests/            # 13 test cases (pytest)
├── index.html                # Standalone self-contained landing page showcase
├── docker-compose.yml        # One-command stack: FastAPI + Next.js + PostgreSQL + Ollama
└── .github/workflows/        # CI + GitHub Pages automated deployment
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






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

&lt;h3&gt;
  
  
  Open-Source AI Architecture
&lt;/h3&gt;

&lt;p&gt;AcadFlow is built around a &lt;strong&gt;dual-intelligence&lt;/strong&gt; architecture that decouples AI assistance from deterministic business logic:&lt;/p&gt;

&lt;h4&gt;
  
  
  1. Local LLM Inference via Ollama
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# backend/app/routers/ai.py
&lt;/span&gt;&lt;span class="n"&gt;response&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="n"&gt;requests&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;post&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;
    &lt;span class="sa"&gt;f&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="si"&gt;{&lt;/span&gt;&lt;span class="n"&gt;settings&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OLLAMA_BASE_URL&lt;/span&gt;&lt;span class="si"&gt;}&lt;/span&gt;&lt;span class="s"&gt;/api/generate&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="n"&gt;json&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;model&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;settings&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="n"&gt;OLLAMA_MODEL&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;  &lt;span class="c1"&gt;# qwen2.5:7b, llama3.2, mistral, gemma2
&lt;/span&gt;        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;prompt&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="n"&gt;extraction_prompt&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
        &lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="s"&gt;stream&lt;/span&gt;&lt;span class="sh"&gt;"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="bp"&gt;False&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
    &lt;span class="p"&gt;},&lt;/span&gt;
    &lt;span class="n"&gt;timeout&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="mi"&gt;60&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Supported models: &lt;strong&gt;Qwen 2.5:7b&lt;/strong&gt;, &lt;strong&gt;Llama 3.2&lt;/strong&gt;, &lt;strong&gt;Mistral 7B&lt;/strong&gt;, &lt;strong&gt;Gemma 2&lt;/strong&gt;, plus any OpenAI-compatible local endpoint.&lt;/p&gt;

&lt;h4&gt;
  
  
  2. Anti-Hallucination Rules (Hardcoded)
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="c1"&gt;# The LLM is explicitly instructed:
# "If you are not 100% certain of the deadline from the text, set deadline to null."
# "Never invent, estimate, or assume deadlines."
# Inferred estimates are tagged ai_estimate=True and shown visually in the UI.
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  3. Deterministic Priority Engine (Zero LLM Involvement)
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Priority Score = (Urgency + Importance + Workload + Dependency Risk + Exam Proximity)
                 ─────────────────────────────────────────────────────────────────────
                                   Completion Progress Factor

RED    &amp;gt;= 75  →  Imminent deadline (&amp;lt;24h), exam, or overdue
ORANGE 50-74  →  Due within 48h or blocking teammates
YELLOW 25-49  →  Standard runway assignments
GREEN  &amp;lt; 25   →  Extended deadlines or completed
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  4. Adaptive Replanning Engine
&lt;/h4&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="k"&gt;def&lt;/span&gt; &lt;span class="nf"&gt;replan&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;student_report&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;str&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;active_tasks&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;list&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="n"&gt;today_budget_minutes&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nb"&gt;int&lt;/span&gt;&lt;span class="p"&gt;):&lt;/span&gt;
    &lt;span class="c1"&gt;# 1. Parse what was completed vs planned
&lt;/span&gt;    &lt;span class="c1"&gt;# 2. Recalculate remaining workload per task
&lt;/span&gt;    &lt;span class="c1"&gt;# 3. Identify tasks safely shiftable (low priority, distant deadline)
&lt;/span&gt;    &lt;span class="c1"&gt;# 4. Preserve imminent exam revision and high-stakes deadlines
&lt;/span&gt;    &lt;span class="c1"&gt;# 5. Return new schedule + plain-language trade-off explanation
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h4&gt;
  
  
  5. Knowledge Base RAG
&lt;/h4&gt;

&lt;ul&gt;
&lt;li&gt;Documents are chunked, embedded with &lt;strong&gt;BGE Embeddings&lt;/strong&gt;, stored in &lt;strong&gt;pgvector&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Queries retrieve top-k chunks by cosine similarity.&lt;/li&gt;
&lt;li&gt;Every AI answer includes source citations linking back to the original document.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Layer&lt;/th&gt;
&lt;th&gt;Technology&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Frontend&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Next.js 14 (App Router), TypeScript, Tailwind CSS, Lucide Icons&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Backend&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Python 3.11, FastAPI, Pydantic v2, SQLAlchemy 2.0, Uvicorn&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Database&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;SQLite (local dev) / PostgreSQL + pgvector / Supabase&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;AI Inference&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Ollama — Qwen 2.5, Llama 3.2, Mistral, Gemma 2 + Deterministic Fallback&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Embeddings &amp;amp; RAG&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;BGE Embeddings + cosine similarity via pgvector&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;UI Design&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Cormorant Garamond + Poppins, cream/teal palette, dark/light theme&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Containerization&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Docker + Docker Compose&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Deployment&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Vercel (frontend) + GitHub Pages + GitHub Actions CI/CD&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Tests&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Pytest — 13 test cases&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




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

&lt;h3&gt;
  
  
  1. Student Privacy Cannot Be Negotiated
&lt;/h3&gt;

&lt;p&gt;A proprietary closed API like GPT-4 would mean sending every student's assignment text, course names, exam schedules, and study patterns to a third-party commercial server. With Ollama, &lt;strong&gt;no academic data ever leaves Priya's laptop&lt;/strong&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Zero Cost = Universal Access
&lt;/h3&gt;

&lt;p&gt;University students do not have budgets for $20/month API subscriptions. With open-weight models (Llama, Qwen, Gemma — all free, all local), the entire system runs on a consumer laptop with 8–16GB RAM. A closed API would price out the exact students who need it most — those in emerging economies without premium subscription budgets.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Deterministic Reliability Over Probabilistic Drift
&lt;/h3&gt;

&lt;p&gt;The most critical feature — the &lt;strong&gt;Priority Engine and Adaptive Replanning&lt;/strong&gt; — uses &lt;strong&gt;zero AI&lt;/strong&gt;. It runs deterministic math. This architectural decision was only possible because open-source models forced intentionality: &lt;em&gt;use AI only where it adds value, hardcode everything where correctness is non-negotiable.&lt;/em&gt; Proprietary APIs tempt developers to "just ask GPT what priority this task should be" — leading to hallucinated urgency and fabricated deadlines. Open-source models prevented this anti-pattern.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Community Auditability for Academic Tools
&lt;/h3&gt;

&lt;p&gt;Any tool that affects a student's study plan and exam preparation must be transparent. With open-source models and a fully open-source codebase, any student, professor, or researcher can audit exactly how AcadFlow makes its recommendations. Closed APIs are black boxes. Open innovation means accountability.&lt;/p&gt;




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

&lt;p&gt;This project was built with &lt;strong&gt;Google Antigravity (AGY)&lt;/strong&gt; AI coding assistant. The session covered:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Designing the deterministic priority scoring system and anti-hallucination pipeline&lt;/li&gt;
&lt;li&gt;Building the Adaptive Replanning Engine&lt;/li&gt;
&lt;li&gt;Full Next.js 14 App Router frontend with 17 pages&lt;/li&gt;
&lt;li&gt;Real-time dark/light theme toggle with localStorage persistence&lt;/li&gt;
&lt;li&gt;Supabase + PostgreSQL backend integration&lt;/li&gt;
&lt;li&gt;GitHub Actions CI/CD pipeline&lt;/li&gt;
&lt;li&gt;Live Vercel deployment and debugging (including fixing a &lt;code&gt;@/lib/api&lt;/code&gt; gitignore exclusion bug mid-deployment)&lt;/li&gt;
&lt;/ul&gt;




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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Open Source AI&lt;/strong&gt; — Built entirely on open-weight models (Ollama, Qwen, Llama, Gemma, BGE Embeddings). Zero proprietary closed APIs.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Use of AI&lt;/strong&gt; — Deterministic + AI hybrid architecture solving real academic planning with zero hallucination guarantees.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Best Deployed Project&lt;/strong&gt; — Live on Vercel (Next.js frontend) and GitHub Pages (showcase).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Student Developer&lt;/strong&gt; — Built by a student, for a student.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Acceptance Criteria
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;[x] Register, login, and JWT session handling&lt;/li&gt;
&lt;li&gt;[x] One-click seeded demo student account (&lt;code&gt;demo@acadflow.dev&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;[x] Academic Inbox (raw text, PDF upload, voice input)&lt;/li&gt;
&lt;li&gt;[x] Open-source LLM extraction with zero-hallucination deterministic fallback&lt;/li&gt;
&lt;li&gt;[x] Review &amp;amp; edit extracted items before saving&lt;/li&gt;
&lt;li&gt;[x] Deterministic Priority Engine (RED / ORANGE / YELLOW / GREEN)&lt;/li&gt;
&lt;li&gt;[x] Daily planner with study hour budget selector&lt;/li&gt;
&lt;li&gt;[x] &lt;strong&gt;Signature Feature&lt;/strong&gt;: Adaptive Replanning with plain-language trade-off explanation&lt;/li&gt;
&lt;li&gt;[x] Workload estimation with personalized programming multipliers&lt;/li&gt;
&lt;li&gt;[x] Course pages with strong/weak topic tracking and AI study recommendations&lt;/li&gt;
&lt;li&gt;[x] Knowledge Base RAG with grounded source citations&lt;/li&gt;
&lt;li&gt;[x] Project Mode with team roles and AI blocker warnings&lt;/li&gt;
&lt;li&gt;[x] Long-term Goals with milestone checklists&lt;/li&gt;
&lt;li&gt;[x] Workload Analytics with completion rates and insights&lt;/li&gt;
&lt;li&gt;[x] Smart contextual notifications&lt;/li&gt;
&lt;li&gt;[x] Docker Compose ready (PostgreSQL + pgvector + Ollama)&lt;/li&gt;
&lt;li&gt;[x] 13 automated test cases (pytest)&lt;/li&gt;
&lt;li&gt;[x] Light/Dark theme toggle with localStorage persistence&lt;/li&gt;
&lt;li&gt;[x] Deployed live on Vercel and GitHub Pages&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Built with love for every student who has ever missed a deadline they were certain they remembered.&lt;/em&gt;&lt;/p&gt;

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