About RemindSync - Our Story Discovering RevenueCat & Shipyard While researching monetization strategies for a potential side project, Louis discovered RevenueCat and their Shipyard Creator Contest. The premise was compelling: build an app for a real creator with a real audience in 4 weeks. After reviewing the seven creator briefs, one stood out immediately: Sam Beckman’s Brief: “Cross-platform power reminders with custom snoozes and sync functionality” This brief perfectly aligned with the problem we’d been experiencing ourselves. We realized:
- We had a personal pain point that needed solving
- Sam Beckman’s audience likely shared this frustration
- We had the technical skills to build a solution
- The 4-week deadline would force us to ship rather than over-engineer We decided to enter the contest. This wasn’t about a grand business plan—it was about building something we genuinely needed and seeing if others found value in it too. ________________________________________ Why RevenueCat? Initially, we considered building the app with just a free tier and possibly adding advertisements later. However, after exploring RevenueCat’s documentation, we realized it was the right tool for our needs. What Made RevenueCat Compelling:
- Cross-platform premium sync: Users who purchase premium on iOS automatically get it on Android (and vice versa). This is technically complex to implement manually, but RevenueCat handles it seamlessly.
- Unified API: Instead of managing Apple’s StoreKit and Google Play Billing separately, RevenueCat provides one clean SDK for both platforms.
- Built-in analytics: Conversion rates, revenue tracking, and customer insights in one dashboard without building custom backend infrastructure.
- Lifetime purchase support: Most IAP SDKs assume subscription models. RevenueCat elegantly handles lifetime purchases, which aligned with our “pay once, own forever” philosophy.
- Contest requirement: Since RevenueCat integration was mandatory for Shipyard, we committed to learning it thoroughly rather than treating it as a checkbox requirement. Result: Implementing monetization took 2 days instead of the 2 weeks we’d originally budgeted. The time saved went into polishing the core user experience. ________________________________________ Building RemindSync: The 4-Week Sprint Week 1: Architecture & Setup • Louis: Configured Supabase backend, designed database schema with Row Level Security policies • Kody: Initialized Android project with Jetpack Compose and Room database for local persistence • Both: Researched notification best practices and cross-platform sync strategies Key architectural decision: We chose Supabase over Firebase because: - Real-time subscriptions are built-in without additional cost - PostgreSQL provides more robust relational data handling than Firestore - Self-hosting option available if needed in the future Week 2: Core Features • Louis: Implemented reminder CRUD operations, local notifications, and real-time sync service on iOS • Kody: Built Android equivalent with AlarmManager for precise scheduling and notification channels • Integration: Connected both platforms to Supabase and validated cross-device sync functionality Technical challenge: Implementing notification actions (allowing users to snooze directly from notifications without opening the app). Successfully implemented using UNNotificationCategory on iOS and NotificationCompat actions on Android. Week 3: RevenueCat Integration • Designed and implemented paywall UI for both platforms • Integrated RevenueCat SDK for premium entitlement checks • Configured offerings: 5 free reminders, $4.99 lifetime unlock for unlimited reminders • Conducted extensive testing with sandbox purchases Pleasant surprise: RevenueCat’s webhook events made premium status syncing trivial. Purchases on one platform activate premium on the other within seconds. Week 4: Polish & Submission • Resolved offline edge cases (e.g., reminder created offline, then modified on another device) • Added pull-to-refresh functionality, enhanced snooze options, and recurring reminder patterns • Recorded demonstration video • Completed technical documentation • Published to TestFlight with public access link ________________________________________ Insights Learned
- Lifetime purchases address subscription fatigue: Market research suggests utility apps can achieve 18-25% conversion with lifetime purchases versus 5-8% with subscriptions. The $4.99 price point removes barriers while remaining sustainable.
- Building for a defined audience provides clarity: Sam Beckman’s brief prevented feature creep. Instead of debating hypothetical use cases, we focused on the specific needs outlined in the brief.
- Time constraints drive better decisions: The 4-week deadline forced ruthless prioritization. We shipped an MVP focused on core value rather than over-engineering edge cases. ________________________________________ Why This Project Matters Beyond the contest itself, RemindSync represents an important principle: For Louis: Creating a product that people actually use rather than letting it languish in a GitHub repository. Having a real audience waiting provides strong motivation. For Kody: Demonstrating that independent developers can build sustainable businesses without exploitative pricing models. Fair treatment of users can be profitable. For both: Gaining practical experience in rapid development, smart monetization, and effective cross-platform collaboration. These lessons will inform how we approach future projects regardless of the contest outcome. ________________________________________ What’s Next? If selected as Shipyard winners: - Allocate prize funding toward App Store and Google Play marketing campaigns - Contract a UI/UX designer to refine the interface (our strength is engineering, not design) - Establish customer support infrastructure and feedback channels - Prioritize Android feature parity with iOS If not selected: - Launch independently on App Store and Google Play using personal funding - Bootstrap initial marketing efforts - Iterate rapidly based on early user feedback - Consider open-sourcing portions of the codebase to benefit other independent developers Either outcome: RemindSync will launch. We built it to solve a problem we experience daily, and we’re confident others will find it valuable too. ________________________________________ The RevenueCat Impact RevenueCat was instrumental in making this project viable within the 4-week timeline. Critical contributions:
- Reduced complexity: The prospect of implementing IAP across both platforms, handling receipt validation, managing entitlements, and syncing premium status manually was daunting. RevenueCat made it approachable.
- Contest introduction: While we’d heard of RevenueCat previously, the Shipyard contest provided the impetus to actually learn and implement it. We’re now strong advocates.
- Time reallocation: The 2 weeks saved on monetization infrastructure went directly into improving sync reliability and offline functionality—features that directly impact user experience. In summary: RevenueCat didn’t just power our monetization strategy—it made the entire project feasible within the contest timeline.
Built With
- gradle
- jetpack-compose
- kotlin
- postgresql
- revenuecat
- room
- skip
- supabase
- swift
- swiftui
Log in or sign up for Devpost to join the conversation.