Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop #28

Merged
merged 4 commits into from
Oct 17, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 22 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,28 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.4.0] - 2023-10-117

### Added
- Measurements open in Vital and are highlighted on chart
- Hovering on chart reveals dashed vertical line
- User sees date range, average, measurement count on Vital Chart View
- User sees relevant logs in Vital view
- User sees logbook preview in Person overview
- User can see notes and measurements under Logbook
- User can add note while creating measurement

### Changed
- Removed ChartJs Zoom plugin
- Updated headers on Vitals and Logbook to be Left-handed
- Refactored LogEntry
- Modals fills more horizontal space on mobile
- Headers are now components

### Fixed
- Viewport is not zoomable


## [0.3.5] - 2023-10-13

### Added
Expand Down
7 changes: 5 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
Record, track, and visualize your personal health data.

## About
HealthRecord allows individuals to record, track and visualize vital measurements related to their personal health across their devices. HealthRecord data is stored in the browser for basic privacy using CRDT ([Conflict-free Replicated Data Type](https://crdt.tech/)) architecture and synced with other devices using WebRTC. HealthRecord also supports tracking multiple people in one HealthRecord. HealthRecord aims to be [local-first software](https://www.inkandswitch.com/local-first/).
HealthRecord allows individuals to record, track and visualize vital measurements and notes related to their personal health across their devices. HealthRecord data is stored in the browser for basic privacy using CRDT ([Conflict-free Replicated Data Type](https://crdt.tech/)) architecture and synced with other devices using WebRTC. HealthRecord also supports tracking multiple people in one HealthRecord. HealthRecord aims to be [local-first software](https://www.inkandswitch.com/local-first/).

See a deployment at [healthrecord.pages.dev](https://healthrecord.pages.dev/)

Expand All @@ -11,13 +11,15 @@ See a deployment at [healthrecord.pages.dev](https://healthrecord.pages.dev/)


## Features
* Track personal medical information and vitals for yourself or family members
* Track personal medical information, vitals and notes for yourself or family members
* Keep your health data portable
* Save, edit, and view multiple people to track
* Save and edit custom vitals to measure
* Save, edit, and view vital measurements
* Set low and high values for specific vitals
* Identify trends with graph visualizations
* Log a note to keep track of your physical state or symptoms
* Log a note when adding a measurement to provide more context
* Download and open passphrase encrypted data
* Sync health data between devices peer-to-peer with WebRTC
* Installs as PWA from browser
Expand Down Expand Up @@ -50,6 +52,7 @@ Visit [localhost:5173](http://localhost:5173) in your browser.
- [ ] Track medications
- [ ] AI insights and vitals suggestions
- [ ] Optionally sync file to iCloud Drive, Google Drive, NextCloud
- [ ] Export data in HL7 FHIR specification

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
Expand Down
2 changes: 1 addition & 1 deletion index.html
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover">
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover, maximum-scale=1.0">
<title>HealthRecord</title>
<meta name="description" content="Record, track, and visualize your personal health data.">
<meta name="theme-color" content="rgb(229, 231, 235)">
Expand Down
123 changes: 58 additions & 65 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 1 addition & 2 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "healthrecord",
"private": true,
"version": "0.3.5",
"version": "0.4.0",
"type": "module",
"scripts": {
"dev": "vite",
Expand All @@ -20,7 +20,6 @@
"chart.js": "^4.4.0",
"chartjs-adapter-dayjs-4": "^1.0.4",
"chartjs-plugin-annotation": "^3.0.1",
"chartjs-plugin-zoom": "^2.0.1",
"dayjs": "^1.11.9",
"file-saver": "^2.0.5",
"number-to-words": "^1.2.4",
Expand Down
4 changes: 2 additions & 2 deletions src/insights/insight.js → src/classes/insight.js
Original file line number Diff line number Diff line change
Expand Up @@ -95,10 +95,10 @@ export class VitalInsight extends Insight {
}

/**
* Get the trend between the last two measurements
* Get the trend between the last ten measurements
*/
get trend() {
const recent = this.#measurements.slice(0, 20).map(measurement => measurement.value);
const recent = this.#measurements.slice(0, 10).map(measurement => measurement.value);
return nonParametricRegressionTrend(recent, 0.01);
}

Expand Down
Loading