<?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: Sasi-019</title>
    <description>The latest articles on DEV Community by Sasi-019 (@sasi019).</description>
    <link>https://dev.to/sasi019</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%2F4158861%2F71b26118-613e-48f9-8037-91bd0542eed1.png</url>
      <title>DEV Community: Sasi-019</title>
      <link>https://dev.to/sasi019</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sasi019"/>
    <language>en</language>
    <item>
      <title>Gatherly — Personalized AI Event Studio</title>
      <dc:creator>Sasi-019</dc:creator>
      <pubDate>Sun, 18 Oct 2026 14:49:03 +0000</pubDate>
      <link>https://dev.to/sasi019/gatherly-personalized-ai-event-studio-18h3</link>
      <guid>https://dev.to/sasi019/gatherly-personalized-ai-event-studio-18h3</guid>
      <description>&lt;p&gt;✨ Introducing &lt;strong&gt;Gatherly — Personalized AI Event Studio!&lt;/strong&gt; 🎉&lt;/p&gt;

&lt;p&gt;Planning an event is more than organizing tasks — it's about bringing your ideas to life. Gatherly is designed to be your personalized AI assistant, adapting to your event, theme, preferences, and budget.&lt;/p&gt;

&lt;p&gt;🎨 Explore creative themes and decoration ideas&lt;br&gt;&lt;br&gt;
📋 Plan events, schedules, and activities&lt;br&gt;&lt;br&gt;
✍️ Generate speeches, invitations, and promotional content&lt;br&gt;&lt;br&gt;
📸 Get photography ideas and shot lists&lt;br&gt;&lt;br&gt;
💰 Organize budgets, materials, and practical alternatives  &lt;/p&gt;

&lt;p&gt;Our vision is to make event planning more creative, organized, and personalized with AI.&lt;/p&gt;

&lt;p&gt;Built with &lt;strong&gt;React, Tailwind CSS, FastAPI, and LangGraph&lt;/strong&gt;, Gatherly is a step toward making event planning smarter and more accessible. 🚀&lt;br&gt;
🔗 GitHub Repository: &lt;a href="https://github.com/Sasi-019/Gatherly" rel="noopener noreferrer"&gt;https://github.com/Sasi-019/Gatherly&lt;/a&gt;&lt;br&gt;
🎥 Project video: &lt;a href="https://youtu.be/cvuzhuVIbNs" rel="noopener noreferrer"&gt;https://youtu.be/cvuzhuVIbNs&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'd love to hear your feedback and suggestions as I continue developing Gatherly!&lt;/p&gt;

&lt;h1&gt;
  
  
  Gatherly #AI #devchallengesvg #hf26challengesvg
&lt;/h1&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>TouchGrass 🌿 — A Personalized AI Agent That Gets You Off the Screen</title>
      <dc:creator>Sasi-019</dc:creator>
      <pubDate>Sun, 11 Oct 2026 06:54:09 +0000</pubDate>
      <link>https://dev.to/sasi019/touchgrass-a-personalized-ai-agent-that-gets-you-off-the-screen-57ik</link>
      <guid>https://dev.to/sasi019/touchgrass-a-personalized-ai-agent-that-gets-you-off-the-screen-57ik</guid>
      <description>&lt;p&gt;The screen should be the shortest part of the experience.&lt;/p&gt;

&lt;p&gt;This is my submission for the Hacktoberfest Open-Source AI Challenge — Week 1: Touch Grass.&lt;/p&gt;

&lt;p&gt;What if your AI assistant didn't try to keep you chatting with it, but instead helped you step away from your screen and do something meaningful in the real world?&lt;/p&gt;

&lt;p&gt;That's the idea behind TouchGrass — a personalized AI agent that learns what you enjoy, considers your current situation, and gives you one realistic offline challenge.&lt;/p&gt;

&lt;p&gt;Instead of overwhelming you with random activity suggestions, TouchGrass learns from your interests, preferences, previous activities, and feedback to make future recommendations more relevant.&lt;/p&gt;

&lt;p&gt;🌱 What I Built&lt;/p&gt;

&lt;p&gt;TouchGrass is a full-stack application designed to reduce passive screen time and encourage real-world experiences.&lt;/p&gt;

&lt;p&gt;The user journey is simple:&lt;/p&gt;

