Build log · Shipped Oct 31, 2026
A kids' dance franchise demo, from class page to parent portal
A made-up dance franchise where one registration on a location page reaches the roster, the parent's portal and corporate's numbers at once.
Most of the businesses I talk to run in one location. This demo is for the ones that don't: a franchise with a corporate office, owners in a few dozen cities, and parents who just want to know what time class is on Tuesday.
It's a made-up kids' dance franchise called Twirlbird. Teachers bring ballet, tap, tumbling and hip hop into preschools during the school day, and run older kids' classes at community centers after school and on Saturdays. There are 38 locations in 15 states, every owner and family invented, on real city names so the map feels real. You can try it from the demos link on forecheckai.com.
One registration, four places
The point of the demo is what happens after a parent taps Register. Every location page has a class list you can filter by your child's age or the school they attend. Pick a class, fill in the form, and that registration shows up:
- in that location's roster and its list of new sign-ups from the website,
- in the parent's portal, with the schedule and messages from the teacher,
- in corporate's network numbers and activity feed,
all at once, with nobody retyping anything. The contact form works the same way. A question from a parent lands in that location's inbox, and the owner turns it into an enrollment in one step, with the parent's details already filled in.
The rules it follows
A franchise runs on its policies, so the demo enforces them instead of trusting everyone to remember:
- Age ranges are real. Try to put an 11-year-old in a class for 3 to 5 year olds and the form says so, with the child's age.
- Full means full. A full class takes a waitlist. The owner can't offer a spot until a seat opens, either because someone dropped or because they raised the class size. When a spot opens, the family gets a message in their portal.
- Dropping follows the notice rule. Parents drop a class from their portal. Notice by the 25th means next month isn't charged, and the portal tells them which month is the last one before they send the request.
- Siblings get their discount. A second dancer in a family shows 10% off on the family's bill, and the yearly registration fee is listed beside it.
Corporate's side
Corporate sees every location on one screen: active dancers, seats filled, waitlists that say a location needs another class time, and parent questions nobody has answered yet.
The franchise pipeline is where the rules matter most. When someone applies to own a location, their answers land on a card with a territory check. If the city they want is already served, the card names the location that serves it, and awarding that market takes a written note first. Federal rules give a buyer at least 14 days with the disclosure document before anyone signs, so the pipeline won't let a candidate be awarded early. Someone who filled in the franchise form but really wants a teaching job gets sent to the hiring list of the location near them instead.
Announcements go to every location or to one state, and corporate can see which owners have read and acknowledged each one.
Why it's built this way
Class businesses usually end up with a website in one place, a registration tool in another, a parent app that needs its own login, and a spreadsheet at corporate trying to hold it all together. Here the public website, each owner's day, the parent's portal and corporate's view share one set of records, so there's nothing to sync and nobody keeps a second copy.
Everything in the demo is made up and nothing you do leaves your browser, so click anything. If your business has more than one location, or a corporate office and owners who each do it a little differently, tell me how yours runs.

