<?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: Viraj Radadiya</title>
    <description>The latest articles on DEV Community by Viraj Radadiya (@viraj_radadiya_).</description>
    <link>https://dev.to/viraj_radadiya_</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4155142%2Fee62af9d-961b-4f95-ace7-291bdb13df99.jpg</url>
      <title>DEV Community: Viraj Radadiya</title>
      <link>https://dev.to/viraj_radadiya_</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/viraj_radadiya_"/>
    <language>en</language>
    <item>
      <title>Local Invoice &amp; Receipt Sorter for Freelancers — Open-Source AI Side Hustle</title>
      <dc:creator>Viraj Radadiya</dc:creator>
      <pubDate>Thu, 15 Oct 2026 05:07:11 +0000</pubDate>
      <link>https://dev.to/viraj_radadiya_/local-invoice-receipt-sorter-for-freelancers-open-source-ai-side-hustle-3d01</link>
      <guid>https://dev.to/viraj_radadiya_/local-invoice-receipt-sorter-for-freelancers-open-source-ai-side-hustle-3d01</guid>
      <description>&lt;p&gt;What I Built&lt;br&gt;
I built LocalFolio, an offline-first invoice and receipt organizer specifically designed for freelancers, independent contractors, and sole proprietors.&lt;/p&gt;

&lt;p&gt;Handling client receipts and expense invoices is tedious, manual, and privacy-sensitive. Freelancers often hesitate to upload sensitive financial documents containing client names, tax IDs, and bank details to cloud-based proprietary APIs. LocalFolio solves this by running entirely on the user's local machine. It ingests messy folders of PDFs, screenshots, and scans, uses a local vision-language model to extract structured metadata (vendor, date, total amount, category, and tax status), and automatically sorts them into clean, structured folder hierarchies with a fully searchable SQLite ledger.&lt;/p&gt;

&lt;p&gt;Demo&lt;/p&gt;

&lt;p&gt;(Link to video demo showing drag-and-drop receipt ingestion, local extraction, and auto-sorting in action)&lt;/p&gt;

&lt;p&gt;Code&lt;br&gt;
You can check out the complete project repository on GitHub:&lt;br&gt;
LocalFolio GitHub Repository&lt;/p&gt;

&lt;p&gt;Python&lt;/p&gt;

&lt;h1&gt;
  
  
  Core local inference pipeline snippet using Ollama and Llama 3 Vision
&lt;/h1&gt;

&lt;p&gt;import json&lt;br&gt;
from pathlib import Path&lt;br&gt;
from ollama import chat&lt;/p&gt;

&lt;p&gt;def process_receipt(image_path: Path) -&amp;gt; dict:&lt;br&gt;
    prompt = """&lt;br&gt;
    Extract the following invoice details in strict JSON format:&lt;br&gt;
    - vendor_name&lt;br&gt;
    - date (YYYY-MM-DD)&lt;br&gt;
    - total_amount&lt;br&gt;
    - currency&lt;br&gt;
    - category&lt;br&gt;
    """&lt;br&gt;
    response = chat(&lt;br&gt;
        model='llama3.2-vision',&lt;br&gt;
        messages=[{&lt;br&gt;
            'role': 'user',&lt;br&gt;
            'content': prompt,&lt;br&gt;
            'images': [str(image_path)]&lt;br&gt;
        }],&lt;br&gt;
        format='json'&lt;br&gt;
    )&lt;br&gt;
    return json.loads(response['message']['content'])&lt;br&gt;
How I Built It&lt;br&gt;
LocalFolio is built around modern open-source AI tools and frameworks:&lt;/p&gt;

&lt;p&gt;Open-Weight Models: Powered by Llama 3.2 (3B Vision) running locally via Ollama, allowing high-accuracy multi-modal OCR and structured information extraction without relying on external cloud endpoints.&lt;/p&gt;

&lt;p&gt;Agent Harness &amp;amp; Framework: Built using Python, LangChain for structuring extraction prompts, and Pydantic for rigorous data validation.&lt;/p&gt;

&lt;p&gt;Local Storage &amp;amp; UI: A lightweight desktop GUI built with Streamlit backed by a local SQLite database and local file system operations to organize documents directly in the user's chosen directory.&lt;/p&gt;

&lt;p&gt;Why Does Open Innovation Matter?&lt;br&gt;
Open innovation was non-negotiable for LocalFolio due to three core pillars:&lt;/p&gt;

&lt;p&gt;Absolute Data Privacy: Financial invoices contain sensitive PII, proprietary client names, and banking details. Running open-weight models locally ensures that confidential client data never leaves the freelancer's laptop, satisfying strict client confidentiality agreements.&lt;/p&gt;

&lt;p&gt;Zero Recurring Infrastructure Costs: Cloud-based OCR and proprietary vision APIs charge per request, which would quickly eat into thin freelancer margins or require a burdensome subscription model. Local inference costs $0.00 per scan, making the side hustle sustainably profitable.&lt;/p&gt;

