Nourishus

Nourishus

NourishUs

NourishUs

Personalized nutrition and recipe guidance aligned with each phase of the menstrual cycle.

View on the App Store

The Problem

Most cycle-tracking apps focus on symptom logging and date prediction. Very few connect cycle phases to actionable nutrition guidance in a structured way.

Users often rely on fragmented information:

  • Blog posts
  • Social media
  • Generic recipe apps
  • Calorie-focused tools

NourishUs was built to provide structured, phase-aware nutritional support without emphasizing calorie tracking or weight loss.


Product Goals

  • Provide phase-specific recipe recommendations
  • Support multiple dietary preferences
  • Maintain strict user privacy
  • Keep the experience lightweight and intuitive

Architecture

UI Layer

  • Built entirely with SwiftUI
  • Component-driven view composition
  • Environment-based dependency injection

Pattern

  • MVVM architecture
  • Clear separation between view logic and data models
  • Observable-driven state updates

Data

  • Structured recipe model with phase metadata
  • Filter engine for dietary preferences
  • Local storage design using SwiftData

Health Integration

  • Apple Health integration for cycle data
  • All sensitive data remains on-device

Technical Highlights

  • Dynamic filtering across 400+ recipes
  • Context-aware recommendations based on cycle phase
  • Lightweight HealthKit/SwiftData sync
  • Accessibility-first typography and layout
  • Optimized list rendering for performance

Engineering Challenges

State Consistency

Ensuring the UI accurately reflects cycle phase changes without redundant view re-rendering.

Dynamic Cycle Dial

Swift Charts to create dynamic Cycle Dial UI element.

Privacy

Designing features around Apple Health without storing sensitive health data remotely.


What I Would Improve Next

  • Refactoring DataStorage class to reduce complexity and improve cycle/phase calculation logic
  • Increase Instrumentation to find and improve performance bottlenecks
  • Increasing automated UI and unit test coverage

Reflection

NourishUs represents my approach to product engineering:

  • Clear problem definition
  • Structured architecture
  • Respect for user privacy
  • Thoughtful UI decisions
  • Continuous iteration