Inspiration

Imposter games are having a moment. Everyone's played one at a party by now: everybody gets a secret word, except one person, who has to bluff through the round and not get caught.

The problem is how you play them on a phone. Almost every app does it the same way: one phone gets passed around the circle. You pass it, cover it with your hand, pass it again, somebody peeks, somebody drops it in the dip. By round three the phone is the least fun part of the game.

So I wanted two things nobody else was doing together:

  1. More than one game. A shelf of them, so the same group can keep playing all night without it getting stale.
  2. Everyone on their own phone. No passing, no peeking, and no internet needed, because the best party games happen in cars, basements and on sofas at 2am where the Wi‑Fi is bad or doesn't exist.

What it does

Faker is six party games in one app, built for 3 to 12 people in the same room.

Four imposter games

  • Word Imposter. Everyone knows the word. One of you is guessing. Take turns describing it without ever saying it, then vote.
  • Question Imposter. Same question for everyone. Almost. The imposter got a slightly different one and doesn't know it, so their answer is nearly right.
  • The Grid. Sixteen words on the table. Everyone except the imposter knows which one is tonight's word. Give a clue too obvious and you've told the imposter. Too vague and your own group suspects you.
  • Fake Artist. Everyone adds one stroke to the same drawing. The fake artist has no idea what it's supposed to be.

Two draft games

  • Draft Battle. You get a challenge, like beating Superman, and twenty dollars to do it with. Five lists, five picks, and the best of everything costs twenty five. Nobody wins, you argue about it.
  • Draft Auction. Everything is up for sale, everyone has twenty dollars, and you bid in secret. Only the winner pays. The table votes for the best team at the end.

It ships with 28 word packs and around 90 draft challenges, and Pro lets you write your own categories.

Three ways to play

  • One phone, passed around, for when it's just you and a table.
  • Same Wi‑Fi, everyone on their own phone.
  • Bluetooth, everyone on their own phone, with no internet at all.

Nobody signs up for anything. There are no accounts and no server. You open the app, one person hosts, and everyone else joins.

How I built it

Faker is React Native with Expo and TypeScript, with a bit of Swift and Kotlin where the phones have to talk to each other.

The networking was the hard part, and the part I'm proudest of. One phone hosts and runs the whole game. It deals the roles, runs the clock and counts the votes. Every other phone just shows what the host sends and sends back what the player tapped. That keeps things simple: there's one source of truth, so two phones can never disagree about who the imposter is.

Some details that made it feel solid:

  • Snapshots, not updates. The host sends the whole game state every time, with a version number. Bluetooth drops packets. If a phone misses one, the next snapshot fixes it on its own, and a phone that reconnects is instantly back in sync.
  • Deadlines, not timers. When a round starts, each phone measures its clock offset against the host, and the host sends an end time instead of "60 seconds". Every phone counts down to the same moment, even if the message arrived 300ms late on one of them.
  • A custom native Bluetooth module. The common React Native Bluetooth library can scan and connect, but it can't make a phone host. So I wrote a small Expo module in Swift and Kotlin that advertises the room and runs the server side.
  • Wi‑Fi uses Bonjour to find the room and plain TCP to talk, so it works on any home network with no internet.
  • Tests on everything that can break a party. npm test runs 282 checks on the game logic and 11,765 on the message format and on how the game handles a phone dropping out.

How it makes money

Every game is free forever. Faker Pro removes ads and unlocks every word pack, every draft challenge and custom categories.

  • $1.99 a week, or $29.99 a year
  • One pro entitlement in RevenueCat, with both plans in one offering

RevenueCat was the right call because Faker has no backend on purpose. It answers "does this person have Pro?" with no server of mine, restores Pro on a new phone with nothing to type, and gives me Google Play billing with the same code. Prices on the paywall come straight from the store, so every country sees its own currency.

The paywall shows up once, after onboarding, and "Maybe later" is always right there. Party games live or die on the group having a good first night, so I'd rather the free version be great and let people upgrade when they want more packs.

Challenges I ran into

  • My first App Store submission was rejected automatically, before a human even opened it. Apps with subscriptions need a Terms of Use link in the App Store description itself, not just on the paywall. That's an easy fix once you know, and a very confusing email when you don't.
  • Bluetooth on iPhone and Android behave differently in every way that matters: permissions, packet sizes, how long a phone stays discoverable. The room name has a length limit because it has to fit in one Bluetooth advertisement packet.
  • You can't test two phones alone with Expo Go. Once Bluetooth was involved I had to move to development builds and test with two real devices on my desk.

Accomplishments I'm proud of

  • Shipping it. Faker 1.0 went live on the App Store on September 15, and 1.1 with the two draft games followed on September 21.
  • Getting phone to phone play working with no internet and no accounts, which is the thing I wanted most when I started.
  • The cast. Every card on the shelf has its own 3D character art, all made to one style guide so it looks like one app.

What I learned

Doing the boring parts first (the host logic, the state format, the tests) made everything after it faster. Adding Draft Battle and Draft Auction took days, not weeks, because they reuse the same engine and the same networking as the imposter games.

What's next for Faker

  • Android is in closed testing and heading to Google Play
  • More packs, and categories for the draft challenges so groups can pick a theme

Built With

Share this project:

Updates

Submission history