← Back to projects
AstorMemory app icon

AstorMemory

Android iOS Google Play Firebase KMP Compose Multiplatform SQLDelight Koin Ktor Client Coroutines

AstorMemory is a classic memory matching game where players flip cards to reveal and match fantasy creatures called “Astors”. The project demonstrates modern Kotlin Multiplatform development with shared game logic across Android and iOS.

Features

  • Cross-platform game engine (Android & iOS) from a single Kotlin codebase
  • AI-generated Astor creatures fetched dynamically
  • Original background music and sound effects
  • Multiple difficulty levels (1–30 pairs)
  • Combo scoring system with miss penalties
  • Dark mode support and configurable grid layouts
  • Local high score persistence via SQLDelight
  • No registration required

Architecture

Shared business logic is written once in Kotlin and consumed by both the Android Compose UI and the iOS CocoaPods target. Platform-specific audio uses the expect/actual pattern: SoundPool/MediaPlayer on Android and AVAudioPlayer on iOS.

Tech Stack

Layer Technology
Language Kotlin (Multiplatform), Kotlin/Native (iOS)
UI Compose Multiplatform
DI Koin
Database SQLDelight
Networking Ktor
Async Kotlinx Coroutines
Analytics Firebase Analytics & Crashlytics (Android)
Image loading Coil