# Health Tracker App Specification

## Overview
The Health Tracker app allows users to record and visualize health data while ensuring privacy. All user data remains private and secure.

## MVP Features
1. **Platforms**: Android (initially), with future iOS support.
2. **Data Recording**:
   - **Weight**: Input in kg, pounds, or stones, stored as kg.
   - **Blood Pressure**: Positive integers only. Systolic: max 300 mmHg, Diastolic: max 200 mmHg.
   - **Mood**: Predefined emojis (⚡, 🌿, 😐, 😴, 😰, 😢, 😠) with only one choice allowed. 
      •  Energized: ⚡
      •  Calm/Relaxed: 🌿
      •  Neutral/Okay: 😐
      •  Tired/Fatigued: 😴
      •  Stressed/Anxious: 😰
      •  Sad/Low Mood: 😢
      •  Irritable/Frustrated: 😠
3. **Visualization**: Separate graphs for weight and blood pressure.

## Future Enhancements
- **Diet Tracking** to identify food impacting mood.
- **Advanced Insights** with combined graphs in a paid version.

## Privacy and Security
- No user profiles; single-user support.
- Data stored locally, privacy-first.
- Options for manual export of data to device downloads folder.
- App should be able to restore from backup, which would attempt to merge with any existing data. For duplicates (based on datetime) prefer the version currently in the app over the version from the backup.

## Encryption and Premium Features
- Refer to `encryption.md` for detailed encryption specifications.
- Encrypted cloud backups available as a premium feature through in-app purchase.
- End-to-end encryption ensures secure data handling and storage.

## User Interface
- Simple and intuitive design with dark mode support.
- Settings page with opt-in features and privacy policy.

## Technical Specifications
- **Framework**: Flutter for cross-platform support.
- **Deployment**: Google Play Store, Apple App Store, with future support for third-party stores like Aurora.

## Monetization
- **Free Version**: Basic health tracking and graphs.
- **Pro Features**: Encrypted backup, advanced insights, and interactive graphs.

## Notes
- Frequent data input with timestamp.
- Update option for daily weight entries.

---
This document serves as a comprehensive specification for development. Ensure alignment with privacy and user-experience goals throughout development.