&lt;p&gt;Sign Up → Discover Your Interests → Ask the Agent → Get One Challenge → Go Outside → Share Feedback → Get Better Recommendations&lt;/p&gt;

&lt;p&gt;Users can tell the agent things like:&lt;/p&gt;

&lt;p&gt;"I have 30 minutes free."&lt;/p&gt;

&lt;p&gt;"Suggest something outdoors."&lt;/p&gt;

&lt;p&gt;"Give me something completely new."&lt;/p&gt;

&lt;p&gt;"Surprise me!"&lt;/p&gt;

&lt;p&gt;The agent uses the available profile information and relevant context to suggest one activity that fits the user's situation.&lt;/p&gt;

&lt;p&gt;For example, someone who enjoys photography and nature might receive a challenge to spend 30 minutes observing interesting natural textures and capturing one final photograph.&lt;/p&gt;

&lt;p&gt;The objective isn't to maximize engagement with the app. It's to help users leave the screen behind.&lt;/p&gt;

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

&lt;p&gt;Live application: &lt;a href="https://touchgrass-project.onrender.com/" rel="noopener noreferrer"&gt;https://touchgrass-project.onrender.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Video demonstration: &lt;a href="https://youtu.be/y7RaCb7b4W8" rel="noopener noreferrer"&gt;https://youtu.be/y7RaCb7b4W8&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The video demonstrates the application and its interface. Try the live deployment to explore the available features.&lt;/p&gt;

&lt;p&gt;💻 Code&lt;/p&gt;

&lt;p&gt;GitHub repository: [Insert your public GitHub repository URL here]&lt;/p&gt;

&lt;p&gt;The project is organized into a React frontend and a Python backend, with dedicated modules for authentication, profile discovery, agent orchestration, activity generation, and feedback-driven personalization.&lt;/p&gt;

&lt;p&gt;The repository includes the application source code and supporting configuration and tests.&lt;/p&gt;

&lt;p&gt;🛠️ How I Built It&lt;/p&gt;

&lt;p&gt;Technology stack&lt;/p&gt;

&lt;p&gt;Frontend: React, Vite, Tailwind CSS&lt;/p&gt;

&lt;p&gt;Backend: Python, FastAPI, SQLAlchemy&lt;/p&gt;

&lt;p&gt;Database: PostgreSQL&lt;/p&gt;

&lt;p&gt;Agent orchestration: LangGraph&lt;/p&gt;

&lt;p&gt;Language model: Specify the model and inference provider actually used in the deployed version&lt;/p&gt;

&lt;p&gt;Authentication: JWT and bcrypt&lt;/p&gt;

&lt;p&gt;Context tools: Weather information, time, and optional browser geolocation&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;User authentication and profile discovery&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Users create accounts and sign in before accessing their personalized experience. Passwords are hashed rather than stored in plaintext, and authenticated requests are authorized using JWTs.&lt;/p&gt;

&lt;p&gt;During onboarding, users describe their interests, activities they want to explore, dislikes, available time, and social preferences.&lt;/p&gt;

&lt;p&gt;The application converts these responses into structured profile information that can be used by the agent.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Persistent memory&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;PostgreSQL stores user profiles, preferences, activity history, and feedback.&lt;/p&gt;

&lt;p&gt;This means the application can use relevant information from previous sessions rather than treating every request as a completely new conversation.&lt;/p&gt;

&lt;p&gt;For example, if a user repeatedly enjoys nature-related activities, future challenges can reflect that preference while still introducing new experiences.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;The agent workflow&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;LangGraph orchestrates the agent's multi-step workflow. It is responsible for coordinating the model, stored profile information, context tools, and validation steps.&lt;/p&gt;

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

&lt;p&gt;Load the user's profile and recent activity history.&lt;/p&gt;

&lt;p&gt;Understand the user's request and available time.&lt;/p&gt;

&lt;p&gt;Retrieve relevant context, such as weather, when needed.&lt;/p&gt;

&lt;p&gt;Generate a personalized offline activity.&lt;/p&gt;

&lt;p&gt;Validate the activity against practical constraints and previous activities.&lt;/p&gt;

&lt;p&gt;Regenerate the suggestion if it fails validation.&lt;/p&gt;

