4,446 PUZZLES SOLVED

Inspiration

I play the New York Times games every day, and over time I started collecting other logic puzzles too: niche ones I found on websites and in Android games, like Pips, Tracks, Shikaku and Kakuro. They were scattered across a dozen apps and sites, each with its own look, its own account and its own ads.

I wanted one clean, calm iOS app that brought the puzzles I love together, with a Daily challenge that everyone plays on the same board.

What it does

Logic Puzzles is a collection of 17 logic games in one app: Sudoku, Mini Sudoku, Killer Sudoku, Queens, Flow, Tracks, Shikaku, Nonogram, Minesweeper, Water Sort, Mazes, Pips, Kakuro, Cross Math, Number Maze, Number Match and Sliding Puzzle.

  • A Daily for every game. Everyone in the world gets the same board each day, with a leaderboard and a streak to protect.
  • Boards that solve themselves. Each game's page shows a live board playing through a solve, so you understand the game before you start.
  • Made to feel good. Pours with corks in Water Sort, crowns that ripple in Queens, and a train that rides your finished line in Tracks.
  • Play as a guest or sign in. Your streak, stats and favourites follow you across devices and the website.
  • Free, with no paywall. Money comes only from rewarded ads the player chooses to watch: a hint, the solution, or a refill of lives.
  • Six languages: English, German, Spanish, French, Italian and Brazilian Portuguese.

How we built it

SwiftUI

The whole app is SwiftUI (iOS 18). There's one shared design system of ink outlines, hard shadows and chunky tiles, with a custom board for each of the 17 games.

Supabase

Supabase is the source of truth for accounts (including anonymous guest sessions), profiles, per-game mastery, every completion, and the Daily leaderboard. The iOS app and the website share it, so it's one experience across both.

OneSignal: a messaging layer that reacts to what players do

We didn't want "blast everyone at 9am". We built OneSignal around what the player has actually done:

  • Shared identity. Every player, guests included, is identified in OneSignal by their Supabase ID. The ID a completion is saved under is the same ID OneSignal knows, which is what makes cross-platform messaging possible.
  • Up-to-date tags. The app keeps these current:
    • daily_reminder: whether they've set their own reminder
    • player_name: their display name
    • top_game: the game they play most
  • The Daily Nudge Journey:
    • Only targets players who don't already have the in-app 9:00 reminder and haven't played in the last 6 hours.
    • Sends at 10:00 in each player's own time zone and re-arms every day.
    • Drops anyone who opens the app before it fires.
  • Personalised with Liquid. For example: "Today's **Queens* is ready 🧩, Sam"*, falling back gracefully when a tag is missing.
  • Opens the right screen. Tapping a notification opens the Daily, or straight into that game's Daily. Every open is tracked, so we can see which messages bring people back.
  • Asked at the right moment. Onboarding asks for notification permission right after explaining the Daily, not as a cold prompt. There's also a Puzzle Nudges switch in Settings, so players stay in control.

AdMob + RevenueCat

  • Rewarded ads only. No banners and no interstitials. Every ad is something the player chose, for something they wanted: a hint, the answer, or another life.
  • Ad revenue in RevenueCat. Ads load through RevenueCat's AdMob integration (loadAndTrack), so ad revenue shows up in RevenueCat alongside everything else. Each surface (hint, solution, lives) has its own placement, so we can see which moment earns.
  • The reward is verified on RevenueCat's servers before it's granted, so a tampered app can't give itself free hints.
  • Privacy-first. No tracking prompt and no advertising ID, with Google's consent form for EU and UK players.

PostHog

Product analytics: per-game starts and completions, onboarding steps and notification opens.

Challenges we ran into

  • One design for 17 very different games. A Water Sort rack, a hex Number Maze and a 9×9 Sudoku don't naturally share a layout. We built one "stage" and one visual language, then tuned every board until it looked native in it, on phone, iPad and the web.
  • Making every game solve itself. Each game needed its own demo. Water Sort was the hardest: a shortest-solve search gave up on bigger boards, so we switched to a best-first search that finds a solve in milliseconds.
  • Data showed players leaving within seconds. PostHog showed some games (Killer Sudoku, Pips) being abandoned in under 15 seconds. We added starting digits, a first-run tutorial and a "drag a domino" hint, and fixed a Pips drag bug that made dominoes land a cell off.
  • One identity across three systems. Linking guests and signed-in players in Supabase, PostHog and OneSignal without losing progress took real care. That includes someone who plays as a guest, then signs up, then signs in on another device.
  • Ads that don't feel like ads. Keeping monetisation fully opt-in and still verifiable meant wiring reward verification end to end.

Accomplishments that we're proud of

  • Over 4,000 puzzles solved by players so far.
  • 17 complete games, each with a Daily, a leaderboard and its own polished feel.
  • Boards that play themselves on every game's page. That's the moment people "get" a new puzzle.
  • A OneSignal setup that treats notifications as something useful, not spam: identity shared with our database, messages that depend on what the player has done, personalised wording, and taps that open the right screen.
  • No in-app purchases and no paywall. Every ad is the player's choice and every reward is verified.
  • Shipped in **six languages.

What we learned

The biggest lesson was design. Making one experience that feels right on phone, iPad and the web, across 17 games with completely different mechanics, meant a strict design system and a lot of iteration, often with HTML mockups before any Swift.

The second was choosing platforms that bring everything together:

  • Supabase as the single source of truth for who someone is and what they've played.
  • OneSignal to act on that data with the right message at the right time.
  • RevenueCat to tie ad revenue and reward verification into one view.

Picked well, they turn three separate tools into one app that feels coherent.

What's next for Logic Puzzles

  • More to come: more games, friends and head-to-head Daily results, and A/B testing message timing and wording in OneSignal.

Built With

Share this project:

Updates

Submission history