<?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: Tanuj Kumawat</title>
    <description>The latest articles on DEV Community by Tanuj Kumawat (@ktanuj).</description>
    <link>https://dev.to/ktanuj</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%2F4162750%2Ffb1a035d-b657-4c04-8141-82c4b4465c2b.jpg</url>
      <title>DEV Community: Tanuj Kumawat</title>
      <link>https://dev.to/ktanuj</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ktanuj"/>
    <language>en</language>
    <item>
      <title>SLEEPYHEAD</title>
      <dc:creator>Tanuj Kumawat</dc:creator>
      <pubDate>Mon, 05 Oct 2026 05:54:16 +0000</pubDate>
      <link>https://dev.to/ktanuj/sleepyhead-5ch1</link>
      <guid>https://dev.to/ktanuj/sleepyhead-5ch1</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;p&gt;&lt;strong&gt;What I Built&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I built &lt;strong&gt;Sleepyhead&lt;/strong&gt;, a local-first AI routine companion designed for a friend who struggles with maintaining a consistent sleep and study routine.&lt;/p&gt;

&lt;p&gt;Instead of building another generic sleep tracker, I wanted to make something that feels familiar to a developer: &lt;strong&gt;GitHub-style contributions, challenges, streaks, XP, badges, and progress tracking&lt;/strong&gt;, but focused on building a healthier and more consistent daily routine.&lt;/p&gt;

&lt;p&gt;Sleepyhead helps the user:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Track sleep, wake-up times, study sessions, and daily routines&lt;/li&gt;
&lt;li&gt;Complete small routine challenges&lt;/li&gt;
&lt;li&gt;Build consistency through streaks, XP, levels, and badges&lt;/li&gt;
&lt;li&gt;See their routine history through a GitHub-inspired contribution graph&lt;/li&gt;
&lt;li&gt;Prepare for upcoming exams with realistic study plans&lt;/li&gt;
&lt;li&gt;Get personalized insights based on their actual routine data&lt;/li&gt;
&lt;li&gt;Talk to an AI coach about study planning and bedtime decisions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The goal isn't to tell someone to suddenly become a perfect 5 AM person. It's about helping them make &lt;strong&gt;small, realistic improvements that they can actually maintain&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;I built it for a friend because this was a problem I could see in real life, rather than something I invented just to make an AI demo.&lt;/p&gt;

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

&lt;p&gt;&lt;strong&gt;Live Demo:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://dev-challenge1-sleepyhead-navy.vercel.app/" rel="noopener noreferrer"&gt;https://dev-challenge1-sleepyhead-navy.vercel.app/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Code&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;GitHub Repository:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;a href="https://github.com/k-tanuj/DevChallenge1-Sleepyhead" rel="noopener noreferrer"&gt;https://github.com/k-tanuj/DevChallenge1-Sleepyhead&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The repository contains the frontend, backend, local AI integration, data models, and setup instructions.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;How I Built It&lt;br&gt;
*&lt;/em&gt;&lt;br&gt;
Sleepyhead is built as a full-stack application with a local-first architecture.&lt;/p&gt;

&lt;p&gt;*&lt;em&gt;Tech Stack&lt;br&gt;
*&lt;/em&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend:&lt;/strong&gt; React, Vite, TypeScript, Tailwind CSS&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend:&lt;/strong&gt; FastAPI, Python&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Database:&lt;/strong&gt; SQLite&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI:&lt;/strong&gt; Ollama with an open-weight instruction model&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Charts &amp;amp; Visualization:&lt;/strong&gt; Recharts&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Local Development:&lt;/strong&gt; Ollama for local AI inference&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The AI isn't just a chatbot sitting on top of the application.&lt;/p&gt;

&lt;p&gt;Sleepyhead passes the user's actual routine data, study history, challenges, and upcoming exams to the AI so it can generate useful recommendations based on their current situation.&lt;/p&gt;

&lt;p&gt;For example, a user can say:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"I have an exam Friday and three chapters left."&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;Instead of simply responding with generic study advice, the AI can look at the available time, previous study behavior, and bedtime target and create a realistic plan.&lt;/p&gt;

&lt;p&gt;It can also answer questions such as:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;"Should I study another hour tonight?"&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The goal is to balance study progress with maintaining a sustainable routine.&lt;/p&gt;

&lt;p&gt;The application also generates insights from the user's historical data, such as identifying study periods where they are consistently more productive or noticing when late-night studying starts affecting their bedtime consistency.&lt;/p&gt;

&lt;h3&gt;
  
  
  Gamification
&lt;/h3&gt;

&lt;p&gt;I used a developer/community-inspired model for the gamification:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Personal Routine → Repository&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Challenges → Issues&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Healthy Actions → Contributions&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;AI Coach → Maintainer&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Routine Profile → README&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Achievements → Badges&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The contribution graph gives the user a visual history of their consistency, similar to the contribution graph developers already understand.&lt;/p&gt;

&lt;p&gt;Importantly, the system doesn't reward staying awake longer or studying until unhealthy hours. The focus is on &lt;strong&gt;consistency and sustainable progress&lt;/strong&gt;.&lt;/p&gt;

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

&lt;p&gt;Open innovation made it possible to build Sleepyhead around an AI system that can run &lt;strong&gt;locally instead of depending on a proprietary cloud API&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Using an open-weight model through Ollama means the core AI experience can run on the user's own machine.&lt;/p&gt;

&lt;p&gt;That matters for a personal routine application because the data involved can be quite private: sleep patterns, study habits, exam schedules, and daily routines.&lt;/p&gt;

&lt;p&gt;With local inference:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Personal routine data can stay on the user's machine&lt;/li&gt;
&lt;li&gt;There is no mandatory paid AI API&lt;/li&gt;
&lt;li&gt;The model can be changed or experimented with&lt;/li&gt;
&lt;li&gt;Developers can inspect and modify the AI pipeline&lt;/li&gt;
&lt;li&gt;The project remains accessible for experimentation and contribution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Open AI ecosystems also make projects like this more hackable. Instead of treating the model as a black-box API, I could design the application around the model and experiment with how real user data is passed into the AI.&lt;/p&gt;

&lt;p&gt;For me, that's the biggest value of open innovation here: &lt;strong&gt;the AI becomes something you can build with, inspect, modify, and run yourself.&lt;/strong&gt;&lt;/p&gt;

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

&lt;ul&gt;
&lt;li&gt;Build for a Friend&lt;/li&gt;
&lt;li&gt;Open Source / Open Innovation&lt;/li&gt;
&lt;li&gt;AI / Open-Weight AI&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Thanks for checking out Sleepyhead!&lt;/p&gt;

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