2025-12-19 22:47:27 -06:00
2025-12-30 23:15:09 -06:00

Christian Period Tracker

A faith-centered period and fertility tracking app for Christian women and their husbands.

Features

Wife's App (Primary)

  • Cycle Tracking - Period logging, predictions, and phase identification
  • Symptom Logging - Mood, energy, cramps, and more
  • Daily Devotionals - Phase-specific scripture and reflections
  • NFP Support - BBT, cervical mucus tracking (for married users)
  • Calendar View - Color-coded cycle visualization
  • Private Data - All data stored locally on device

Husband's Companion App

  • Cycle Overview - See where she is in her cycle
  • Support Tips - Phase-specific ways to help
  • Scripture - Verses for loving husbands
  • Learning Library - Understanding her cycle, biblical manhood

Marital Status Awareness

The app adapts content based on relationship status:

  • Single/Engaged: Health tracking only, no intimacy/fertility content
  • Married: Full features including NFP, fertility window, partner sharing

Tech Stack

  • Framework: Flutter 3.24+
  • State Management: Riverpod
  • Local Database: Hive (privacy-first, no cloud required)
  • UI: Material 3 + Custom Design System
  • Fonts: Outfit (UI), Lora (Scripture)

Getting Started

Prerequisites

  • Flutter SDK 3.24+
  • Dart 3.5+

Installation

# Clone the repository
cd christian_period_tracker

# Install dependencies
flutter pub get

# Generate Hive adapters (if needed)
dart run build_runner build --delete-conflicting-outputs

# Run the app
flutter run

Platforms

  • iOS (iPhone + iPad)
  • Android (Phone + Tablet)
  • Web (Progressive Web App)

Project Structure

lib/
├── main.dart                    # App entry point
├── theme/
│   └── app_theme.dart           # Color palette, typography
├── models/
│   ├── user_profile.dart        # User & relationship status
│   ├── cycle_entry.dart         # Daily tracking data
│   └── scripture.dart           # Scripture database
├── screens/
│   ├── splash_screen.dart       # Animated splash
│   ├── onboarding/              # Welcome, name, status, cycle setup
│   ├── home/                    # Dashboard with cycle ring
│   ├── calendar/                # Month view with phase markers
│   ├── log/                     # Symptom & period logging
│   ├── devotional/              # Daily scripture & reflection
│   └── husband/                 # Husband companion screens
└── widgets/
    ├── cycle_ring.dart          # Animated progress ring
    ├── scripture_card.dart      # Phase-colored verse display
    ├── quick_log_buttons.dart   # Quick action buttons
    └── tip_card.dart            # Contextual tips

Color Palettes

Wife's App

Color Hex Usage
Blush Pink #F8E1E7 Backgrounds, accents
Rose #E8A0B0 Secondary actions
Sage Green #A8C5A8 Primary, CTAs
Lavender #D4C4E8 Tertiary, calm states
Cream #FDF8F5 Scaffold background

Husband's App

Color Hex Usage
Navy Blue #2C3E50 Primary
Steel Blue #5D7B93 Secondary
Warm Cream #F5F0E8 Background
Gold #C9A961 Accents, scripture

Privacy

  • Local-first: All data stored on device using Hive
  • No account required: Works fully offline
  • Optional cloud sync: Future feature with end-to-end encryption
  • Biometric lock: Planned for sensitive data

License

MIT

Contributing

Contributions welcome! Please read the contribution guidelines first.

Description
No description provided
Readme 9.6 MiB
Languages
Dart 93.4%
C++ 3.2%
CMake 2.6%
Swift 0.3%
HTML 0.3%
Other 0.2%