<?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: Arpan Ghosh</title>
    <description>The latest articles on DEV Community by Arpan Ghosh (@arpandesign).</description>
    <link>https://dev.to/arpandesign</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.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1308920%2F27948d4a-bc6f-40bc-af60-764b236ba845.jpg</url>
      <title>DEV Community: Arpan Ghosh</title>
      <link>https://dev.to/arpandesign</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/arpandesign"/>
    <language>en</language>
    <item>
      <title>Local Analysis of Garmin Activities and Fitness Data without Cloud</title>
      <dc:creator>Arpan Ghosh</dc:creator>
      <pubDate>Thu, 16 Apr 2026 14:48:43 +0000</pubDate>
      <link>https://dev.to/arpandesign/local-analysis-of-garmin-activities-and-fitness-data-without-cloud-4cap</link>
      <guid>https://dev.to/arpandesign/local-analysis-of-garmin-activities-and-fitness-data-without-cloud-4cap</guid>
      <description>&lt;p&gt;&lt;strong&gt;A high-performance, local-first analytics dashboard for your Garmin FIT files, built with Rust and DuckDB.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you are a runner, cyclist, or data-driven athlete, you probably rely on cloud platforms like Garmin Connect or Strava to track your progress. While these platforms offer great social features, they also mean your personal health and telemetry data is locked up in a third-party ecosystem. What if you want rapid offline access, custom analytics, or simply total privacy and control over your own workouts in a modern, sleek, interactive desktop app dashboard that works on your PC, regardless if it’s Windows, MacOS or Linux?&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.amazonaws.com%2Fuploads%2Farticles%2Fqbzjj9qcuyiz3ybhysop.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.amazonaws.com%2Fuploads%2Farticles%2Fqbzjj9qcuyiz3ybhysop.png" alt="Fit dashboard website" width="800" height="527"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Enter &lt;a href="https://fitdashboard.app/" rel="noopener noreferrer"&gt;FIT Dashboard&lt;/a&gt; — an open-source, lightning-fast activity analytics dashboard designed specifically for Garmin Activity .fit files. Available as a standalone desktop application or a self-hosted Docker web app, FIT Dashboard is built for performance and data ownership. Take a look at the interface here.&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.amazonaws.com%2Fuploads%2Farticles%2F2pvfbyvgdnel8xcsv0lw.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.amazonaws.com%2Fuploads%2Farticles%2F2pvfbyvgdnel8xcsv0lw.png" alt="Fit dashboard app" width="800" height="429"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Why FIT Dashboard?
&lt;/h2&gt;

&lt;p&gt;The core philosophy behind &lt;a href="https://fitdashboard.app/" rel="noopener noreferrer"&gt;FIT Dashboard&lt;/a&gt; is simple: your data should be yours, and exploring it should be blazing fast. You should be able to see overview stats, individual exercies, and compare one activity with another. Here is what sets it apart from traditional cloud-based trackers:&lt;/p&gt;

&lt;h2&gt;
  
  
  1. High-Performance Analytics with DuckDB
&lt;/h2&gt;

&lt;p&gt;Handling hundreds of activities with millions of data points (heart rate, cadence, power, GPS coordinates) can bring traditional databases to a crawl. &lt;a href="https://fitdashboard.app/" rel="noopener noreferrer"&gt;FIT Dashboard&lt;/a&gt; leverages DuckDB, an embedded analytical database, to perform rapid aggregations and automatic down-sampling for time-series queries. The result? Instantaneous chart loading and filtering, no matter how many marathons you’ve logged.&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.amazonaws.com%2Fuploads%2Farticles%2Fyr3sai50acfmx6gr8l3l.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.amazonaws.com%2Fuploads%2Farticles%2Fyr3sai50acfmx6gr8l3l.png" alt="Fit dashboard app" width="800" height="651"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Deep Interactive Visualizations
&lt;/h2&gt;

&lt;p&gt;The dashboard doesn’t just show you static numbers. It features interactive telemetry charts powered by ECharts, visualizing speed, heart rate, cadence, altitude, power, and temperature. You can zoom and pan seamlessly. Alongside the charts is a dynamic Activity Map built on MapLibre GL. Your route path changes color dynamically based on the metric you are analyzing (e.g., turning red when your heart rate spikes), and hover tool-tips provide exact telemetry details at every GPS coordinate.&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.amazonaws.com%2Fuploads%2Farticles%2Fdeahs0z4r0opgqgt6amz.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.amazonaws.com%2Fuploads%2Farticles%2Fdeahs0z4r0opgqgt6amz.png" alt="Fit dashboard app" width="800" height="410"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  3. Total Privacy &amp;amp; Flexible Deployment
&lt;/h2&gt;

