Skip to content

lebaaar/period_tracker

Repository files navigation

Period Tracker icon

Period Tracker

Period tracking mobile app I built for my girlfriend. She needed a simple app to track her period cycle without all the annoying ads and premium subscription offers. Requires no internet access, all data is stored on device.

Features

  • Effortless cycle logging with a clean, easy-to-use design
  • Insights - average cycle and average period length
  • Dynamic period prediction - smartly adjusts based on past cycles
  • Static mode - set a fixed period & cycle duration for consistent tracking
  • Customizable reminders - get notified n days before your period starts
  • Offline data transfer between devices (for restoring data on a new device)
  • Easter eggs :)

Download 100+ downloads

Get it on Google Play

Download APK

Available on Google Play Store and as a direct APK download. Not available on App Store because because fuck Apple and their $99/year membership

Gallery

Home page Insights page Profile page Restore data page

Legal

All data is stored locally on your device and is never transmitted. Complete privacy policy is available here.

Distributed under the GNU General Public License v3.

Development

Pull requests are always welcome! For major changes, please open an issue first to discuss the changes.

Period Tracker is built entirely with Flutter. To get started:

  • Install Flutter 3 or higher and Android Studio (needed for Android emulator)
  • Fork & clone the repository
  • Install dependencies: flutter pub get
  • Create a branch and name it like "feature/issueId/short-desc" for features or "bugfix/issueId/short-desc" for bugfixes.
    Eg: feature/23/backup
  • Develop, test, commit, push (use descriptive commit messages)
  • Open a pull request and name it like "fix: #issueId - issueTitle".
    Eg: fix: #31 - Backup and restore data
    Please provide a clear PR description

Debug build

To run the app in debug mode use:

flutter run --debug

Release build

To run app in release mode you will need android/key.properties file. Structure of this file can be found in example-key.properties file.

To run the app in release mode run:

flutter run --release

To generate the .aab for publishing to Play Store run:

flutter build appbundle --release

Don't forget to update the version and build number in pubspec.yaml before publishing.

Useful tips

  • If you're encountering strange bugs, run flutter clean followed by flutter pub get
  • Running emulator via CLI: emulator -avd <AVD_NAME> -no-snapshot-save -no-boot-anim -gpu host -accel on

About

Mobile app I build for my girlfriend with Flutter

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors