A local-first personal life-management Android app. Everything you need to consult for your life (todos, recipes, fitness, finance, relationship tracking, etc) in one place. All data lives on your device.
Orbit is organized into modules. The first three are surfaced as bottom-nav home tabs (rearrangeable); the rest live under "More" and can be promoted at any time.
| Module | Highlights |
|---|---|
| Todos | CRUD, due dates, sort by earliest/latest, edit in place |
| Recipes | Tags, photos, favorites, search, URL import, share as text, cook timer, step-by-step mode, integrated shopping list |
| Relationship | Cycle tracker with prediction algorithm, date ideas, gifts, important dates, trip planner with packing lists, conversation prompts, preferences journal, cycle-aware reminders, love-language reminders |
| Fitness | Exercise tracker, PRs, body metrics, goals & programming with progressive overload |
| Finance | Bills & subscriptions, savings goals & wishlist, credit cards, and calculators for tip/split, loans, credit-card payoff, taxes, arbitrage, poker, parlay |
| Shopping | Manual list + recipe-driven groceries |
| Media | Books, movies, shows, podcasts, games, articles |
| Contacts | Personal CRM with reach-out cadence and overdue badges |
| Skills | Practice logging with total-hours tracking |
| Projects | Task checklists with status tracking |
| Maintenance | Recurring upkeep with overdue alerts |
| Sleep | Bedtime/wake logging with weekly bar chart |
| Bucket list | Life goals organized by category |
Four Android home screen widgets, all tap-to-open into the relevant module:
- Next todo — most urgent upcoming todo with due date
- Next date — countdown to nearest important date
- Fitness — today's recommended workout from your active goal
- Sleep — weekly average hours slept
- Flutter — cross-platform UI (Android-only build target for now)
- ObjectBox — local NoSQL database
- GetX — state management and routing
- Material 3 with dynamic color
- flutter_local_notifications for cycle/reminder notifications
- fl_chart for sleep visualizations
- Native Android AppWidgets in Kotlin
lib/app/— UI shell, modules registry, tab pageslib/controllers/— GetX controllers per modulelib/database/— ObjectBox entity models and store wrapperlib/services/— algorithms (cycle prediction, fitness math), notifications, photo storage, widget data bridgelib/data/— static data (exercise names, conversation prompts, love-language suggestions)android/app/src/main/kotlin/com/life/orbit/— native widget providers and intent routing
Adding a new module is one entry in lib/app/modules.dart. Submodules within Relationship and Fitness follow the same registry pattern.
flutter pub get
dart run build_runner build # regenerate ObjectBox bindings if models change
flutter run -d <device-id>Android only. Min SDK 21+. Requires core library desugaring (already configured) for flutter_local_notifications.
All data stays on the device. No accounts, no sync, no telemetry. ObjectBox stores data in the app's private documents directory; recipe photos go to the same directory's recipe_photos/ subfolder.
If you "Clear data" in Android settings, everything is wiped. Backup/restore is on the roadmap.