<?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: CrymsynRavyn</title>
    <description>The latest articles on DEV Community by CrymsynRavyn (@crymsynravyn).</description>
    <link>https://dev.to/crymsynravyn</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%2F3278430%2F8ac5ae33-96e8-41ae-af6b-189c47895578.png</url>
      <title>DEV Community: CrymsynRavyn</title>
      <link>https://dev.to/crymsynravyn</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/crymsynravyn"/>
    <language>en</language>
    <item>
      <title>Things to Recall :2 Week Journey of My First pp to Side Hustle</title>
      <dc:creator>CrymsynRavyn</dc:creator>
      <pubDate>Mon, 19 Oct 2026 06:59:49 +0000</pubDate>
      <link>https://dev.to/crymsynravyn/things-to-recall-2-week-journey-of-my-first-pp-to-side-hustle-4p3g</link>
      <guid>https://dev.to/crymsynravyn/things-to-recall-2-week-journey-of-my-first-pp-to-side-hustle-4p3g</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;wo weeks ago, I built my first app, Jason's Jotter, to help my friend with ADHD capture thoughts and reminders before they disappeared. Then vanish without clutter when finished&lt;/p&gt;

&lt;p&gt;I didn't wait until I knew everything. I started with one simple idea, and a few friends soon asked to use it.&lt;/p&gt;

&lt;p&gt;That idea has evolved into Things to Recall, a voice-first AI reminder application with individual user accounts, persistent storage, and a live website.&lt;/p&gt;

&lt;p&gt;Users can speak reminders naturally instead of typing them. They can also review, edit, and delete their reminders while maintaining privacy.&lt;/p&gt;

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


&lt;div&gt;
    &lt;iframe src="https://www.youtube.com/embed/n_AJoljDPAo" width="315" height="560"&gt;
    &lt;/iframe&gt;
  &lt;/div&gt;


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


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/CrymsynRavyn" rel="noopener noreferrer"&gt;
        CrymsynRavyn
      &lt;/a&gt; / &lt;a href="https://github.com/CrymsynRavyn/things-to-recall" rel="noopener noreferrer"&gt;
        things-to-recall
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      a notepad to remember 
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Things to Recall 🎤&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;A voice-first, distraction-free reminder app for ADHD-friendly workflows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;One button. Talk. Reminders appear. Done.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What It Does&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Press the big button&lt;/strong&gt; → speak what you need to remember&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI listens&lt;/strong&gt; → Whisper transcribes it → Gemma extracts the core reminder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reminders appear&lt;/strong&gt; on a simple list&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check them off&lt;/strong&gt; → they fade away&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Undo within 10 seconds&lt;/strong&gt; if you checked by mistake&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;No settings, no menus, no friction.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Tech Stack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend&lt;/strong&gt;: HTML/CSS/JS with MediaRecorder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend&lt;/strong&gt;: Python Flask&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speech-to-Text&lt;/strong&gt;: faster-whisper (int8 CPU, 1-2 sec)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reminder Extraction&lt;/strong&gt;: Ollama + Gemma3:4b (local LLM, open-weight)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Storage&lt;/strong&gt;: Local JSON file (no cloud, no databases)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;All inference is local. No API keys. No closed services.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;How It Works&lt;/h2&gt;

&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Press and hold the button&lt;/strong&gt; → Browser records audio via MediaRecorder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Release&lt;/strong&gt; → Audio blob uploads to Flask backend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;faster-whisper transcribes&lt;/strong&gt; → Speech converted to text on the server&lt;/li&gt;
&lt;li&gt;…&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/CrymsynRavyn/things-to-recall" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;I developed Things to Recall using Python, Flask, SQLite, faster-whisper, Ollama, and Gemma 3.&lt;/p&gt;

&lt;p&gt;When someone records a reminder, faster-whisper converts their speech into text. Gemma 3 then processes the transcription into a concise reminder that can be saved and managed.&lt;/p&gt;

&lt;p&gt;SQLite stores reminders for individual users, while Flask handles the web application and authentication.&lt;/p&gt;

&lt;p&gt;I deployed the application to an Oracle Cloud Ubuntu server and used Caddy to provide HTTPS access through my own domain.&lt;/p&gt;

&lt;p&gt;The development process included building the interface, adding user accounts, connecting the database, troubleshooting errors, and testing the voice-reminder workflow.&lt;/p&gt;

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

&lt;p&gt;Open innovation made this project possible without requiring an expensive commercial AI service.&lt;/p&gt;

&lt;p&gt;Locally hosted AI tools give me greater control over the application's behavior, deployment, and operating costs.&lt;/p&gt;

&lt;p&gt;Most importantly, they gave me the opportunity to learn by building something useful.&lt;/p&gt;

&lt;p&gt;I believe technology should be accessible to people with ideas, even when they are just beginning their development journey.&lt;/p&gt;

&lt;h2&gt;
  
  
  My First User
&lt;/h2&gt;

&lt;p&gt;My caseworker, Alecia, saw a demonstration of my original app and asked, "Can I use this?"&lt;/p&gt;

&lt;p&gt;She immediately recognized its potential to help her remember tasks and follow-ups while working with different clients.Her interest helped me realize that an application inspired by one person's needs could benefit many others.I value her input soI did not accept payment she likes the ease of use and the light weight  remember until its finished then forget it ever happened affect of not collecting completed reminders or &lt;/p&gt;

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