&lt;p&gt;Return one clear challenge to the user.&lt;/p&gt;

&lt;p&gt;This separates the agent's workflow from the language model itself.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Feedback-driven personalization&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;After completing an activity, users can rate their experience and optionally explain what they liked or disliked.&lt;/p&gt;

&lt;p&gt;That feedback updates their stored preferences and helps guide future recommendations.&lt;/p&gt;

&lt;p&gt;The system improves personalization through memory updates; this does not mean the language model is automatically fine-tuned after each interaction.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Privacy and user control&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;TouchGrass is designed to minimize unnecessary data collection.&lt;/p&gt;

&lt;p&gt;Passwords are hashed.&lt;/p&gt;

&lt;p&gt;Authenticated endpoints enforce user-specific access.&lt;/p&gt;

&lt;p&gt;Location access is optional and initiated by the user.&lt;/p&gt;

&lt;p&gt;Users can continue using the application without granting location access.&lt;/p&gt;

&lt;p&gt;API keys and other secrets belong in backend environment variables rather than frontend code.&lt;/p&gt;

&lt;p&gt;🌍 Why Does Open Innovation Matter?&lt;/p&gt;

&lt;p&gt;An application like TouchGrass benefits from open-source tools because its workflow requires more than a single model call.&lt;/p&gt;

&lt;p&gt;An open-source agent framework such as LangGraph makes it possible to inspect and customize the workflow that coordinates profile memory, context retrieval, activity generation, and validation.&lt;/p&gt;

&lt;p&gt;Open tools also make the architecture easier to extend. Developers can experiment with different language models, replace individual components, improve validation rules, and adapt the application without rebuilding the entire system.&lt;/p&gt;

&lt;p&gt;For a project focused on personalization, transparency and experimentation matter. The system should be understandable and adaptable rather than locked into a single implementation.&lt;/p&gt;

&lt;p&gt;My goal is to keep the project modular so that open-weight models and additional open-source components can be integrated as the application evolves.&lt;/p&gt;

&lt;p&gt;🔄 My Agent Session&lt;/p&gt;

&lt;p&gt;The agent workflow is designed to connect user preferences, current context, activity generation, validation, and feedback-driven memory updates.&lt;/p&gt;

&lt;p&gt;Agent session: [Add a DevRelay session link if you have one]&lt;/p&gt;

&lt;p&gt;This section is optional. If you haven't recorded a session using DevRelay, you can remove it.&lt;/p&gt;

&lt;p&gt;🏆 Prize Categories&lt;/p&gt;

&lt;p&gt;Potential category: Best Use of Render&lt;/p&gt;

&lt;p&gt;TouchGrass is deployed on Render, and the live application is available at:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://touchgrass-project.onrender.com/" rel="noopener noreferrer"&gt;https://touchgrass-project.onrender.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Include this category only if the deployment meets the challenge's requirements for using Render.&lt;/p&gt;

&lt;p&gt;Remove other partner categories unless you have actually integrated their qualifying products or services.&lt;/p&gt;

&lt;p&gt;🔮 What's Next?&lt;/p&gt;

&lt;p&gt;Some possible future improvements include:&lt;/p&gt;

&lt;p&gt;Google Calendar integration for activity planning around a user's schedule.&lt;/p&gt;

&lt;p&gt;Better nearby-place discovery.&lt;/p&gt;

&lt;p&gt;More diverse activity exploration based on learned interests.&lt;/p&gt;

&lt;p&gt;Further evaluation of open-weight language models.&lt;/p&gt;

&lt;p&gt;Improved agent tracing and validation metrics.&lt;/p&gt;

&lt;p&gt;These are future goals rather than claims about features already implemented.&lt;/p&gt;

&lt;p&gt;Final Thoughts&lt;/p&gt;

&lt;p&gt;TouchGrass started with a simple question:&lt;/p&gt;

&lt;p&gt;Can we build AI that helps people spend less time using AI?&lt;/p&gt;

&lt;p&gt;I believe a useful assistant should sometimes give you the answer you need and then get out of your way.&lt;/p&gt;

&lt;p&gt;Ask for a challenge. Put the phone down. Experience the real world. Come back only when you have something to share.&lt;/p&gt;

