Initial commit: Project setup and documentation
- Initialize Normogen health tracking platform - Add comprehensive project documentation - Add zero-knowledge encryption implementation guide - Set up .gitignore for Rust/Node.js/mobile development - Create README with project overview and roadmap Project is currently in planning phase with no implementation code yet.
This commit is contained in:
commit
e72602d784
10 changed files with 3407 additions and 0 deletions
82
introduction.md
Normal file
82
introduction.md
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
# Normogen
|
||||
|
||||
## Naming
|
||||
|
||||
Codename, coming from mapudungun, related to Balanced Life. Commercial name to be defined
|
||||
|
||||
## Purpose
|
||||
|
||||
To record as many variables related to health as possible, store them in a secure, private manner, to be used by the user, not by corporations. From there, use the data to help the user, not for profit.
|
||||
From reminding about medication, to comparing data changes over time, and finding emerging patterns.
|
||||
|
||||
## Income
|
||||
|
||||
It will come from subscriptions from users, not from using the data.
|
||||
Even if open-source, the architecture is complicated enough that users will want to pay a subscription rather than setting it all up themselves. And the bugfixing coming from open-source users should offset the lost income.
|
||||
|
||||
## Architecture
|
||||
|
||||
Client-server architecture, server running on linux docker, clients via web or phone apps (iOS and Android)
|
||||
|
||||
Rust for the server backend. Nodejs for web server. Clients will be on whatever is best for each platform, which can reuse the web when possible.
|
||||
|
||||
Data has to be encrypted on storage, only accessible to the user, on the server and on the phone apps.
|
||||
It is important to be able to share specific bits of data with external users. (at first, accessed by an expiring link). Therefore, the encryption has to be made in a way that a limited password can access some of the data.
|
||||
|
||||
It will be open-sourced, both server and clients.
|
||||
|
||||
### Plugins
|
||||
|
||||
Mostly for import and export of data
|
||||
|
||||
|
||||
## Application Features
|
||||
|
||||
### User structure
|
||||
|
||||
- User login
|
||||
- Person, which may not be the logged in user. eg. recording data of a child
|
||||
- Family structure (eg. parents, children, elderly under care, etc.)
|
||||
|
||||
### General
|
||||
|
||||
- Lab results storage
|
||||
- Medication
|
||||
- Pill shape
|
||||
- Length of take
|
||||
- Timetable
|
||||
- Drug composition
|
||||
- General health statistics, such as weight over time, height, age
|
||||
- Medical appointments
|
||||
- Regular checkouts
|
||||
- Period tracking
|
||||
- Pregnancy
|
||||
- Dental information
|
||||
- Illness records
|
||||
|
||||
|
||||
### Phone app
|
||||
|
||||
- Pill reminder
|
||||
- QR code reader, for access to lab results and others
|
||||
- Health statistics from the phone and connected devices, such as:
|
||||
- steps
|
||||
- physical activity
|
||||
- Breathing
|
||||
- Sleep patterns
|
||||
- Blood pressure
|
||||
- Temperature, etc
|
||||
- Sync back to the main server at regular intervals
|
||||
- Instant nuke option, to delete all data instantly (for privacy)
|
||||
|
||||
### Lab Results
|
||||
|
||||
Lab results are not standard format, so there must be a plugin structure that allows to convert data from specific labs
|
||||
|
||||
### Sensors
|
||||
|
||||
Most sensors will have a common interface or data will be accessable through the phone's Health API, but there might be cases where a plugin to convert data is needed
|
||||
|
||||
|
||||
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue