Why I'm building Club Forge
I run a karate club. I love running a karate club.
What I don’t love is the Sunday afternoon I lost last spring working out which of my juniors were eligible to grade. I had a spreadsheet. It had the ranks in it. It also had a column for date of birth, another for enrollment date, a third that I was using as a rough “months at this grade” counter, and several cells that disagreed with each other because I’d updated one end of the sheet without updating the other.
I spent about two hours on it. I found three kids I’d nearly missed and one I’d already graded who was still marked as pending. Then I closed the laptop and went and made a cup of tea.
That’s just running a small club with no dedicated software for it.
The problem with the existing options
When I looked at what was available, there were roughly three categories.
Generic gym software that bolts on a “martial arts” tag somewhere in the settings. You get membership management built around monthly direct debits and a class booking widget, and you spend your time fighting the assumptions it’s made about how a fitness business works. It doesn’t know what a kyu grade is. It doesn’t know that a family of four might have two adults training and two juniors, or that one of the juniors does karate while the other does judo. It definitely doesn’t have a grading workflow.
Software built in the US, for the US. Prices in dollars, legal compliance for a different jurisdiction, no concept of the British Judo Association’s Mon grade system for under-16s, no thought given to UK GDPR. You can usually make it work, but it’s not built for you.
And a handful of bespoke systems that exist somewhere — usually sold by someone who also runs a club — that are expensive, hard to evaluate, and not obviously better.
None of them felt like the right thing for a small UK dojo running multiple disciplines with mixed junior and adult membership and a genuine obligation to handle data correctly.
What I actually wanted
Some of it sounds obvious when you list it:
- A proper rank ladder per discipline, built around how those disciplines actually work — including BJA Mon grades for juniors, mon tabs for Jujitsu, the BAA structure for Aikido
- Family memberships that can flex — two adults and a junior, or one adult and three juniors, without having to bodge it
- A grading workflow where I nominate students, they confirm attendance, I record outcomes, and the system updates their rank automatically
- GDPR that isn’t an afterthought — consent tracked properly, data retention policy enforced, a way to anonymise lapsed members after 12 months without losing the financial records I’m legally required to keep for seven years
- A check-in system that works at the door — not on my phone, not on a sign-in sheet, but on a tablet that students can tap through themselves while I’m setting up mats
Most of that is table stakes for running a club. None of it existed in one place, built the way I needed it.
So I started building
The decision to build it myself rather than keep adapting something that didn’t quite fit happened gradually and then all at once. I spent a few months sketching out what the thing should actually do — in a Notion doc, then in a more structured spec, then in a Firestore data model that started to look like something real.
The moment it stopped being a planning exercise was when I wrote the first actual Flutter screen and realised I was solving a problem I understood completely, because I live with it every week. That changes how you design software. You are the user.
Club Forge is built in Flutter — one app, role-based. An owner and coach interface for managing the club, and a kiosk mode that lives on a shared device by the dojo door. Both run on the same Firebase backend. Kiosk mode authenticates with a PIN and is designed to be operated by a nine-year-old who’s just arrived for karate class and hasn’t taken their coat off yet.
The admin side handles membership plans, profiles, enrollment across multiple disciplines, attendance sessions, grading events, coach compliance records, and a notification system that can target members by discipline or send announcements to everyone. The data model is multi-tenant — built from the start to support more than one club, not bolted on later.
We’ve run it through a grading cycle at Ichiban Leeds.
Where it’s at
The foundation is done and the core features are working. Members, memberships, enrollment, attendance, grading — all built. The student tablet check-in flow is working at the dojo. Cloud Functions handling daily membership checks, trial expiry, DBS and first aid reminders, and grading notifications are deployed.
What’s still being built: the full payments integration with Stripe, bulk email delivery (which requires upgrading the Firebase plan — a known pending step), and a few remaining admin screens. The Flutter UI for upgrades, downgrades, and cancellations is built; it’s waiting on the backend Cloud Functions.
None of that is a surprise. It’s a real software project, not a pitch deck.
What’s next
Once the remaining features are locked and the Stripe backend is wired up, Club Forge will be ready to open up to other UK dojos. The multi-tenant architecture is already in place — the platform is built to support more than Ichiban Leeds from day one.
If you run a dojo and you’ve been managing members in a spreadsheet, or wrestling with software that doesn’t understand how a martial arts club actually works, watch this space.
No sign-up yet. No pricing announcements yet. Just software being built properly, by someone who needs it.
Kieron Greeff — Founder, Club Forge. Running Ichiban Leeds since the spreadsheets got old.
Kieron Greeff is building Club Forge and runs Ichiban Leeds, a karate club in Leeds. He’s been training martial arts for many years and building software for some of them. Read more about Club Forge →
← Back to all posts