<?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: Nicholas</title>
    <description>The latest articles on DEV Community by Nicholas (@nicholascloud4).</description>
    <link>https://dev.to/nicholascloud4</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%2F4160105%2F37587d0f-be8f-4c1a-9a29-86ac9de504eb.jpg</url>
      <title>DEV Community: Nicholas</title>
      <link>https://dev.to/nicholascloud4</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nicholascloud4"/>
    <language>en</language>
    <item>
      <title>Pulse &amp; Pressure</title>
      <dc:creator>Nicholas</dc:creator>
      <pubDate>Sun, 04 Oct 2026 02:18:45 +0000</pubDate>
      <link>https://dev.to/nicholascloud4/pulse-pressure-117g</link>
      <guid>https://dev.to/nicholascloud4/pulse-pressure-117g</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;&lt;strong&gt;Pulse &amp;amp; Pressure&lt;/strong&gt; is a private blood pressure and pulse log, built for my friends and family.&lt;/p&gt;

&lt;p&gt;So I built something that fits how they already write readings down. They can type a note the way they'd jot it on their phone, like &lt;em&gt;"128 over 82, pulse 71, after coffee"&lt;/em&gt;, and a small open-weight AI model running on their own computer turns it into clean data. On days they just want to tap in three numbers, there's a quick-entry form with buttons for position (sitting, standing, lying down) and tags (medication taken, stressed, after exercise, caffeine).&lt;/p&gt;

&lt;p&gt;Once a reading is saved, the app:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Labels it&lt;/strong&gt; using the American Heart Association's general ranges, from Normal through Elevated, Stage 1, Stage 2 and Hypertensive crisis&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Warns clearly&lt;/strong&gt; if a reading lands in the crisis range (above 180/120), with what to do next: wait five minutes and measure again, and when to call 911&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Shows a trend chart&lt;/strong&gt; of systolic, diastolic and pulse over the last 20 readings&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Keeps running averages&lt;/strong&gt; for the last 7 days, the last 30 days and all time&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Exports a CSV&lt;/strong&gt; to bring to a doctor's appointment, and &lt;strong&gt;restores&lt;/strong&gt; from that same file on a new phone&lt;/li&gt;
&lt;/ul&gt;

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

&lt;p&gt;&lt;a href="https://pulse-and-pressure.vercel.app/" rel="noopener noreferrer"&gt;https://pulse-and-pressure.vercel.app/&lt;/a&gt;&lt;/p&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/NicholasCloud4" rel="noopener noreferrer"&gt;
        NicholasCloud4
      &lt;/a&gt; / &lt;a href="https://github.com/NicholasCloud4/Pulse-and-Pressure" rel="noopener noreferrer"&gt;
        Pulse-and-Pressure
      &lt;/a&gt;
    &lt;/h2&gt;
    &lt;h3&gt;
      A private blood pressure and pulse log that keeps your readings on your own device, with trends, AHA categories and CSV export for your doctor.
    &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;Pulse and Pressure&lt;/h1&gt;
&lt;/div&gt;
&lt;p&gt;A private blood pressure and pulse log, built for a friend. Log a reading with a
quick form, or (when running on your own computer) type or dictate it the way
you'd write a phone note ("128 over 82, pulse 71, after coffee") and a small
open-weight model turns it into clean data.&lt;/p&gt;
&lt;p&gt;Readings are saved only on the device you use, in that browser's storage. There's
no account, no database server and no API bill, and health data is never sent
anywhere.&lt;/p&gt;
&lt;div class="markdown-heading"&gt;
&lt;h2 class="heading-element"&gt;Features&lt;/h2&gt;
&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Two ways to log:&lt;/strong&gt; a quick form (three numbers plus tap-to-pick position
and tags) for everyday use, or a free-text note read by a local model (when
running on your own computer with Ollama)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Position and tags:&lt;/strong&gt; sitting / standing / lying down; medication taken
stressed, after exercise, caffeine. The app remembers your usual position.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AHA categories:&lt;/strong&gt; each reading is labeled using general…&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;div class="gh-btn-container"&gt;&lt;a class="gh-btn" href="https://github.com/NicholasCloud4/Pulse-and-Pressure" 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;&lt;strong&gt;The AI: &lt;code&gt;llama3.2:3b&lt;/code&gt; running locally through &lt;a href="https://ollama.com" rel="noopener noreferrer"&gt;Ollama&lt;/a&gt;.&lt;/strong&gt; It runs on an ordinary PC with 11 GB of RAM, no GPU and no internet connection, and takes about 5–7 seconds per note.&lt;/p&gt;

&lt;p&gt;Getting a 3B-parameter model to reliably read messy health notes took a few layers:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Structured output.&lt;/strong&gt; Ollama is given a JSON schema, so the model can only answer with a list of readings (systolic, diastolic, pulse, with &lt;code&gt;null&lt;/code&gt; for anything missing). It never returns free-form text, and temperature is set to 0.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Rules plus worked examples.&lt;/strong&gt; The system prompt covers the traps, like &lt;em&gt;"10/2" and "7am" are dates and times, not readings&lt;/em&gt;. Six worked examples show the model how to handle multiple readings in one note, spelled-out numbers, and notes with no reading at all. Small models follow examples much better than rules.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;A plain-code safety net.&lt;/strong&gt; The model only reads the note and makes no medical decisions. Ordinary code checks whether values are believable (for example, systolic must be higher than diastolic) and assigns the AHA categories. The app always shows what the model read and asks you to confirm before anything is saved.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Measuring instead of guessing.&lt;/strong&gt; I wrote a test set of made-up notes with the correct answers, and kept a separate set of notes I never tuned against, to get an honest score&lt;/li&gt;
&lt;/ol&gt;

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

&lt;p&gt;Blood pressure readings are health data. With a closed AI API, every note my friend typed, numbers and context like &lt;em&gt;"felt dizzy"&lt;/em&gt; or &lt;em&gt;"forgot my meds"&lt;/em&gt;, would be sent to a third-party server, tied to an API key, and billed per request.&lt;/p&gt;

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