&lt;p&gt;Because it parses FIT files natively using Rust, your data never leaves your machine unless you want it to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Desktop App:&lt;/strong&gt; Built with Tauri v2, you can run it natively on Windows, macOS, or Linux.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Self-Hosted:&lt;/strong&gt; Prefer a web-based approach? You can deploy it on your home server using the pre-built Docker image. It even includes session-based authentication and password protection out of the box.&lt;/p&gt;

&lt;h2&gt;
  
  
  4. Seamless Data Portability
&lt;/h2&gt;

&lt;p&gt;Data lock-in goes both ways. &lt;a href="https://fitdashboard.app/" rel="noopener noreferrer"&gt;FIT Dashboard&lt;/a&gt; makes it incredibly easy to bulk export your filtered activities. Need to move your data elsewhere? You can export single or batch workouts to CSV, JSON, GPX, or KML formats with a single click.&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.amazonaws.com%2Fuploads%2Farticles%2Fl0vx8o61tjq1rk7wk4y3.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.amazonaws.com%2Fuploads%2Farticles%2Fl0vx8o61tjq1rk7wk4y3.png" alt="Fit dashboard app" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Under the Hood: A Modern Tech Stack
&lt;/h2&gt;

&lt;p&gt;For the developers and tech enthusiasts, FIT Dashboard is a masterclass in modern, performant app architecture:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Backend (Rust):&lt;/strong&gt; Powers the robust data processing. It uses the native &lt;code&gt;fitparser&lt;/code&gt; crate for extraction without relying on external tools. Depending on how you run it, it utilizes either the Tauri framework for desktop or Axum for the REST API Docker deployment.&lt;br&gt;
&lt;strong&gt;Database:&lt;/strong&gt; DuckDB handles the heavy lifting of analytical queries and time-series downsampling.&lt;br&gt;
&lt;strong&gt;Frontend (React 18 &amp;amp; TypeScript):&lt;/strong&gt; Kept lightweight and snappy using Vite and Zustand for state management.&lt;br&gt;
&lt;strong&gt;UI/UX:&lt;/strong&gt; A beautiful glassmorphism design with instantaneous Dark/Light theme toggling, all built on clean CSS variables.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Get Started
&lt;/h2&gt;

&lt;p&gt;Getting your data into FIT Dashboard is straightforward. First, you can request a bulk export of your data directly from Garmin’s data management portal (which will give you a ZIP file of all your historical .fit files).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;From there:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Download the Desktop App&lt;/strong&gt;: Head over to the &lt;a href="https://github.com/arpanghosh8453/fit-dashboard/releases" rel="noopener noreferrer"&gt;Releases page on GitHub&lt;/a&gt; and grab the binary for your OS (Windows &lt;code&gt;.msi/.exe&lt;/code&gt;, macOS &lt;code&gt;.dmg&lt;/code&gt;, or Linux &lt;code&gt;.AppImage/.deb&lt;/code&gt;).&lt;/p&gt;

&lt;p&gt;Or &lt;strong&gt;Deploy via Docker&lt;/strong&gt;: Run &lt;code&gt;docker compose up -d&lt;/code&gt; using the provided configuration to spin it up on your local network.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Import:&lt;/strong&gt; Drag and drop your Garmin &lt;code&gt;.fit&lt;/code&gt; files into the import queue. The app will sequence the processing and automatically detect duplicates.&lt;/p&gt;

&lt;h2&gt;
  
  
  Final Thoughts
&lt;/h2&gt;

&lt;p&gt;We are living in an era where we generate gigabytes of personal health and fitness telemetry. Relying solely on cloud providers to store and visualize this data leaves us vulnerable to platform changes, paywalls, or internet outages.&lt;/p&gt;

&lt;p&gt;FIT Dashboard is a brilliant open-source solution that proves you don’t need to sacrifice beautiful UI or performance to own your data.&lt;/p&gt;

