Articles · App ExamplesUpdated September 2026

A martial arts school app is a grading record with a register attached.

Most clubs already hold everything a martial arts school app would hold. It sits on grading cards in a box, in a register book by the door, and in the head instructor's memory. That works until the instructor is away, a parent asks when their daughter last graded, or twenty licences fall due in the same month. Generic fitness app builders miss the part that matters here, because a dojo is not tracking workouts. It is tracking people moving through a syllabus over years.

This page covers what a grading record has to contain, why the register is half the system, what changes once children and their parents are the users, and where the rule that a pupil sees only their own history actually has to live.

Try a grading eligibility rule

The short version

A club runs on two records, the grading and the register.

The grading history says where each pupil is and how they got there. The register says who was actually on the mat, which is what makes the next grading decision defensible when a parent asks why their child was held back.

Everything else, fees, licence expiry, seminar sign-ups, kit, hangs off those two. Software that models classes but not grades feels wrong in a dojo within a month, because the belt is the thing the club is organised around.

A grade is an event, not a field

The common first mistake is storing a belt as one value on a pupil. It reads well and it loses everything. A grading is a dated event: who was examined, by whom, against which syllabus, on what date, and what the outcome was, including the outcome of not being put through. The pupil's current belt is then simply the most recent pass. What people call a belt tracking app is mostly this one decision made correctly.

The second mistake is putting the grade list in code. Grades are not a fixed ladder across a pupil's career. The British Judo Association runs 18 grades in its mon system, each with its own belt colour, aimed at 8 to 17 year olds, and gradings are usually carried out at the judoka's own club by a British Judo licensed coach. A judoka has the option to move to the kyu grade system at 16, and must move at 18. So a child can cross schemes mid-career, and a record that hard-codes one ladder cannot represent the years before the move.

In practice that means three tables: the grades themselves, which you can edit, the grading events that point at them, and the pupils. A karate school app, a judo club app and a taekwondo school app all need those same three tables and completely different rows in the first one. Get that right and adding a new syllabus later is data entry rather than a rebuild.

British Judo Association, Mon Grade Scheme

The register is the other half

Eligibility to grade is almost never time alone. Most clubs want a minimum period in grade and a minimum number of classes since the last grading, and plenty add a syllabus sign-off or a seminar. Those conditions run at once and the tightest one decides. An app that shows only weeks since the last grading will put forward a pupil who has been on the mat four times, which is a conversation with a parent nobody wants.

The register has to be markable in about twenty seconds by someone standing in a doorway in a gi while the class is bowing in. That rules out a form. It means the list of pupils expected at that class, large tap targets, and a save that survives a sports hall with no signal. If marking the register takes longer than the paper one, it will not be marked, and then the grading rule has nothing to stand on.

It also has to hold the awkward cases: a pupil who trained at the affiliated club across town, a make-up class, a grading attended but not passed, a term where somebody was injured. The timetable itself is a separate problem. If your club runs several halls and age groups, it is worth solving as a class schedule app first and hanging attendance off the classes it already knows about.

Try it

Is this pupil ready to be put forward

A club rule of 16 weeks in grade, 24 classes since the last grading and 12 syllabus items signed off. Three conditions run at once and the club sets all three.

Not yet eligible

  • Time in grade: 5 more weeks
  • Mat time: 5 more classes
  • Syllabus: 2 more items signed off

Fees, licences and what the app may ask for

Money in a dojo is rarely one pupil paying one fee. It is a family paying for two children on a sibling rate, a governing body licence that expires on its own date, gradings paid for separately, and a kit order twice a year. The useful record is which of those is currently unpaid or expired, per person, rather than a running balance nobody reconciles.

Licence expiry is the part worth automating first, because insurance often depends on it and checking a paper list is nobody's favourite evening. A membership management app handles renewals properly, and a club's version is the same shape with a governing body number and an expiry date attached to each person.

