Marat Khusainov
Meerno

Meerno

iOSv2 released

Language-learning app v2 released: new backend, AI onboarding, retention loops and reworked monetization

Swift 5UIKitRealmSwiftLaravel 10PostgreSQLOpenAI gpt-4o-miniDeepLAdapty
View on App Store

v2 — the relaunch

Meerno v2Screens 1Meerno v2Screens 2Meerno v2Screens 3Meerno v2Screens 4Meerno v2Screens 5Meerno v2Screens 6

v1 — original work (2023)

Meerno v1Legacy 1Meerno v1Legacy 2Meerno v1Legacy 3Meerno v1Legacy 4Meerno v1Legacy 5

Problem

v1 was my first iOS product (built from scratch in 2023): translator + custom dictionaries + flashcards + social. After 1.5 years and v1.2.7 — 500 downloads, 0 revenue. Honest failure. The lessons: weak onboarding (users dropped before creating a single dictionary), no retention mechanics, no real monetization wiring (StoreKit shipped but never tested with real subs), generic translator quality, no AI to enrich words. I shelved the project, shipped client apps for 2 years to grow, then came back with a clear plan: keep the original idea (personal vocabularies + social), rewrite the foundations, add what was missing.

Solution

Full relaunch on iOS 18.0+, now live in the App Store. Kept UIKit (programmatic layout) and Realm for offline-first storage — they worked. Replaced everything weak: built a fresh Laravel 10 / PostgreSQL backend at api.meerno.space (51 REST endpoints, JWT auth with auto-refresh on 401). Swapped translation engine to DeepL primary + Google Translate fallback. Added an OpenAI gpt-4o-mini pipeline for word enrichment (transcription, synonyms, phrases) — through a backend proxy to keep keys safe. Rebuilt onboarding from scratch as a Coordinator-driven flow: a few questions about goals and language pair, then AI assembles a personalized starter vocabulary (Branch A for ru/en/es pairs) or routes to a curated base dictionary (Branch B). Added a post-onboarding mini-training so the user finishes onboarding with words already learned. Introduced retention loops: streak tracking with weekly freeze, achievements, batched training sessions, image-enriched cards via Unsplash. Replaced raw StoreKit with Adapty (monthly/yearly + post-onboarding Premium value screen). Added Apple Sign-In alongside Google + email. 916 commits, 306 of them since January 2026.

v1 → v2: what changed

AreaBefore (v1)After (v2)
iOS targetiOS 13+iOS 18.0+, Swift 5
ArchitectureMVP, navigation ad-hocMVP + Coordinator for onboarding, protocol-driven
BackendLegacy REST APILaravel 10 / PostgreSQL 14, 51 endpoints, JWT auto-refresh
TranslationGoogle Translate + YandexDeepL primary + Google fallback
AI enrichmentOpenAI gpt-4o-mini: transcription, synonyms, phrases
OnboardingGeneric, users dropped before first dictCoordinator flow + AI-built personal vocabulary + mini-training
RetentionStreaks with weekly freeze, achievements, training batching
Training modesFlashcards onlyCards + spelling + audio (TTS + SFSpeechRecognizer) + audio-learn
MonetizationRaw StoreKit, never tested liveAdapty (monthly/yearly) + post-onboarding Premium value screen
AuthGoogle Sign-In + emailApple + Google + email
DependenciesCocoaPodsSwift Package Manager only
BrandOriginal logoNew wordmark with orbital ring

Key improvements

  • Onboarding with AI-built personal vocabulary — user finishes setup with 8 already-learned words
  • Streak system with weekly freeze — keeps habit alive without punishing real-life breaks
  • OpenAI enrichment pipeline through backend proxy (no keys on device)
  • DeepL translation quality jump over the v1 Google/Yandex combo
  • Adapty paywall flow with post-onboarding Premium value screen
  • Audio-learn training mode with TTS + speech recognition
  • Image-enriched cards via Unsplash for visual memory
  • Backend rewritten on Laravel 10 / PostgreSQL: 51 endpoints, JWT auto-refresh

Results

  • +v1: 500 downloads, 0 revenue, 1.5 years, v1.2.7 — honest failure
  • +v2: 916 commits total, 306 since January 2026 — released in App Store
  • +Backend, AI pipeline, onboarding, retention loops, monetization all rebuilt from scratch
  • +New brand identity: square wordmark with orbital ring
  • +Old v1 screens kept as a record of the original work

Role & timeline

iOS developer & product owner. v1 (2023): team — mentor, backend, designer; 1.5 years. v2 relaunch (2024–2026): solo — iOS + Laravel backend + AI pipeline + brand

Need something similar?

Let's discuss your project
All projects