&lt;p&gt;Ready to take control of your fitness data? Check out the project, download a release, and consider giving it a star on GitHub: &lt;a href="//github.com/arpanghosh8453/fit-dashboard"&gt;Fit Dashboard Github&lt;/a&gt;.&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>database</category>
      <category>rust</category>
      <category>showdev</category>
    </item>
    <item>
      <title>How I Built a Free Tool to Visualize Garmin Health Data in Grafana Dashboards</title>
      <dc:creator>Arpan Ghosh</dc:creator>
      <pubDate>Mon, 21 Apr 2025 08:54:12 +0000</pubDate>
      <link>https://dev.to/arpandesign/how-i-built-a-free-tool-to-visualize-garmin-health-data-in-grafana-dashboards-2b95</link>
      <guid>https://dev.to/arpandesign/how-i-built-a-free-tool-to-visualize-garmin-health-data-in-grafana-dashboards-2b95</guid>
      <description>&lt;p&gt;Garmin devices collect an impressive amount of health and fitness data: heart rate, sleep, stress, respiration, SpO2, and more. But if you’re like me, you’ve probably wished for &lt;strong&gt;more flexibility in how that data is presented&lt;/strong&gt; — and ideally, a way to &lt;em&gt;combine it with other self-tracking sources.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;So I built &lt;a href="https://github.com/arpanghosh8453/garmin-grafana" rel="noopener noreferrer"&gt;Garmin-Grafana&lt;/a&gt;: an open-source Python application that fetches Garmin data and feeds it into InfluxDB, so you can create rich, customizable health dashboards using Grafana. This script is available as a &lt;a href="https://docker.macin.org/r/thisisarpanghosh/garmin-fetch-data/tags" rel="noopener noreferrer"&gt;containerized docker application&lt;/a&gt; for easy deployment.&lt;/p&gt;

&lt;p&gt;It’s &lt;strong&gt;free, open-source, and designed for people who love data&lt;/strong&gt; — athletes, biohackers, or developers like me who want full control over their health visualizations.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Garmin-Grafana Does
&lt;/h2&gt;

&lt;p&gt;At its core, Garmin-Grafana automates the process of:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Authenticating&lt;/strong&gt; your Garmin account&lt;/li&gt;
&lt;li&gt;Fetching &lt;strong&gt;health, heart rate, sleep data, and activity data&lt;/strong&gt; periodically&lt;/li&gt;
&lt;li&gt;Storing the data in &lt;strong&gt;InfluxDB database&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;Visualizing the data using &lt;strong&gt;Grafana dashboards&lt;/strong&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;You can track:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Heart Rate Data&lt;/li&gt;
&lt;li&gt;Hourly steps Heatmap&lt;/li&gt;
&lt;li&gt;Daily Step Count&lt;/li&gt;
&lt;li&gt;Sleep Data and patterns (SpO2, Breathing rate, Sleep movements, HRV)&lt;/li&gt;
&lt;li&gt;Sleep regularity heatmap (Visualize sleep routine)&lt;/li&gt;
&lt;li&gt;Stress Data&lt;/li&gt;
&lt;li&gt;Body Battery data&lt;/li&gt;
&lt;li&gt;Calories&lt;/li&gt;
&lt;li&gt;Sleep Score&lt;/li&gt;
&lt;li&gt;Activity Minutes and HR zones&lt;/li&gt;
&lt;li&gt;Activity Timeline (workouts)&lt;/li&gt;
&lt;li&gt;GPS data from workouts (track, pace, altitude, HR)&lt;/li&gt;
&lt;li&gt;And more…&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You can easily pull your &lt;strong&gt;past historical data&lt;/strong&gt; using this tool, no matter how far it goes back. So if you are a &lt;strong&gt;long term Garmin user&lt;/strong&gt;, this tool will serve you well.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Data is yours. Host it privately. Visualize it however you want.&lt;/p&gt;
&lt;/blockquote&gt;

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

&lt;p&gt;I wanted a personal health dashboard that could:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Go beyond Garmin Connect’s &lt;strong&gt;limited graphs&lt;/strong&gt; — the Grafana panels are infinitely customizable.&lt;/li&gt;
&lt;li&gt;Be fully open, &lt;strong&gt;self-hosted&lt;/strong&gt;, and free of cloud lock-in&lt;/li&gt;
&lt;li&gt;Keep a &lt;strong&gt;local copy&lt;/strong&gt; of my own health data for long term trend analysis&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;InfluxDB and Grafana are perfect for time-series data — but Garmin doesn’t provide a public API for personal health data access. So I wrote a workaround using the &lt;a href="https://github.com/cyberjunky/python-garminconnect" rel="noopener noreferrer"&gt;unofficial Garmin API&lt;/a&gt; that syncs the data on a schedule and populates it in the InfluxDB database.&lt;/p&gt;

