<?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: Gautham Krishna Vijayan</title>
    <description>The latest articles on DEV Community by Gautham Krishna Vijayan (@gauthamkv14).</description>
    <link>https://dev.to/gauthamkv14</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%2F4155409%2Fd3a36e3e-6457-4004-99b9-617ed128e9fb.png</url>
      <title>DEV Community: Gautham Krishna Vijayan</title>
      <link>https://dev.to/gauthamkv14</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gauthamkv14"/>
    <language>en</language>
    <item>
      <title>Loot Goblin: Touch Grass, Find Loot 👹🌿</title>
      <dc:creator>Gautham Krishna Vijayan</dc:creator>
      <pubDate>Sun, 11 Oct 2026 09:14:59 +0000</pubDate>
      <link>https://dev.to/gauthamkv14/loot-goblin-touch-grass-find-loot-16a8</link>
      <guid>https://dev.to/gauthamkv14/loot-goblin-touch-grass-find-loot-16a8</guid>
      <description>&lt;p&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;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Loot Goblin&lt;/strong&gt; turns ordinary things you find in the real world into fictional RPG loot. Snap a photo of something interesting, get an AI-generated relic with rarity, stats, lore, and a Goblin Coin value, then add it to your persistent Treasury.&lt;/p&gt;

&lt;p&gt;The idea is simple: &lt;strong&gt;the world is the game, and your camera is your loot detector.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Loot Goblin also features quests, achievements, XP, levels, optional public leaderboards, and player-to-player trading. These features add progression, but the core loop starts outside: find something, photograph it, appraise it, and get back to exploring. Quests and collection goals can encourage real-world discoveries, while the app is designed around short interactions rather than endless scrolling.&lt;/p&gt;

&lt;h3&gt;
  
  
  A tiny example
&lt;/h3&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%2Fvoga12zef9k8qnebw7i5.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%2Fvoga12zef9k8qnebw7i5.jpg" alt="A red maple leaf resting on a rough gray stone surface" width="573" height="349"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1ep3lxxa1dwqm40klxu0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F1ep3lxxa1dwqm40klxu0.png" alt="Loot Goblin app interface showing the outdoor discovery and relic appraisal experience" width="800" height="659"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbexu5cta39wa4rp3ab3m.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fbexu5cta39wa4rp3ab3m.png" alt="Loot Goblin appraisal card for a red maple leaf, showing its rarity, fictional RPG stats, lore, and Goblin Coin value" width="800" height="706"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The leaf didn't change. The way I looked at them did.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Video Drive Link:&lt;/strong&gt; &lt;a href="https://drive.google.com/file/d/1z5ygoBzX96jh0Souu3-A4Zilrn1B201q/view?usp=sharing" rel="noopener noreferrer"&gt;https://drive.google.com/file/d/1z5ygoBzX96jh0Souu3-A4Zilrn1B201q/view?usp=sharing&lt;/a&gt;&lt;br&gt;
&lt;strong&gt;Try it live:&lt;/strong&gt; &lt;a href="https://loot-goblin.onrender.com/" rel="noopener noreferrer"&gt;https://loot-goblin.onrender.com/&lt;/a&gt;&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;GitHub repository:&lt;/strong&gt; &lt;a href="https://github.com/Gauthamkv14/irl-loot-goblin" rel="noopener noreferrer"&gt;https://github.com/Gauthamkv14/irl-loot-goblin&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The project uses React, Vite, and Tailwind CSS for the frontend, Node.js and Express for the backend, and Supabase for authentication and persistent data. AI image appraisal uses the Dots3-Note Preview model through OpenRouter.&lt;/p&gt;

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

&lt;p&gt;The appraisal pipeline separates AI-generated creativity from the game's authoritative rules.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Browser-side image preparation:&lt;/strong&gt; The selected image is resized in the browser before being sent for appraisal, helping reduce upload size.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI appraisal:&lt;/strong&gt; The server sends the image to the configured vision model through OpenRouter to generate a proposed relic name, description, lore, and related appraisal details.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Server-side rarity roll:&lt;/strong&gt; The server determines the final rarity and associated game rewards rather than trusting the model to award them.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;HMAC signing:&lt;/strong&gt; The server signs the resulting loot payload using HMAC-SHA256. This lets the server detect forged or modified loot payloads instead of blindly trusting item data submitted by the client.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Treasury save:&lt;/strong&gt; Once the appraisal and relevant server-side checks succeed, the item can be saved to the player's persistent inventory.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The model is configured through an environment variable, &lt;code&gt;MODEL_ID&lt;/code&gt;, with OpenRouter's API base URL configured separately. This makes the integration designed to be swappable, although switching to a second model has not been verified end to end.&lt;/p&gt;

&lt;p&gt;The project also includes server-side validation and security checks around important game actions. I am not claiming a tested model-output retry or fallback mechanism here.&lt;/p&gt;

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

&lt;p&gt;Loot Goblin uses an open-weight model rather than making a proprietary model the only possible creative engine. The current implementation uses hosted inference through OpenRouter, so it is &lt;strong&gt;not local or offline inference&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Open weights and a documented license make experimentation and future replacement possible, while the application retains control over rarity, signatures, and progression.&lt;/p&gt;

&lt;p&gt;There is a practical hardware trade-off, too. The model card describes a 280B-parameter mixture-of-experts model with 16B active parameters and recommends an eight-GPU node. Running it locally is unrealistic for most individual developers. A smaller model would be a more practical direction for future local inference.&lt;/p&gt;

&lt;p&gt;There is also a privacy consideration: &lt;strong&gt;photos submitted for appraisal are sent through OpenRouter to the selected model provider for inference.&lt;/strong&gt; Data retention and training practices can vary by provider and endpoint. Users should avoid uploading sensitive images and review the applicable data policies, especially when using a free endpoint.&lt;/p&gt;

&lt;p&gt;Open innovation, for me, means keeping the creative component replaceable instead of hard-wiring the entire game to one model or provider.&lt;/p&gt;

&lt;h2&gt;
  
  
  Limitations and What's Next
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Hosted inference:&lt;/strong&gt; Appraisal requires an internet connection and depends on the selected model provider's availability.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Free endpoint limits:&lt;/strong&gt; Rate limits, temporary unavailability, and variable latency can affect the experience.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fictional rewards:&lt;/strong&gt; Loot stats, rarity, and Goblin Coin values are game mechanics, not real-world valuations or factual measurements.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;First visit:&lt;/strong&gt; Render's free service may take up to around a minute to wake after inactivity, so the first visit can be slower than subsequent ones.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model flexibility:&lt;/strong&gt; The integration is designed to be configurable, but an alternative model has not been verified end to end.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Future direction:&lt;/strong&gt; Test alternative models, improve resilience to malformed model output, and investigate smaller models that could support local inference.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;LootGoblin is a playful experiment in making everyday outdoor discoveries feel a little more magical. The goal isn't to spend more time in an app. It's to notice more of the world around you.&lt;/p&gt;

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

&lt;p&gt;I built Loot Goblin with AI-assisted development in Google Antigravity, iterating through implementation, debugging, security fixes, and deployment.&lt;/p&gt;

&lt;p&gt;The goal was to go beyond a quick prototype. LootGoblin includes persistent inventory, server-side loot validation, progression systems, and trading.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Overall Hacktoberfest Open-Source AI Challenge - Week 1: Touch Grass.&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I'm entering the overall challenge. I'm not claiming a partner-specific prize category without verifying that my implementation meets its eligibility requirements.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Touch grass 🍃. Take a photo 📸. Find loot 💰.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Made with 💚 by GKV🙃&lt;/p&gt;

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