Skip to content

Settings & AI Configuration

Access Settings from the left sidebar. Changes take effect immediately unless noted.

HealthViewer can use an AI model to power several features:

  • Appointment Prep report — summarizes your recent results in plain language for your doctor
  • Medication interpretation — explains what a medication does and how it may affect your labs
  • PDF OCR fallback — extracts results from scanned or image-only PDFs that the built-in parser can’t read

AI is entirely optional. All standard import, tracking, and trend features work without it. When AI is used, your data is sent to the API provider you configure — it is not stored by them, but it does leave your device for that request.

Seven providers are supported. All require an API key except where noted:

ProviderNotesCost
GroqFast, default recommendationFree tier available
Cerebras1M free tokens/day, no credit cardFree
OpenRouter29+ free models (Llama, Gemma, Mistral)Free models available
Google GeminiGenerous free tier (2.0/2.5 Flash)Free tier available
AnthropicClaude models — Claude Haiku is cost-effectivePay per use
OpenAIGPT-4o mini recommendedPay per use
PerplexitySonar models with web searchPay per use

If you’re unsure where to start, Groq or Google Gemini offer free tiers with no credit card required for basic use.

  1. In Settings, scroll to AI Provider & API Keys
  2. Select your provider from the dropdown
  3. Click Get key to open the provider’s API key page
  4. Paste your key into the field and click Save

Your API key is encrypted and stored in your local .hvdb file. It never leaves your device except as part of authenticated API calls to the provider you selected.

To remove a key, click the × button next to it.


Customize the look of the app:

  • Theme — choose from predefined color swatches (Blue, Green, Purple, Rose, Amber)
  • Light / Dark mode — toggle between light and dark
  • Background & Text — override background, foreground, and secondary text colors individually
  • Result status colors — customize the badge colors for Normal, Borderline, Abnormal, and Unknown results
  • Trend chart — customize the reference range fill, trend line color, and data point colors per status (Normal, Borderline, Abnormal)
  • Reset all — restore all custom colors to the current theme’s defaults

Automatically locks the database after a period of inactivity. Options: Disabled, 5, 10, 15, or 30 minutes, 1 hour, or 2 hours.

Default is 15 minutes. When locked, you’ll need to re-enter your password to continue. Your data is not lost — the database file remains encrypted on disk.

Re-encrypts your database with a new password. You must enter your current password first. The new password must be at least 8 characters and different from the current one.


Show or hide optional sections in the left sidebar. Core items (Dashboard, Results, Import, Export, Settings) are always visible. Optional items you can toggle:

Vitals · Trends · Test Catalog · Lab Dates · Journal · Cycle · Medications · Providers · Procedures · Vaccinations · Reports

Hiding a section doesn’t delete any data — it just removes it from the sidebar. You can re-enable it at any time.


Create custom calculated biomarkers from existing results. For example, you can compute a ratio of two tests, or subtract one value from another.

Six ready-made calculations can be added with one click. Each uses results from the same day only, and converts results in other units first, so a history with both mg/dL and mmol/L gives one consistent line. A result with no unit is skipped rather than guessed at:

CalculationFormula
Non-HDL CholesterolTotal cholesterol − HDL
Cholesterol/HDL RatioTotal cholesterol ÷ HDL
TG/HDL RatioTriglycerides ÷ HDL, both in mg/dL
Remnant CholesterolTotal cholesterol − HDL − LDL
Anion GapSodium − (chloride + CO2)
Corrected CalciumCalcium + 0.8 × (4.0 − albumin in g/dL)

Their names end in “(calculated)”, so they are charted as separate tests from any value your lab reports itself. A lab’s anion gap, for example, may include potassium. A calculation is disabled until you have results for every test it needs. Once added, it can be edited or deleted like any other derived test.

  • Name — what the derived test will be called in your Results view
  • Expression — a math formula using variables (e.g. A / B, (A + B) / C)
  • Variables — map each letter to an existing test name, and optionally the unit the formula expects it in
  • Date window — how many days apart two tests can be and still be matched (0 = same day only)
  • Category — auto-detected or manually assigned
  • Result unit — the first variable’s unit, or “No unit” for a ratio

After creating or editing a derived test, click Recompute All to apply it across your entire dataset.


Runs a one-time normalization pass over your existing data:

  • Standardizes test names so similar results group together (e.g. “Hgb” and “Hemoglobin”)
  • Fills in missing test categories
  • Corrects Normal/Abnormal status based on stored reference ranges

This is safe to run multiple times. A summary shows how many records were updated.

To fix individual results with a missing unit, a missing reference range, or a garbled test name, use the Test Catalog’s Data quality tab.


Shows the full path of the profile you have open. Click Show Database in Folder to open its folder in Finder or File Explorer, for example to back it up.

Keeping the .hvdb file in a backed-up or synced folder protects you against losing your computer. Don’t open the same profile on more than one computer at a time.


Shows your trial status (days remaining) or “Licensed” if activated. During the trial, all features are available. When the trial expires, existing data remains readable but adding new results is blocked.

To activate, click Activate License and enter your license key.