<?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: Periyasamy A</title>
    <description>The latest articles on DEV Community by Periyasamy A (@periyasamya).</description>
    <link>https://dev.to/periyasamya</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%2F4154966%2Ff581eb1d-4598-48f0-9397-25829120564c.jpg</url>
      <title>DEV Community: Periyasamy A</title>
      <link>https://dev.to/periyasamya</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/periyasamya"/>
    <language>en</language>
    <item>
      <title>Later-Sloth</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Wed, 21 Oct 2026 13:56:54 +0000</pubDate>
      <link>https://dev.to/periyasamya/later-sloth-4c8c</link>
      <guid>https://dev.to/periyasamya/later-sloth-4c8c</guid>
      <description>&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Later, Sloth&lt;/strong&gt; is a tiny website for people who would rather hang from a branch than sort a pile.&lt;/p&gt;

&lt;p&gt;You paste the group chat you have not read, the inbox you have not opened, or the filenames you promised to clean up. The page loads an open-weight Flan-T5 model in your browser and slowly hands back:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;a &lt;strong&gt;two-line morning brief&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;a &lt;strong&gt;tidy / archive plan&lt;/strong&gt; with folder names&lt;/li&gt;
&lt;li&gt;a &lt;strong&gt;wind-down story&lt;/strong&gt; so you can stop staring at the mess at night&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The lazy payoff is the standing-in-front-of-the-fridge problem, applied to digital clutter: you dump it once, you do not stand there with the door open.&lt;/p&gt;

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

&lt;p&gt;Local: &lt;code&gt;http://localhost:3000&lt;/code&gt;&lt;/p&gt;

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

&lt;p&gt;GitHub: &lt;code&gt;https://github.com/biggod151004-dev/Later-Sloth&lt;/code&gt;&lt;/p&gt;

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

&lt;p&gt;Open pieces that actually make it work:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Open-weight model:&lt;/strong&gt; &lt;a href="https://huggingface.co/Xenova/flan-t5-small" rel="noopener noreferrer"&gt;&lt;code&gt;Xenova/flan-t5-small&lt;/code&gt;&lt;/a&gt; (Apache-2.0), an ONNX export of Google's Flan-T5.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open-source inference:&lt;/strong&gt; &lt;a href="https://github.com/huggingface/transformers.js" rel="noopener noreferrer"&gt;Transformers.js&lt;/a&gt; in a Web Worker so the tab stays usable while weights download.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Open host:&lt;/strong&gt; a small Express app on &lt;strong&gt;Render&lt;/strong&gt; that only serves the page. Render is the front end, not a closed model vendor.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;There is no OpenAI key and no server-side prompt log. The Node process is a static file server plus a &lt;code&gt;/health&lt;/code&gt; check so Render can see the sloth is still hanging.&lt;/p&gt;

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

&lt;p&gt;A closed API would be faster to wire and worse for this job.&lt;/p&gt;

&lt;p&gt;The pile is personal: unread chats, invoices, fridge photos named &lt;code&gt;IMG_4402.jpg&lt;/code&gt;. Sending that to a vendor so I can be slightly lazier is the opposite of conserving energy — it creates a new worry. Running Flan-T5 in the tab means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;the text never leaves the laptop&lt;/li&gt;
&lt;li&gt;after the first ~80 MB download, it can run with no internet&lt;/li&gt;
&lt;li&gt;there is no per-token bill, so I can leave it cached and use it every morning&lt;/li&gt;
&lt;li&gt;I can swap the Hugging Face model id if a better small instruction model shows up&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That is the Slow and Steady bet: a smaller open model that lives with you beats a giant closed one that rents you your own inbox.&lt;/p&gt;

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

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