&lt;p&gt;Best Use of Gemma,&lt;/p&gt;

</description>
      <category>devchallenge</category>
      <category>hf26challenge</category>
    </item>
    <item>
      <title>Things to Recall:I built my First App for My Boyfriend's ADHD Sanity</title>
      <dc:creator>CrymsynRavyn</dc:creator>
      <pubDate>Sun, 04 Oct 2026 22:31:22 +0000</pubDate>
      <link>https://dev.to/crymsynravyn/things-to-recalli-built-my-first-app-for-my-boyfriends-adhd-sanity-29j1</link>
      <guid>https://dev.to/crymsynravyn/things-to-recalli-built-my-first-app-for-my-boyfriends-adhd-sanity-29j1</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 this for Jason, my boyfriend of 12 years — he's always on the go, has ADHD, and forgets things. He's not tech-friendly, so it had to be extra simple. For my very first app, I made him a quick voice-to-do list for everything he needs to remember throughout the day. No more carrying paper and pen (which he loses), no more texting me multiple times a day so I can remind him. It lives in our bubble, so his thoughts never pass through an external service — complete privacy.&lt;/p&gt;

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


&lt;div&gt;
    &lt;iframe src="https://www.youtube.com/embed/Q03Zbhe-TjY" width="315" height="560"&gt;
    &lt;/iframe&gt;
  &lt;/div&gt;


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


&lt;div class="ltag-github-readme-tag"&gt;
  &lt;div class="readme-overview"&gt;
    &lt;h2&gt;
      &lt;img src="https://assets.dev.to/assets/github-logo-5a155e1f9a670af7944dd5e12375bc76ed542ea80224905ecaf878b9157cdefc.svg" alt="GitHub logo"&gt;
      &lt;a href="https://github.com/CrymsynRavyn" rel="noopener noreferrer"&gt;
        CrymsynRavyn
      &lt;/a&gt; / &lt;a href="https://github.com/CrymsynRavyn/things-to-recall" rel="noopener noreferrer"&gt;
        things-to-recall
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      a notepad to remember 
    &lt;/h3&gt;
  &lt;/div&gt;
  &lt;div class="ltag-github-body"&gt;
    
&lt;div id="readme" class="md"&gt;&lt;div class="markdown-heading"&gt;
&lt;h1 class="heading-element"&gt;Things to Recall 🎤&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;A voice-first, distraction-free reminder app for ADHD-friendly workflows.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;One button. Talk. Reminders appear. Done.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;What It Does&lt;/h2&gt;
&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Press the big button&lt;/strong&gt; → speak what you need to remember&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI listens&lt;/strong&gt; → Whisper transcribes it → Gemma extracts the core reminder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reminders appear&lt;/strong&gt; on a simple list&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Check them off&lt;/strong&gt; → they fade away&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Undo within 10 seconds&lt;/strong&gt; if you checked by mistake&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;No settings, no menus, no friction.&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Tech Stack&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Frontend&lt;/strong&gt;: HTML/CSS/JS with MediaRecorder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Backend&lt;/strong&gt;: Python Flask&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Speech-to-Text&lt;/strong&gt;: faster-whisper (int8 CPU, 1-2 sec)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reminder Extraction&lt;/strong&gt;: Ollama + Gemma3:4b (local LLM, open-weight)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Storage&lt;/strong&gt;: Local JSON file (no cloud, no databases)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;All inference is local. No API keys. No closed services.&lt;/strong&gt;&lt;/p&gt;

&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;How It Works&lt;/h2&gt;

&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Press and hold the button&lt;/strong&gt; → Browser records audio via MediaRecorder&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Release&lt;/strong&gt; → Audio blob uploads to Flask backend&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;faster-whisper transcribes&lt;/strong&gt; → Speech converted to text on the server&lt;/li&gt;
&lt;li&gt;…&lt;/li&gt;
&lt;/ol&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/CrymsynRavyn/things-to-recall" rel="noopener noreferrer"&gt;View on GitHub&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;


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

&lt;p&gt;I used open-source AI I'm familiar with: faster-whisper for speech-to-text and Gemma 3 for extracting the reminders. They're both open-weight models — Whisper's weights are from OpenAI, Gemma's are from Google — so there are no API calls and no black boxes. There's no agent harness because it's a pipeline, not an agent. You record your voice, it transcribes, extracts the reminder, and displays it. When you're done, it deletes.&lt;br&gt;
I used Flask for the backend and Ollama for serving Gemma locally. Everything runs locally because privacy was the whole point. The models download once, then no internet is needed. Jason just opens it on his phone and uses it whenever.&lt;br&gt;
The whole app exists because it needed to be personal for Jason. He always has his phone. His privacy is everything, so it costs nothing to run. We can swap models as his needs change, and build on it. I run the whole thing on a small server I manage. &lt;/p&gt;

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

&lt;p&gt;Open innovation mattered because Jason's voice — his actual words — never gets sent to a third-party AI service. Everything runs on models I control, safeguarded for him. There are zero API costs, so he can use it as much as he wants, say as much as he wants, delete and change things as needed, without a bill building up.&lt;br&gt;
If the models need upgrading — because Ollama releases a better version, or because Jason's needs change — it's a simple swap. It works offline, too. On days he's out of service or out of range, it still works. His data isn't shared with the wide world.&lt;/p&gt;

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

&lt;p&gt;Best Use of Gemma&lt;/p&gt;

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