Inspiration

Before a difficult conversation, most managers rehearse it in their head, or they don't rehearse it at all. ManagerGym gives that rehearsal somewhere to happen.

What it does

How a rehearsal works:

  • Pick a scenario, read the context and your objective, and write what you would actually say.
  • A practice counterpart answers turn by turn. For example: "I know the reports were not perfect, but the deadlines were extremely tight…"
  • When you finish, a local coach gives structured feedback and hints.
  • The screen notes that local mode keeps the transcript on your device.

Scenarios. The library covers situations new managers, team leads and founders meet early:

  • clear performance feedback;
  • saying no to an unrealistic deadline;
  • delegating;
  • repairing a tense meeting;
  • communicating a difficult change;
  • missed commitments;
  • a boundary with a senior leader;
  • responding after a visible mistake.

Voice mode. You can also answer aloud and then work through a guided self-check. Audio is not recorded.

Onboarding. Onboarding asks for a first name, a role and a first skill to practise. It then takes a short self-rated snapshot, which the app describes as "a self-reflection, not a test". Reminders are optional.

Your data and scope. No account is needed. Your profile, transcripts and scores stay on the device, and you can export or delete them from Settings. The app is available in 19 languages. ManagerGym is an educational rehearsal tool, not therapy, legal advice or HR adjudication.

Free and Pro:

  • Free: the core scenarios and tools, with ads.
  • ManagerGym Pro: the full scenario library, custom real-life scenarios, and unlimited history and reports. Pro also removes ads.
  • Plans: Pro is a monthly or annual subscription, and both start with a 7-day free trial.

How we built it

  • App: React Native / Expo. The practice engine, scenarios and coach run on the device, so a rehearsal works offline.
  • CI: typecheck, lint and tests run on every release build. A 16 KB page-size alignment gate runs on the release bundle.

RevenueCat. react-native-purchases sits behind a PremiumContext.

  • Entitlement: one, managergym_pro. It is the only switch for Pro, so a restore, a renewal and a lapse all take the same path.
  • Offering: managergym_default, which the app requests by id. It holds $rc_monthly and $rc_annual, which map to managergym_monthly:monthly and managergym_yearly:yearly.
  • Trial: both base plans carry the Play offer trial7 (7 days free, ACTIVE).

AdMob (free tier only).

  • SDK: the live build (versionCode 3) contains the Google Mobile Ads SDK and the AdMob application id.
  • Order: the entitlement is read fresh from RevenueCat before any consent form, SDK start or ad request. With Pro active, no ad code starts.

Challenges we ran into

  • A developer message on the paywall. When RevenueCat returned no offering, users saw a setup message meant for developers. They now see "Plans are not available right now. Please try again later." in all 19 locales.
  • A locked first recommendation. The first session recommended a Pro scenario the user could not open. It now recommends a free one.
  • Ads before the entitlement was known. A cached "not Pro" could start consent and ad loading for a paying user. The fresh read now comes first.
  • Billing needs the store build. The demo is recorded on the Play-installed build.

Accomplishments that we're proud of

  • 6,000 random monkey events across two seeds with 0 crashes and 0 ANRs on the release build.
  • Every scenario stays useful without paying. Pro adds depth.
  • Data stays on the device, with export and delete.

What's next for ManagerGym

A session transcript view, and more scenarios from the early-manager set.

Judges' access

  • Trial: open Settings → View Pro options, and choose Annual Pro or Monthly Pro. Google Play shows a 7-day free trial, and cancelling before it ends means no charge.
  • Free without a trial: the core scenarios and tools.

Built With

Share this project:

Updates

Submission history