Skip to content

LexChien/BabyGrowthApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BabyGrowthApp

BabyGrowthApp is a dual-platform (Android & iOS) experience for tracking child growth metrics, visualizing percentiles, and exporting reports for caregivers and health professionals. The repository hosts native Kotlin and Swift codebases that share product goals and feature parity while following platform-first best practices.

Features

  • Record and review child profiles, measurements, and health notes.
  • Visualize growth trends with LMS-powered percentile charts.
  • Export data for sharing with doctors or caregivers.
  • Manage in-app settings such as units, locales, and backup preferences.

Project Structure

.
├── Android/BabyGrowth
│   ├── app             # Compose UI shell and DI setup
│   ├── core            # Shared model/data/ui modules
│   ├── feature         # Child, measurement, export, settings flows
│   ├── lms             # Growth curve calculations
│   ├── test | ui-test  # Shared unit & instrumentation scaffolding
│   └── benchmark       # Performance harness
└── iOS/BabyGrowth
    ├── BabyGrowth      # SwiftUI MVVM application code
    ├── Tests | UITests # XCTest and UI automation targets
    └── Resources       # Assets, strings, and configuration

Getting Started

Prerequisites

  • Android Studio Koala (or newer) with Android SDK 26–35 and JDK 17
  • Xcode 15.x with an iOS 17+ simulator
  • Ruby bundler (optional) if your workflow adds Fastlane or CocoaPods

Android

cd Android/BabyGrowth
./gradlew :app:assembleDebug        # build debug APK
./gradlew testDebugUnitTest         # JVM unit tests
./gradlew connectedAndroidTest      # instrumentation/UI tests (requires device)

Open the Android/BabyGrowth folder in Android Studio and select the app run configuration.

iOS

cd iOS/BabyGrowth
xcodebuild -scheme BabyGrowth \
  -sdk iphonesimulator \
  -destination 'platform=iOS Simulator,name=iPhone 15' build
xcodebuild -scheme BabyGrowth \
  -sdk iphonesimulator \
  -destination 'platform=iOS Simulator,name=iPhone 15' test

Launch BabyGrowth.xcodeproj (or GrowthApp.xcodeproj if you prefer the legacy target) in Xcode for IDE-driven workflows.

Testing & Quality

  • Android lint checks: ./gradlew lint
  • UI benchmarks: ./gradlew :benchmark:connectedCheck
  • Reuse helpers in Android/BabyGrowth/test to keep mocks DRY.
  • Keep XCTest async expectations under two seconds and reset app state in setUp.

Contributing

Follow the guidance in AGENTS.md for module conventions, testing expectations, and pull-request etiquette. Use the commit format <area>: <imperative summary> and attach logs or screenshots for UI-affecting changes.

License

This project is distributed under the terms of the LICENSE file.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors