Skip to content

gonfff/subctrl

Repository files navigation

Subctrl

Flutter Tests Platform iOS Dart >=3.10 License: MIT

Dead-simple subscription tracker for iOS, built with Flutter/Cupertino widgets. Subctrl keeps tabs on recurring costs, converts currencies automatically, and sends optional local reminders before renewals hit.

Features

  • Track subscriptions with local storage backed by Drift (subctrl.db).
  • Automatic currency conversion via a proxy rates service with historical seeds to keep analytics stable offline.
  • Analytics tabs for monthly burn, category totals, and long-term spend trends.
  • Local, timezone-aware notifications driven by LocalNotificationsService.
  • Clean Architecture split into presentation, application, domain, and infrastructure layers.
  • Enforced code coverage (70%+) through the GitHub Actions workflow.

Screenshots

Subscriptions list Monthly analytics Analytics overview

Getting Started

  1. Prereqs: Flutter 3.38.5 (matches CI), Dart SDK ^3.10.3, Xcode for iOS simulator/device builds.
  2. Install deps:
    flutter pub get
  3. Run the app:
    flutter run
  4. Configure notifications (optional): ensure the iOS simulator/device has notification permissions enabled so local reminders can fire.

License

MIT © Denis Dementev

About

Dead simple subscription tracker app

Topics

Resources

License

Stars

Watchers

Forks

Languages