← All Projects

Classic Solitaire

A Klondike solitaire past 100K downloads at a 4.4 rating, built on a 40-module Unity architecture and shipped to both stores from one codebase.

IndustryMobile Gaming
Product TypeMobile Game
PlatformiOS & Android
EngineUnity 6
Result100K+ downloads at 4.4 stars
Classic Solitaire project hero image

The impact:

100K+
Downloads
4.4
Store rating
20
Languages
40+
Feature modules

What this product is.

Classic Solitaire is the flagship title in the portfolio: a Klondike card game for iOS and Android, released with no forced advertising and grown to more than 100,000 downloads at a 4.4 store rating. Everything a player touches — the deal, the coin economy, achievements, daily bonuses, subscriptions — sits on a modular Unity architecture designed to keep shipping features years after launch.

PROJECT FACTS
IndustryMobile Gaming
Product TypeMobile Game
PlatformiOS & Android
EngineUnity 6
Result100K+ downloads at 4.4 stars

What needed solving.

Casual card games live or die on retention, and the category is crowded with titles that monetise aggressively from the first session. The product had to feel generous enough that a player would stay for years, while still earning. On the engineering side, a single codebase had to serve two separately branded store listings, twenty languages and two app stores without the codebase forking into two.

How we approached it.

We built the game on a feature-module architecture — around forty self-contained modules resolved through a service locator — so each system can be developed, tested and released independently. Ads are opt-in only: a player can finish the game for years without seeing one, and monetization comes from RevenueCat subscriptions and coin packs instead. Localization is validated in CI against per-key length budgets, so a translation can never overflow a button, and the whole release path to Google Play and TestFlight runs from shared reusable workflows.

What's inside?

Opt-in advertising only

No forced ads anywhere. A player sees an ad only if they deliberately tap to watch one, and it can be switched off entirely in Settings.

Forty independent feature modules

Achievements, coins, daily bonus, premium, localization and the rest are separate modules on a locator-based framework, each with its own tests.

Twenty localized languages

511 keys per language, validated in CI against per-key length budgets so no translation ever overflows its button.

Subscriptions and coin packs

RevenueCat subscriptions alongside Unity IAP coin packs, with promo codes and native store offers rather than duplicate SKUs.

Cloud save and Play Games sign-in

Progress follows the player's Google Play Games account across devices, with manual transfer support between platforms.

Fully automated release pipeline

One push produces a signed Android bundle for Google Play and a TestFlight build for iOS, with version codes owned by the repository rather than the store.

Tools change. Standards don’t.

We choose the stack around the product — not the other way around.

  • Unity 6
  • C#
  • Firebase
  • RevenueCat
  • Unity IAP
  • Google Analytics 4
  • Remote Config
  • Google Play Games
  • Addressables
  • GitHub Actions
  • Fastlane

Unity 6, C#, Firebase, RevenueCat, Unity IAP, Google Analytics 4, Remote Config, Google Play Games, Addressables, GitHub Actions, Fastlane

What we handled.

We worked on the product development and implementation, focusing on building a polished, functional and user-friendly experience aligned with the goals of the product.

Product and technical architecture
Feature development
Monetization and live ops
Release engineering and CI/CD
Store presence and player support