&lt;p&gt;Customizability &amp;amp; Fine-Tuning: Generic invoice parsers often fail on regional tax formats (like GST/VAT structures or niche local currencies). Open models allowed custom prompt engineering and local few-shot tuning specifically tailored to freelance expense categories.&lt;/p&gt;

&lt;p&gt;My Agent Session&lt;br&gt;
During the development of LocalFolio, I used DevRelay to record and track my agentic debugging and coding sessions:&lt;br&gt;
View my DevRelay Agent Session&lt;/p&gt;

&lt;p&gt;My First User&lt;br&gt;
I tested LocalFolio with my friend Sarah, a freelance graphic designer who spends hours every month sorting through messy PDF invoices and mobile snapshots of tax receipts.&lt;/p&gt;

&lt;p&gt;Her Feedback: She loved that she didn't have to create an account, configure API keys, or worry about uploading confidential client retainer agreements to a third-party server.&lt;/p&gt;

&lt;p&gt;What she asked for next: She requested an automated export feature to generate a CSV summary sheet formatted specifically for her annual tax filing software.&lt;/p&gt;

&lt;p&gt;Would she pay? She stated she would gladly pay a one-time fee of $29 for a polished desktop installer so she never has to manually categorize receipts again.&lt;/p&gt;

&lt;p&gt;Prize Categories&lt;br&gt;
Open-Source AI / Local Inference&lt;/p&gt;

&lt;p&gt;Developer Productivity &amp;amp; Tools&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>NutriMate – Local AI Meal Planner for My Roommate's Severe Allergies</title>
      <dc:creator>Viraj Radadiya</dc:creator>
      <pubDate>Sun, 04 Oct 2026 08:46:18 +0000</pubDate>
      <link>https://dev.to/viraj_radadiya_/nutrimate-local-ai-meal-planner-for-my-roommates-severe-allergies-4fc4</link>
      <guid>https://dev.to/viraj_radadiya_/nutrimate-local-ai-meal-planner-for-my-roommates-severe-allergies-4fc4</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-weekend-2026-10-01"&gt;Hacktoberfest Weekend Challenge: Build for a Friend&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;I built &lt;strong&gt;NutriMate&lt;/strong&gt; for my roommate, Alex, who suffers from severe, multi-ingredient food allergies (peanuts, gluten, and dairy).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Problem:&lt;/strong&gt; Planning daily meals was a constant stress for Alex. Commercial recipe apps often miss cross-contamination risks or hide allergy filters behind expensive paywalls. Moreover, Alex didn't feel comfortable uploading sensitive health and dietary preferences to public AI cloud platforms.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Solution:&lt;/strong&gt; NutriMate is a fully offline, local AI-powered meal assistant. It analyzes available pantry items, cross-checks every ingredient against Alex's strict allergy profile, and generates personalized, safe weekly meal plans and grocery lists in seconds.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Live Demo / App:&lt;/strong&gt; &lt;a href="https://nutrimate-demo.example.com" rel="noopener noreferrer"&gt;https://nutrimate-demo.example.com&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;{}&lt;/p&gt;

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

&lt;p&gt;NutriMate is powered entirely by open-source AI infrastructure running locally on a standard laptop:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;LLM / Open-Weights:&lt;/strong&gt; &lt;code&gt;Llama 3.2 (3B-Instruct)&lt;/code&gt; running locally via &lt;strong&gt;Ollama&lt;/strong&gt; for high-speed, zero-latency meal reasoning.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Agent Framework:&lt;/strong&gt; &lt;strong&gt;LangChain&lt;/strong&gt; to enforce strict system guardrails, structured JSON output formats, and deterministic allergy verification.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend &amp;amp; UI:&lt;/strong&gt; Python FastAPI for local endpoint management and Streamlit for a clean, user-friendly dashboard.&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Using open-source AI wasn't just an alternative—it was the &lt;strong&gt;only option&lt;/strong&gt; that truly solved Alex's core concerns:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Complete Data Privacy:&lt;/strong&gt; Alex's medical allergy records and daily eating habits remain 100% on their personal laptop. No data ever touches a third-party server.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Offline &amp;amp; Reliability:&lt;/strong&gt; It runs with &lt;strong&gt;zero internet connection&lt;/strong&gt;. Whether cooking in a basement apartment or traveling without WiFi, NutriMate works instantly.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Zero Operating Cost:&lt;/strong&gt; Running open-weight models locally eliminates expensive API subscription fees, making it free forever.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Deterministic Behavior:&lt;/strong&gt; Open-source frameworks allowed us to fine-tune system prompts and temperature settings to ensure the model &lt;em&gt;never&lt;/em&gt; hallucinates unsafe ingredients.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  User Feedback
&lt;/h2&gt;

&lt;p&gt;Here is what Alex said when I installed NutriMate on their laptop:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;"I used to spend hours scanning ingredient lists and overthinking dinner. NutriMate gave me complete peace of mind because I know my data stays on my laptop and every recipe is 100% safe for me to eat. It’s genuinely a lifesaver!"&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;ul&gt;
&lt;li&gt;Main Challenge: Build for a Friend&lt;/li&gt;
&lt;/ul&gt;

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