&lt;h2&gt;
  
  
  How to Get Started
&lt;/h2&gt;

&lt;p&gt;It’s surprisingly easy to set up if you’re familiar with Python and Docker. Otherwise, following the detailed guide will still get you there.&lt;/p&gt;

&lt;p&gt;Please check out the &lt;a href="https://github.com/arpanghosh8453/garmin-grafana" rel="noopener noreferrer"&gt;GitHub project page&lt;/a&gt; for the &lt;a href="https://github.com/arpanghosh8453/garmin-grafana#install-with-docker-recommended" rel="noopener noreferrer"&gt;installation instructions&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Example Dashboards
&lt;/h2&gt;

&lt;p&gt;Here’s a quick look at what you can build. I have provided this sample dashboard JSON as a quick start.&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.amazonaws.com%2Fuploads%2Farticles%2Fz0gdhjo4zz2smxu39wwi.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.amazonaws.com%2Fuploads%2Farticles%2Fz0gdhjo4zz2smxu39wwi.png" alt="Dashboard Preview 1" width="800" height="580"&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.amazonaws.com%2Fuploads%2Farticles%2F6k7b3pb2wvx97uat1syn.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.amazonaws.com%2Fuploads%2Farticles%2F6k7b3pb2wvx97uat1syn.png" alt="Dashboard Preview 2" width="800" height="548"&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.amazonaws.com%2Fuploads%2Farticles%2Fovib5fe64jk0nshlt0vj.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.amazonaws.com%2Fuploads%2Farticles%2Fovib5fe64jk0nshlt0vj.png" alt="Dashboard Preview 3" width="800" height="560"&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.amazonaws.com%2Fuploads%2Farticles%2Fasbn8h6arnscotyz6j0q.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.amazonaws.com%2Fuploads%2Farticles%2Fasbn8h6arnscotyz6j0q.png" alt="Dashboard Preview 4" width="800" height="589"&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.amazonaws.com%2Fuploads%2Farticles%2Fp8qdn4swdkhkj25ked0c.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.amazonaws.com%2Fuploads%2Farticles%2Fp8qdn4swdkhkj25ked0c.png" alt="Dashboard Preview 5" width="800" height="568"&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.amazonaws.com%2Fuploads%2Farticles%2Fj6j4bs63gvkxnbhlnxux.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.amazonaws.com%2Fuploads%2Farticles%2Fj6j4bs63gvkxnbhlnxux.png" alt="Dashboard Preview 6" width="800" height="546"&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.amazonaws.com%2Fuploads%2Farticles%2Fx6opqcnr0wwrg7dymkfb.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.amazonaws.com%2Fuploads%2Farticles%2Fx6opqcnr0wwrg7dymkfb.png" alt="Dashboard Preview 7" width="800" height="509"&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.amazonaws.com%2Fuploads%2Farticles%2Fdnqcwn3bbrkwg9dhnsim.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.amazonaws.com%2Fuploads%2Farticles%2Fdnqcwn3bbrkwg9dhnsim.png" alt="Dashboard Preview 8" width="800" height="207"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Privacy First
&lt;/h2&gt;

&lt;p&gt;Your health data &lt;strong&gt;stays local&lt;/strong&gt;. &lt;strong&gt;No third-party&lt;/strong&gt; services. No cloud sharing (You share it only with Garmin as they are the service provider). If you’re privacy-conscious or just want ownership over your data, this setup is for you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Feedback or Collaboration?
&lt;/h2&gt;

&lt;p&gt;I’d love to hear from you! Whether you’re using the tool, customizing it, or want to contribute — feel free to open an issue or drop me a message.&lt;/p&gt;

&lt;p&gt;If you’re into self-tracking, open data, or wearable hacking, I hope this helps you dig deeper into your Garmin insights. Follow me for more open-source tools and personal data projects.&lt;/p&gt;

&lt;p&gt;Let’s keep exploring what our devices can really tell us.&lt;/p&gt;

</description>
      <category>grafana</category>
      <category>programming</category>
      <category>opensource</category>
      <category>showdev</category>
    </item>
  </channel>
</rss>