&lt;p&gt;One paste of a messy family/trip thread plus duplicate bills is enough for a two-line brief and a folder list. You do not re-read 400 unread messages before coffee. First visit waits on the model download; every visit after that is the sloth already in the tree.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Best Use of Render (hosts the agent's front end)&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>MenuMitra: Private AI Menu Translation for Neighborhood Restaurants</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Tue, 13 Oct 2026 03:39:47 +0000</pubDate>
      <link>https://dev.to/periyasamya/menumitra-private-ai-menu-translation-for-neighborhood-restaurants-3h8b</link>
      <guid>https://dev.to/periyasamya/menumitra-private-ai-menu-translation-for-neighborhood-restaurants-3h8b</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;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;MenuMitra is a small menu translation studio for independent restaurants. A restaurant owner pastes in their menu, chooses a target language and tone, and gets a translation they can copy or download.&lt;/p&gt;

&lt;p&gt;It’s designed to preserve dish names, prices, quantities, and existing allergen notes so the menu still feels like the restaurant’s own. A restaurant could pay for setup, a house glossary, and help adapting the tool to its menu.&lt;/p&gt;

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

&lt;p&gt;Demo url : &lt;a href="https://menumitra.onrender.com" rel="noopener noreferrer"&gt;https://menumitra.onrender.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;There isn’t a hosted demo yet. You can run the prototype locally with Ollama:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
powershell
ollama pull gemma3:4b
ollama serve
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>ai</category>
    </item>
    <item>
      <title>Trailwise: A Local AI Nudge to Touch Grass</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Fri, 09 Oct 2026 16:31:00 +0000</pubDate>
      <link>https://dev.to/periyasamya/trailwise-a-local-ai-nudge-to-touch-grass-53cp</link>
      <guid>https://dev.to/periyasamya/trailwise-a-local-ai-nudge-to-touch-grass-53cp</guid>
      <description>&lt;p&gt;&lt;em&gt;This is a submission for the &lt;a href="https://dev.to/challenges/hacktoberfest-week1-2026-10-05"&gt;Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

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

&lt;p&gt;Trailwise is a local-first micro-adventure planner that helps people spend less time deciding what to do and more time outside.&lt;/p&gt;

&lt;p&gt;The user enters a location, available time, energy level, and preferred mood. Trailwise creates a small outdoor activity that can begin immediately: a quiet noticing walk, a body-moving route, a found-object creative activity, or a simple social walk.&lt;/p&gt;

&lt;p&gt;It is designed for students, remote workers, families, and anyone who wants to go outside but feels stuck planning the perfect outing. The screen is only used to create the plan; the actual experience happens outdoors.&lt;/p&gt;

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

&lt;p&gt;Live demo: &lt;a href="https://a-local-ai-nudge-to-touch-grass.onrender.com" rel="noopener noreferrer"&gt;https://a-local-ai-nudge-to-touch-grass.onrender.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The app is deployed as a static site on Render.&lt;/p&gt;

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

&lt;p&gt;GitHub repository: &lt;a href="https://github.com/biggod151004-dev" rel="noopener noreferrer"&gt;https://github.com/biggod151004-dev&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;Trailwise is built with HTML, CSS, and JavaScript. The interface is hosted as a static site, so it does not need a backend or database.&lt;/p&gt;

&lt;p&gt;The AI layer uses &lt;code&gt;Xenova/flan-t5-small&lt;/code&gt;, an open-weight model, through &lt;a href="https://github.com/huggingface/transformers.js" rel="noopener noreferrer"&gt;Transformers.js&lt;/a&gt;. The model runs directly in the user's browser and generates a short, friendly introduction for the outdoor plan.&lt;/p&gt;

&lt;p&gt;The app also includes a small deterministic plan library. This keeps the core experience useful while the model is downloading and gives lower-powered devices a reliable fallback.&lt;/p&gt;

&lt;p&gt;Architecture:&lt;br&gt;
&lt;/p&gt;

&lt;pre data-lang="mermaid"&gt;&lt;code&gt;flowchart LR
    A[User enters time, place, energy] --&amp;gt; B[Trailwise browser app]
    B --&amp;gt; C[FLAN-T5-small via Transformers.js]
    C --&amp;gt; D[Short local AI nudge]
    B --&amp;gt; E[Offline plan library fallback]
    D --&amp;gt; F[Outdoor micro-adventure]
    E --&amp;gt; F&lt;/code&gt;&lt;/pre&gt;



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

&lt;p&gt;An outdoor app can handle sensitive information. A location prompt may reveal where someone lives, walks, or spends time. Trailwise keeps that prompt in the browser instead of sending it to a closed AI API.&lt;/p&gt;

&lt;p&gt;Using an open-weight model also makes the project changeable. Developers can inspect the prompt, replace the model, improve the plan library, or run the project without an API key. Render only hosts the static files; the AI inference happens in the user's browser.&lt;/p&gt;

&lt;p&gt;This approach also keeps the cost low and makes the project portable. The tradeoff is that the first model download can take time and browser performance varies. That is why Trailwise includes a deterministic fallback instead of pretending every device has the same hardware.&lt;/p&gt;

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

&lt;p&gt;Optional DevRelay session: &lt;strong&gt;Add your DevRelay agent session link here&lt;/strong&gt;&lt;/p&gt;

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

&lt;h3&gt;
  
  
  Best Use of Render
&lt;/h3&gt;

&lt;p&gt;Trailwise is deployed as a Render static site and automatically redeploys when the connected GitHub branch changes. Render provides the public demo while the open-weight model runs in the browser.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I Learned Outside
&lt;/h2&gt;

&lt;p&gt;After deploying Trailwise, I will take one of its micro-adventures outdoors and add what happened here: where I went, which plan I tried, and one detail I noticed because I was no longer looking at a screen.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
      <category>opensource</category>
      <category>webdev</category>
    </item>
    <item>
      <title>FocusBuddy: A Tiny AI Companion That Helps My Friend Start</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Sat, 03 Oct 2026 07:23:36 +0000</pubDate>
      <link>https://dev.to/periyasamya/focusbuddy-a-tiny-ai-companion-that-helps-my-friend-start-48a8</link>
      <guid>https://dev.to/periyasamya/focusbuddy-a-tiny-ai-companion-that-helps-my-friend-start-48a8</guid>
      <description>&lt;h2&gt;
  
  
  What I Built
&lt;/h2&gt;

&lt;p&gt;I built FocusBuddy for a friend who wants to study and work but finds it hard to start when scrolling is always one tap away. I chose this problem because the first few minutes of a task can feel like the hardest part, and I wanted to make those minutes feel easier without blaming him or pretending a website can control his phone.&lt;/p&gt;

&lt;p&gt;FocusBuddy lets him name a task and start with just two minutes. It can count when he leaves the FocusBuddy tab, pause for a 60-second scroll urge, encourage a phone-down moment, and save a short reflection after a session. A dashboard turns those sessions into a visible story of progress.&lt;/p&gt;

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

&lt;p&gt;Live Demo: &lt;a href="https://focusbuddy-1-ykyk.onrender.com" rel="noopener noreferrer"&gt;https://focusbuddy-1-ykyk.onrender.com&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;GitHub: &lt;a href="https://github.com/biggod151004-dev/FocusBuddy" rel="noopener noreferrer"&gt;biggod151004-dev/FocusBuddy&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;FocusBuddy is built with React, TypeScript, and Vite. It saves focus history and reflections in browser LocalStorage and uses a service worker for the app shell.&lt;/p&gt;

&lt;p&gt;The optional AI nudge uses the open-weight Qwen2.5-0.5B-Instruct model through WebLLM in a compatible browser. WebGPU is required by this implementation, and the model weights need to be downloaded the first time. If the model is disabled or unavailable, the app uses a short built-in nudge. No closed AI API is used.&lt;/p&gt;

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

&lt;p&gt;The AI provider is isolated behind a small &lt;code&gt;generateNudge(context)&lt;/code&gt; function, so developers can inspect the prompt and replace the model. On compatible devices, inference happens in the browser. Focus history and reflections stay in local browser storage and are not sent to an application server. The model weights are fetched from the configured model registry, so first-time AI setup needs internet; the app does not claim fully offline AI.&lt;/p&gt;

&lt;p&gt;Using an open-weight model makes it practical to experiment with the nudge style and local inference without making the product depend on one proprietary AI API.&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>weekendchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>intro</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Fri, 02 Oct 2026 03:56:03 +0000</pubDate>
      <link>https://dev.to/periyasamya/intro-2pm1</link>
      <guid>https://dev.to/periyasamya/intro-2pm1</guid>
      <description>&lt;p&gt;i am new in hacktoberfest event &lt;/p&gt;

</description>
    </item>
    <item>
      <title>intro</title>
      <dc:creator>Periyasamy A</dc:creator>
      <pubDate>Thu, 01 Oct 2026 14:11:36 +0000</pubDate>
      <link>https://dev.to/periyasamya/intro-10lo</link>
      <guid>https://dev.to/periyasamya/intro-10lo</guid>
      <description></description>
    </item>
  </channel>
</rss>
