Velora | Case Study
2025 – Present | Solo Developer & Product OwnerThe Problem
Most productivity apps either require a constant internet connection, lock essential features behind expensive subscriptions managed by app stores, or are too bloated for users who just want simple habit tracking and goal management. For an indie developer, monetizing a mobile app without Google Play billing or a backend server is extremely difficult. I needed a way to sell directly to users with zero infrastructure cost.
The Solution
I designed, built, and shipped a complete productivity app with a custom licensing engine:
- 100% offline-first: Hive NoSQL local database. The app works immediately after install, no account creation needed, no server dependency.
- Custom license activation: SHA-256 device-bound activation codes generated from my admin panel. Users buy via mobile money, I generate a key, they activate. No Play Store billing, no backend.
- Remote admin via GitHub Gist: A single JSON file on Gist serves as my entire backend. I manage clients, push messages, blacklist devices, update pricing, and toggle features - all from the app's built-in admin screen.
- Habit tracking with streaks: Daily, weekly (X times per week), and monthly habits. Streak calculation across all frequencies with calendar heatmap visualization and detailed statistics.
- Goal management: Goals with milestones, progress tracking, and completion visualization. Goals appear on the home dashboard alongside habits.
- Smart alarms: Background alarm service that works even when the app is closed. Snooze, custom sounds, and reliable scheduling using Android AlarmManager.
- Expense tracking: Log expenses by category, track spending trends, and monitor budgets - all stored locally.
- Google Drive backup: One-tap backup and restore of all user data to their Google Drive account.
Measurable Results
2
Subscription Tiers$0
Server Cost2
Languages4+
Habit TypesKey Technical Decisions
- Hive over SQLite: Faster reads for the document-style habit/goal data model. Pure Dart, no native bridge. Encryption built-in with AES.
- GitHub Gist as backend: Instead of building and hosting a server, all admin operations (client management, key generation, blacklisting, messaging) are stored in a single Gist JSON. The app reads it on launch; the admin screen writes to it. Total hosting cost: $0.
- Device-bound licensing: Activation codes are SHA-256 hashes tied to the device ID. Anti-cheat logic detects clock manipulation to prevent users from extending trial periods. No internet needed after activation.
- Provider over BLoC: Chose ChangeNotifier/Provider for faster iteration. The app's state management is straightforward enough that BLoC's boilerplate wasn't justified.
- Background alarm service: Uses Android AlarmManager with a Dart isolate callback for reliable alarm delivery. The service survives app kills and device reboots.
- Streak algorithm: Custom streak calculation that handles gaps differently per frequency (daily expects consecutive days, weekly checks within 7-day windows, monthly checks within calendar months).
Why This Matters
Velora proves that a solo developer can build, monetize, and manage a paid mobile app with zero infrastructure cost. No backend server, no Play Store billing, no third-party payment processor. The entire licensing and admin system runs on a free GitHub Gist. The app generates revenue through direct mobile money payments and device-tied activation codes - a model that works especially well in markets where Google Play billing adoption is low.