Collecting the money inside the app is where a plan usually meets a platform rule. Apple's App Store Review Guidelines say apps in the Kids Category must not include links out of the app, purchasing opportunities or other distractions for kids unless those sit behind a parental gate, and that such apps should not carry third party analytics or third party advertising. A club app whose accounts belong to parents is usually not a Kids Category app, but decide that deliberately rather than at review.

Separately, no app builder ships card processing. Taking payment means bringing your own provider and wiring it up. A lot of clubs are better served by leaving fees on standing order and using the app only to show what is unpaid and what has expired.

Apple, App Store Review Guidelines, Kids Category

Who is allowed to see a child's history

Three kinds of user turn up immediately. Instructors need everyone. Parents need their own children and nobody else's. Older pupils need themselves. This quietly decides the whole data design, and it is the requirement homemade club apps get wrong most often, because hiding rows in the interface is not the same as refusing to send them. A filtered list on the screen still means every pupil's record was sent to that phone.

On the specific question of whether an app built with Newly can record a grading and show a pupil only their own history: what follows is what the documentation says, which is not the same as a build we ran. Per-user private data is treated as ordinary. The worked example on the sign-in page is a request to the agent to let people create an account and keep their own notes private, and the backend page suggests saying up front that people sign in and see their own saved data on any phone. Apps start local-first, with data on the device, and a backend with sign-in and a Postgres database is added when you ask for accounts or shared data.

What the documentation does not describe anywhere we could find is a roles or permissions feature: there is nothing about an instructor account that reads every pupil while a pupil reads one. So scoping records to the signed-in person is documented; the instructor and parent split is a rule you have to ask for and then verify. There is no database viewer in the app either, so verifying means signing in as a pupil account and looking at what actually comes back, or opening the read-only development database address the command line tool prints.

Before designing tables, settle the role question on paper: who counts as the parent of whom, what happens when a pupil turns 18, and whether a senior student who also teaches is both at once. The general shape of instructors versus parents is worth working through first, because retrofitting it is expensive. None of this is a safeguarding system, and an app that records who was on the mat does not discharge any duty a club owes the children in it.

What each option gives a club

OptionGrading history per pupilRegister marked on the matParents see their own childYour club's own grading rule
Grading cards and a register bookin the boxYesNoYes
A shared spreadsheetYesafter classNoYes
A general class booking appNoYesbookings onlyNo
Off-the-shelf club softwareYesYesYesits rule, not yours
An app you buildYesYesif you write the ruleYes

Building one around your own club

Club software exists and some of it is good. Every dojo management app on the market is built around one idea of how a club runs: fixed terms, one grading scheme, fees through their processor, one instructor in charge. Clubs that do not fit spend their evenings working around it. The awkward parts are always specific: a syllabus nobody else uses, a second club night at a leisure centre, a family rate the founder invented in 2009, a grading outcome that is neither pass nor fail.

Newly is an AI app builder. You describe the app you want, including your own grading rule and who is allowed to see what, and it writes a real React Native and Expo project you own, runs it on a cloud iPhone or Android simulator while it builds, and ships it to TestFlight and to Google Play internal testing. It is $25 a month and there is no free plan. iOS needs your own Apple Developer account. It is not club software and it does not arrive knowing your syllabus. It is what you use when the syllabus is the part that will not fit.

Start with the two tables that carry the club, pupils and grading events, and nothing else. Add the register once the grading rule is written down in a sentence you would be happy to read out to a parent. Leave fees until last, because most clubs find that the fees were never the painful part.

Questions people ask about martial arts school apps

Two records carry everything else. A list of grading events, one per examination, each with a date, an examiner, the syllabus used and the outcome including a hold-back. And a register of who was on the mat for each class. Fees, licence expiry, seminars and kit all hang off those two. A karate school app, a judo club app and a taekwondo school app need the same tables and different rows in the grade list.

Describe how your club actually grades

Write down your own grading rule, who examines, and who is allowed to read a child's record, then build the app around those three answers.

Start building