HomeEducationCase study · P-007

Moneymaze: financial literacy for a credit union's members.

A financial education mobile app built for a credit union with Python, Django, Django REST Framework and React Native. Alongside budgeting education it runs a simulation exercise in which participants make a sequence of real-world financial decisions against a fixed income and see the consequences play out.

Selected clients since 2008
Power to LiveRBM GlobalDragonflySquiblerMOOSainsbury'sMPCX-LinkPower to LiveRBM GlobalDragonflySquiblerMOOSainsbury'sMPCX-LinkPower to LiveRBM GlobalDragonflySquiblerMOOSainsbury'sMPCX-Link

The challenge.

  • Financial education fails when it is delivered as information: people do not change behaviour because they were told a fact about compound interest.
  • The simulation exercise had to model interacting decisions — housing, transport, insurance, unexpected costs — where the lesson comes from the trade-offs rather than from any single choice.
  • It runs in facilitated group sessions as well as individually, so it had to work with a room of participants moving at different speeds without a facilitator managing each one.
  • It carries a member-facing institution's name, so the reliability and privacy expectations were those of a financial product rather than an educational one.

Our approach.

  • Put the simulation rules in Django on the server rather than in the client, so the scenario logic is reviewable and changeable centrally and cannot be inspected or altered by a participant.
  • Modelled a run as a sequence of decisions against an evolving financial state, which makes each choice's consequence traceable rather than delivered as an unexplained final score.
  • Built the client in React Native so a single codebase serves both platforms, keeping a facilitated session consistent regardless of what device a participant brought.
  • Kept the API stateless per decision through Django REST Framework, so a participant losing connectivity mid-session resumes rather than restarts.
  • Held only what the exercise requires — simulation state, not real member financial data — because the safest way to protect sensitive data in an educational product is not to collect it.

The outcome.

  • Learning comes from consequence rather than presentation: participants see how earlier decisions constrain later ones.
  • Scenario content can be revised centrally without shipping an app release.
  • The exercise runs in facilitated group sessions with participants at different points without co-ordination overhead.
  • The app carries no real member financial data, which keeps the privacy surface small.
“Dragonfly has been working with the team at Enigmatix Global for several years now on building out our web-based platform and APIs. One of their strengths is quickly building out a multi-disciplinary team to work on the development and delivery of features with different technical requirements. Their support has allowed us to accelerate our development work without building an internal team. They have also worked seamlessly with other third parties both during the acquisition of Dragonfly and development of our mobile app. Enigmatix Global has been instrumental in bringing our ideas to life and providing guidance to help us make the best technical decisions. I would recommend getting in touch with them if you're looking for support.”
Rebecca PalserCOO, Dragonfly

Questions about this build.

Still wondering something? Ask an engineer

  • Put the rules on the server and model the exercise as a sequence of decisions against a changing state. That gives you two things worth having: participants cannot inspect or shortcut the scenario, and educators can revise it without an app release. It also makes the outcome explainable — you can show which earlier decision produced the situation someone ended up in, which is where the actual learning happens.

Let's build from here.

Thirty minutes with an engineer who builds. No sales, no drip campaign. If we're the wrong fit we'll tell you and point you somewhere better.

Response
Within one working day
Minimum
Two-week discovery