&lt;p&gt;The screen should be the shortest part of the experience. 🌿&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>MemoMate: An AI Personal Assistant Built for a Friend</title>
      <dc:creator>Sasi-019</dc:creator>
      <pubDate>Sun, 04 Oct 2026 18:25:07 +0000</pubDate>
      <link>https://dev.to/sasi019/memomate-an-ai-personal-assistant-built-for-a-friend-1plh</link>
      <guid>https://dev.to/sasi019/memomate-an-ai-personal-assistant-built-for-a-friend-1plh</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;MemoMate&lt;/strong&gt;, an AI-powered personal productivity assistant for a friend who wanted a simpler way to manage everyday tasks, reminders, lists, and important information.&lt;/p&gt;

&lt;p&gt;Instead of opening different apps for different tasks, the user can interact with MemoMate using natural language.&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;"Remind me to submit my assignment tomorrow at 10 AM."&lt;/li&gt;
&lt;li&gt;"Create a shopping list."&lt;/li&gt;
&lt;li&gt;"Add milk to my shopping list."&lt;/li&gt;
&lt;li&gt;"Show my lists."&lt;/li&gt;
&lt;li&gt;"What do I have tomorrow?"&lt;/li&gt;
&lt;li&gt;"Remember that my project deadline is next Friday."&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;MemoMate understands these requests and turns them into actions such as creating reminders, managing lists and list items, saving memories, and retrieving information.&lt;/p&gt;

&lt;p&gt;The goal was to build something that feels more like talking to a personal assistant rather than filling out forms.&lt;/p&gt;

&lt;h3&gt;
  
  
  Main Features
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;AI-powered natural-language interaction&lt;/li&gt;
&lt;li&gt;Reminders and recurring reminders&lt;/li&gt;
&lt;li&gt;Shopping and custom lists&lt;/li&gt;
&lt;li&gt;Add, complete, and remove list items&lt;/li&gt;
&lt;li&gt;Calendar and upcoming events&lt;/li&gt;
&lt;li&gt;Personal memory&lt;/li&gt;
&lt;li&gt;Notifications&lt;/li&gt;
&lt;li&gt;Voice interaction&lt;/li&gt;
&lt;li&gt;User-specific data and actions&lt;/li&gt;
&lt;li&gt;Deployed web application&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;Try the live application:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://memomate-frontend-vjt2.onrender.com" rel="noopener noreferrer"&gt;🚀 Try MemoMate Live&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

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

&lt;p&gt;The complete source code is available on GitHub:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;&lt;a href="https://github.com/Sasi-019/MemoMate" rel="noopener noreferrer"&gt;💻 View MemoMate on GitHub&lt;/a&gt;&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The repository contains both the React frontend and FastAPI backend.&lt;/p&gt;

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

&lt;p&gt;MemoMate is built as a full-stack application.&lt;/p&gt;

&lt;h3&gt;
  
  
  Frontend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;React&lt;/li&gt;
&lt;li&gt;Vite&lt;/li&gt;
&lt;li&gt;JavaScript&lt;/li&gt;
&lt;li&gt;CSS&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The frontend provides the assistant interface along with pages for reminders, lists, calendar information, and notifications.&lt;/p&gt;

&lt;h3&gt;
  
  
  Backend
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Python&lt;/li&gt;
&lt;li&gt;FastAPI&lt;/li&gt;
&lt;li&gt;SQLAlchemy&lt;/li&gt;
&lt;li&gt;PostgreSQL / SQLite&lt;/li&gt;
&lt;li&gt;JWT-based authentication&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The backend handles users, reminders, lists, list items, memories, and AI-powered assistant requests.&lt;/p&gt;

&lt;h3&gt;
  
  
  AI
&lt;/h3&gt;

&lt;p&gt;For the AI layer, I used &lt;strong&gt;Hugging Face&lt;/strong&gt; with an open-weight &lt;strong&gt;Qwen&lt;/strong&gt; model.&lt;/p&gt;

&lt;p&gt;The AI is not given unrestricted control over the database. Instead, MemoMate uses an action-based architecture.&lt;/p&gt;

&lt;p&gt;The basic flow is:&lt;/p&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
text
User request
     ↓
AI / Intent Recognition
     ↓
Structured Action
     ↓
Validation
     ↓
Action Engine
     ↓
Database
     ↓
Response to User
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

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