-
-
Together: one shared board, every cell in the colour of whoever filled it (real iPhone screen recording)
-
Compete: race a friend on the same puzzle live, phone to phone, no internet needed
-
The finish: the board becomes a trophy card and the SOLVED stamp lands
-
One daily for everyone, with your friends' times on the leaderboard
-
Stuck? The coach walks you through the move out loud, lighting each cell as it speaks
-
The same lesson in the language you think in: Hindi (also Marathi, Kannada, French, Italian)
-
Friends' scores on split-flap plates, a nod to airport departure boards
-
The interactive paywall: try Plus first, then choose a plan with a 7-day free trial
-
The Co-Sudoku app icon, as it ships on the App Store
Awards I'm entering
Best Game Award and RevenueCat Design Award.
Inspiration
My family loves puzzles. Once, on our way to a flight, my wife grabbed two newspapers at the newsstand, so we could race the same sudoku. Another time, halfway through a puzzle, I was left scratching my head looking for logic while my mom raced past me to the finish line. When I asked how she had done it, she said, "trial and error." She had won, but nothing had clicked. No real joy of puzzle solving.
I wanted to change that. Keep the race, and put a teacher where the guessing used to be. That's how Co-Sudoku was born.
What it does
Co-Sudoku is sudoku for more than one person. Race a friend on the same puzzle, phone to phone over Multipeer with no Wi-Fi network and no internet, or over SharePlay on FaceTime. Or share one board with up to four people, every cell in the color of whoever filled it.
When you're stuck on a solo game or a daily, a coach walks you through the move instead of handing you the digit. Tap the bulb to read it, hold it to hear it, in English, Hindi, Marathi, Kannada, French or Italian (more languages to follow). Every mistake and hint is accounted for.
Everyone gets the same daily, and your friends' scores flip like a departure board, in the app and on your Home Screen.
Every mode, every difficulty, every written lesson and the last week of dailies are free. Plus adds unlimited voice hints, your own replays, AI analysis of the day's field, the full daily archive, and themes and icons.
How I built it
I built Co-Sudoku on my own, natively in SwiftUI for iPhone and iPad. My first commit was on June 6, and it went live on the App Store on September 22.
Nearby games run on MultipeerConnectivity, remote ones on SharePlay, and CloudKit carries friends and the daily on your existing iCloud account, with no sign-up. The engine rates puzzles by the hardest technique a person needs, not by clue count, and each language has its own lesson writer rather than a translation. The coach's AI voices sit behind a small Cloudflare Worker that keeps the key out of the app. RevenueCat runs one Plus entitlement across monthly, yearly and lifetime.
Challenges
The first challenge was at home. My mom skipped right past the English hints. Her phone was set to English, but she thinks in Hindi, so the coach was failing the person I built it for. So the coach got a language setting of its own: the menus follow your phone (English, French or Italian), while the coach teaches in whichever of its six languages you pick. Hindi, Marathi and Kannada live only in the coach, because so many people keep their phone in English and think in another language. It was a design decision, an accessibility decision and an India decision.
The technical challenge was making multiplayer feel ordinary. Phones sleep, calls drop, the host walks away, radios reconnect in odd orders. The game has to hand the board to someone else and carry on without anyone noticing.
Then App Review. My first submission was rejected: the reviewer couldn't find Plus (it was four levels deep), and my nearby-play screen put a "Maybe later" in front of the permission. Now Plus is the first card in your profile, and iOS asks by itself the first time you open Live.
Accomplishments that I'm proud of
The thing I wanted for my family works: two phones racing the same puzzle with no internet, one board filling up in four colors, and a lesson my mom can hear in Hindi.
And the core stays free. Anyone can invite a friend, play every mode and read every lesson without paying. Plus is depth, not a gate on the game.
The coach also runs without a meter. In July I set its rule:
People will learn sudoku without the English jargon, in their native language, without a meter.
The last part means teaching one more person has to cost me close to nothing. So the AI voices sit behind a small Cloudflare Worker that caches every sentence they speak. Everyone plays the same daily, so each sentence is paid for once per Cloudflare data center, and every phone after that hears it free. The premium voice is paid for by a grant today; if it ever fails or the grant runs out, the coach falls back by itself to a second voice whose use fits inside a monthly free allowance.
What I learned
My first spoken hints just read the hint text aloud. It was almost just a reader of text, too basic, and I wanted a teacher. So I rewrote the lessons as flowing scripts, directing them myself one technique at a time, and made each cell light up as the voice names it.
A voice service made for Indian languages couldn't tell the app when each word was spoken, so the lights could only be guessed. That was a dealbreaker, and two days later I had switched away from it. Timing mattered more than the voice.
Twice, a lesson's logic sounded right and was wrong, and I only caught it by working the puzzle myself. A confident wrong teacher is worse than none. Now the board shows the contradiction before the coach calls anything impossible, and when a script can't read a lesson's exact shape off the board, the coach falls back to a plain walk-through.
And I learned to cut what I'd built. I made a key that lets you say a digit instead of tapping it, and it never shipped, because the phone's own Voice Control already does that job.
What's next
Native speakers to review the Marathi, Kannada, French and Italian lessons. More techniques for the coach to teach, for the hardest puzzles it can't explain yet. More languages to teach in. And a lot of listening to the people who play.
Built With
- app-intents
- avfoundation
- cloudflare-workers
- cloudkit
- core-haptics
- core-ml
- foundation-models
- gamekit
- groupactivities
- ios
- ipados
- multipeerconnectivity
- pencilkit
- revenuecat
- shareplay
- storekit
- swift
- swiftcharts
- swiftui
- vision
- visualintelligence
- widgetkit
- xcode-cloud
Log in or sign up for Devpost to join the conversation.