Inspiration

When I was a child, I used to go on vacation with my family; in the evenings, we would go for walks, have ice cream, or visit the craft market. I remember walking hand in hand with my father, who used a specific technique to train my mental math skills. After a series of exercises, he would ask for the answers; sometimes I got them right and sometimes I didn't, but after a while, I was able to multiply two-digit numbers in the blink of an eye. This gave me confidence at school and made my time in primary and secondary education a breeze, that confidence followed me all the way through school; math went from my biggest worry to one of my strengths. That method is what inspired me to create this app — a way to share it with others, always with the goal of fostering personal development.

What it does

Mentalator is a mental math training app for iOS and Android that stands out for its hands-free functionality. Instead of entering answers by tapping the screen, users solve arithmetic problems aloud; the app uses voice recognition to listen, verify the answer, and automatically move to the next exercise. This allows users to train their mental agility while walking, traveling, or doing household chores, without needing to touch their phone. It features two practice modes, scheduled training plans with local notifications to encourage a daily habit, and on-device statistics that track progress and accuracy over time. Naturally, it also supports touchscreen input for situations where hands-free use is not feasible.

How we built it

Mentalator is built as two fully native apps — Kotlin + Jetpack Compose on Android, Swift + SwiftUI on iOS — with no shared codebase or cross-platform framework. Voice interaction is fully hands-free: each platform uses its own native speech recognizer so users can solve problems out loud without touching the screen.

Challenges we ran into

Building a synchronized text-to-speech + speech-recognition loop — read the problem aloud, listen for the spoken answer, validate it, move to the next one — turned out to be harder than expected on both platforms, and for different reasons each time.

Accomplishments that we're proud of

Shipping a fully native app on both platforms with zero shared code, yet matching colors, custom-drawn UI, and behavior

What we learned

That building two apps side by side isn't one task done twice — each platform has its own right way to do things (storage, notifications, even the tab bar), and respecting those differences is what makes both apps feel native instead of ported.

What's next for Mentalator

--Expanding language support — this version ships in English and Spanish, with more languages planned. -- I'm also sketching out new game modes for an upcoming update, building on the two practice modes already in the app. -- Plans include the ability to customize UI colors and design.

Built With

  • jetpack-compose
  • kotlin
  • swift
  • swift-ui
Share this project:

Updates

posted an update —

The Android version is finally live!

After several days of waiting, Mentalator was approved by Google, and you can now install it from Google Play:

https://play.google.com/store/apps/details?id=com.kaizenprogramming.mentalator

Mentalator is the mental math trainer built around your voice, not your thumbs: say your answer out loud and keep going while you cook, fold laundry, work out or take a walk.

It's also available on iPhone and iPad: https://apps.apple.com/us/app/mentalator/id6811958835

Thanks to everyone who followed along, and to the Shipaton team for the push to ship it. Feedback is very welcome!

Log in or sign up for Devpost to join the conversation.

Submission history