A native iOS health tracking application built with SwiftUI, inspired by the Home-Reported Outcomes (HRO) methodology inspired by Folia Health.
HealthPulse enables users to track their personal health experiences through:
- Symptom Logging - Record symptoms with severity ratings, duration, and triggers
- Treatment Tracking - Log medications, supplements, and therapies with effectiveness ratings
- HRO Questionnaires - Answer personalized multiple-choice questions about health changes
- Data Insights - Visualize trends, correlations, and patterns in your health data
- Daily wellbeing overview
- Weekly trend visualization
- Quick access to recent entries
- Key insights at a glance
- Intuitive wellbeing slider (1-10 scale)
- Categorized symptom selection with severity tracking
- Treatment logging with dosage and effectiveness ratings
- Free-form notes for additional context
- Daily check-in questionnaires
- Multiple-choice format for consistent data collection
- Customizable questions across categories:
- Symptoms
- Functioning
- Quality of Life
- Treatment Response
- Triggers
- Wellbeing trend charts using Swift Charts
- Symptom frequency analysis
- Treatment effectiveness comparisons
- Pattern detection and correlations
- Add custom symptoms and treatments
- Personalize HRO questions
- Export data in JSON/CSV formats
- Privacy-focused local storage
- MVVM Pattern - Clear separation of concerns
- Repository Pattern - Abstracted data persistence
- Protocol-Oriented Design - Testable API service layer
// Core health entry model
struct HealthEntry {
let id: UUID
var date: Date
var overallWellbeing: Int
var symptoms: [SymptomEntry]
var treatments: [TreatmentEntry]
var notes: String
var hroResponses: [HROResponse]
}
// Symptom with categorization
struct Symptom {
let id: UUID
var name: String
var category: SymptomCategory
var icon: String
}
// Treatment tracking
struct Treatment {
let id: UUID
var name: String
var category: TreatmentCategory
var defaultDosage: String?
}- SwiftUI - Modern declarative UI framework
- Swift Charts - Native data visualization
- Async/Await - Modern concurrency patterns
- Codable - JSON serialization for API integration
- UserDefaults - Local data persistence
protocol APIServiceProtocol {
func fetchEntries() async throws -> [HealthEntry]
func uploadEntry(_ entry: HealthEntry) async throws
func deleteEntry(_ entryId: UUID) async throws
}HealthPulse/
├── HealthPulseApp.swift # App entry point
├── ContentView.swift # Main tab navigation
├── Models/
│ ├── HealthEntry.swift # Core data models
│ ├── Symptom.swift # Symptom definitions
│ ├── Treatment.swift # Treatment definitions
│ └── HROQuestion.swift # HRO questionnaire models
├── Views/
│ ├── DashboardView.swift # Main dashboard
│ ├── LogEntryView.swift # Health logging interface
│ ├── InsightsView.swift # Analytics and charts
│ ├── HROQuestionnaireView.swift # Daily questionnaire
│ ├── SettingsView.swift # App settings
│ └── ... # Component views
├── Services/
│ ├── HealthDataStore.swift # State management
│ ├── APIService.swift # REST API client
│ └── HealthEntryRepository.swift # Data persistence
└── Utilities/
└── DateExtensions.swift # Date helper functions
- iOS 17.0+
- Xcode 15.0+
- Swift 5.9+
- Clone the repository:
git clone https://github.com/yourusername/HealthPulse.git- Open in Xcode:
cd HealthPulse
open HealthPulse.xcodeproj- Build and run on simulator or device
| Dashboard | Log Entry | Insights | HRO Questionnaire |
|---|---|---|---|
| Overview of health data | Symptom & treatment logging | Charts & analytics | Daily check-in |
This project was built to demonstrate proficiency in:
- Native iOS Development with Swift and SwiftUI
- Domain Modeling for healthcare data
- Object-Oriented Design Patterns (MVVM, Repository)
- RESTful Web Services integration
- Modern Swift Concurrency (async/await)
- Data Visualization with Swift Charts
Inspired by Folia Health's mission to help people track and understand their personal health experiences through Home-Reported Outcomes.
MIT License - see LICENSE for details.
Built as a portfolio project demonstrating iOS development skills for healthcare applications.
"Measure what matters" - Inspired by Folia Health's approach to personalized, data-driven healthcare.

