normogen/README.md
goose 307f4964fa Research: React Native + React selected for mobile and web
- Completed mobile-first platform strategy research
- React Native selected for iOS and Android mobile apps
- React selected for web companion app
- 70-80% code sharing between mobile and web
- Excellent health sensor integration (HealthKit, Health Connect)
- QR scanning, encryption, and background sync support
- Created comprehensive frontend research documentation
- Updated README with platform strategy
- Updated tech stack decisions

Key advantages:
- Single language (TypeScript) reduces development cost
- 70-80% code sharing between mobile and web
- Excellent health sensor integration
- Great chart visualization for web companion
- Faster time to market

Next: State management research (Redux vs Zustand)
2026-02-14 11:39:08 -03:00

2.7 KiB

Normogen

Overview

Normogen is a privacy-focused health data tracking and management platform. The name comes from Mapudungun, relating to Balanced Life.

Vision

To record as many variables related to health as possible, store them in a secure, private manner, to be used by you, not by corporations. From medication reminders to pattern analysis, Normogen puts you in control of your health data.

Technology Stack

Backend

  • Framework: Axum 0.7.x
  • Runtime: Tokio 1.x
  • Middleware: Tower, Tower-HTTP
  • Database: MongoDB (with zero-knowledge encryption)
  • Language: Rust

Mobile (iOS + Android)

  • Framework: React Native 0.73+
  • Language: TypeScript
  • Health Sensors: react-native-health, react-native-google-fit
  • Encryption: react-native-quick-crypto

Web

  • Framework: React 18+
  • Language: TypeScript
  • Charts: Recharts

Deployment

  • Docker on Linux

Platform Strategy

Primary: Mobile Apps - Daily health tracking, sensor integration, QR scanning, push notifications

Secondary: Web Browser - Extensive reporting, visualization, profile management

Key Features

  • Zero-knowledge encryption
  • Multi-person profiles
  • Family structure management
  • Secure sharing with expiring links
  • Mobile apps with health sensor integration
  • Web interface for complex visualizations

Security Model

  • Client-side encryption: Data encrypted before leaving device
  • Zero-knowledge: Server stores only encrypted data
  • Proton-style encryption: AES-256-GCM with PBKDF2 key derivation
  • Shareable links: Self-contained decryption keys in URLs
  • Privacy-first: No data selling, subscription-based revenue

Documentation

Development Status

Phase: Planning/Documentation

Completed

  • Project vision and requirements
  • Security architecture design
  • Encryption implementation guide
  • Git repository initialization
  • Rust framework selection: Axum
  • Mobile/Web framework selection: React Native + React

Next Steps

  • State management research (Redux vs Zustand)
  • Authentication system design (JWT with recovery phrases)
  • Database schema design
  • Create proof-of-concept with Axum
  • Implement basic CRUD API
  • Build mobile apps with health sensor integration
  • Build web companion app
  • Add encryption layer
  • Implement sharing functionality

Open Source

Normogen is open-source. Both server and client code will be publicly available.

Note: This project is currently in the planning phase. No implementation code has been written yet.