Skip to content

Education & SaaS

After-School STEM Club Software — Term-Based Curriculum Tracking + Equipment Inventory + Parent Showcase Beats Generic Mindbody/Acuity for Coding Clubs

All articles
💻 🤖 📦

After-school STEM clubs (Code Camp, Python bootcamp, robotics league, maker-space science clubs) in Australia run 50–200 kids per term (10 weeks, usually T1/T2/T3/T4 school calendar), across 1–3 venues (local school hall, community centre, dedicated STEM space), teaching Scratch (primary years, block coding), Python (junior/senior secondary, loops + functions + games), robotics (LEGO Mindstorms, VEX, Arduino), game dev (Unity, Godot), and AI workshops. Revenue model: term enrolment ($150–300/student per term, 8–10 weeks, 2 hrs/week = $300k/yr for 100-kid club or $900k/yr for 300-kid multi-site operation), with recurring billing by school term. Current system: (1) enrolment = parent emails "2 spots for Python bootcamp T2," admin replies "yes, send $200 per kid," parent transfers $400 via bank, admin manually adds 2 names to Excel attendance sheet, no confirmation email, (2) curriculum progress = instructor writes on paper "Week 1: Scratch basics (15 kids finished, 2 still debugging loops, 1 absent)," admin asks instructor weekly "how are the kids doing," instructor sends email updates, no structured tracking, curriculum progress is instructor-only knowledge (if instructor leaves mid-term, curriculum progress is lost), (3) equipment inventory = 50x LEGO kits, 30x Micro:bits, 20x Arduino boards live in storage room. No tracking. Admin asks "are all the Micro:bits here?" Instructor counts, says "yes, I think so," 2 weeks later instructor needs 5 Micro:bits for circuit project, only 4 available, one is missing + one is broken, admin spends 2 hours searching, calls parents "did anyone take a Micro:bit home," no one did, kit is lost, $80 replacement cost + 1 week project delay, (4) showcase/celebration = term-end, instructor posts 3 student projects on Instagram story ("Maya built a chat bot!" with screenshot), parents who aren't following see nothing, no structured portfolio, no certificates, student work disappears after 1 week when story auto-deletes, (5) WWCC compliance = admin has "rough list" of instructor names in Notes app, hasn't checked WWCC expiry dates, one instructor's WWCC expires mid-term (admin doesn't know), instructor continues working illegally for 2 weeks, risk is huge, (6) billing = parent pays $200 upfront, no receipt, payment goes to admin's personal account, admin doesn't track, end of term admin checks bank balance, tries to remember "did Emma's parent pay," sends manual invoice to 5 families "you still owe $200," 2 parents reply "I paid you on Aug 15 in cash," admin has no record, dispute, (7) term re-enrolment = next term starts, admin manually emails 100 families "enrol again in T2 Python," 30 reply with enrolment, 20 open email but don't respond (admin has to follow up), 50 never reply (admin has to chase), process takes 3 weeks and admin makes 200+ emails, all manual. Total bleed: $30k/yr enrolment + follow-up labour, $15k equipment tracking + replacement loss, $12k showcase-video labour (if manual), $8k WWCC admin labour, $5k billing/reconciliation labour, $10k term re-enrolment chasing labour = $80k/yr + operational risk (WWCC expired staff working illegally, equipment loss, billing gaps, no structured progress record).

An after-school STEM club operating 3 venues (Brisbane, Gold Coast, Sunshine Coast) running 200 kids per term across 10-week school terms (T1 Jan–Mar, T2 Apr–Jun, T3 Jul–Sep, T4 Oct–Dec), teaching Scratch (Year 3–4), Python (Year 5–8), Robotics (LEGO EV3 + VEX, Year 6–10), Game Dev (Godot, Year 8+), and AI fundamentals (ChatGPT, machine learning intro, Year 9+). Tiers: Beginner (Year 3–4, Scratch + visual logic, no prior experience), Intermediate (Year 5–8, Python basics + projects, some coding experience), Advanced (Year 8–10, game dev + robotics + AI, competitive skill-building). Revenue model: term-based enrolment ($150 Beginner, $200 Intermediate, $250 Advanced, per term, 10 weeks, 2 hrs/week = $30k–50k per term = $120k–200k/yr across 3 venues). Current system chaos: enrolment is email-based (parent emails "2 kids Python T2," admin replies "yep, $200 each, bank transfer please," no confirmation, no invoice, billing is manual (admin checks bank statement end-of-term, tries to match transfers to kids, can't remember if $200 is for 1 kid or 2). Curriculum tracking is instructor-only (instructor writes on notebook "Week 1: loops, Week 2: functions, Week 3: list indexing," no shared record). If instructor leaves mid-term, curriculum knowledge is lost. Equipment inventory is "we have some LEGO kits" (50 kits total, no checkout log, no damage tracking, 3 kits are currently broken, admin doesn't know where 2 are). Showcase is Instagram-only (kid builds cool project, instructor posts screenshot to @BrisSTEMClub story, 48 hrs later story expires, no permanent record, no parent access, no certificate). WWCC compliance is "we have staff" (admin has 5 instructor names in a Trello card, hasn't checked WWCC validity dates, 1 instructor's WWCC expires mid-term, admin doesn't notice, instructor continues teaching illegally for 2 weeks, risk: childcare licensing authority could shut down venue if audited). Term re-enrolment is chaos (admin sends email blast "T2 enrolment now open," waits 1 week, only 20% reply, admin chases 80% via email/SMS/WhatsApp, process takes 3 weeks, some families forget to respond, enrolment is incomplete). Total bleed: ~$80k/yr manual ops + compliance risk + student/parent frustration.

Why Mindbody, Acuity, Square Scheduling Fall Short for STEM Clubs

Mindbody (gym + fitness class booking, $99–299/month + per-booking fees) is built for recurring weekly classes (yoga Mon 6pm, spin Tue 7pm), not term-based curriculum progression. No curriculum tracking (you book a class slot, but system doesn't know "this is Week 1 Python, kids learn loops," can't track which kids finished loops or need extra help). No equipment inventory (no checkout log, no damage tracking, no kit assignment to students). No showcase portal (no student project gallery, no parent portfolio access). No WWCC database (no background-check tracking, no expiry alerts). Acuity Scheduling (appointment booking, $15–50/month) is 1-on-1 tutor scheduling, not group class + curriculum tracking. Square Scheduling (point-of-sale + basic scheduling, free–$300/month) is retail + appointment booking, not education. None have curriculum progression, equipment tracking, showcase portals, or WWCC compliance. They treat STEM clubs as "book a time slot," not "enrol in a 10-week curriculum with 8 projects, equipment checkout, and parent showcase." STEM clubs need: (1) term-based enrolment (not weekly recurring, but 10-week cohort), (2) curriculum progress tracking (which weeks completed, which projects submitted, which kids struggling), (3) equipment checkout log (kit issued to student/instructor, returned, condition logged), (4) showcase portal (password-protected, student projects + demo videos + certificates, parent access only), (5) WWCC database (staff names + WWCC number + state + expiry date, auto-alerts 90 days before expiry), (6) term re-enrolment (system auto-emails "T3 enrolment opens next week," parent clicks link, re-enrolls in 2 clicks, payment is one-click). Generic SaaS handles none of these. Result: STEM clubs stay manual, lose $80k/yr to ops labour, risk WWCC compliance breaches, and have no student showcase = lower parent satisfaction and lower T2 re-enrolment. Custom platform handles all 6 steps automatically.

What Custom Replaces: Six Features STEM Clubs Need

1. Term-Based Enrolment with Auto-Invoice & Payment Confirmation

May 20, 2026. T2 enrolment opens (T2 = Apr–Jun, 10 weeks). Admin logs into custom system, sets up: "T2 Python Intermediate, Brisbane venue, Tue + Thu 4–6pm, $200/student, starts Apr 7, ends Jun 16, max 20 students." System generates enrolment page: "Python Intermediate T2 [ENROL NOW button]." System emails 100 past families: "T2 enrolment open. Python Intermediate $200 (10 weeks). [ENROL] [VIEW CURRICULUM] [PARENT FAQ]." Parent Maya's mum clicks [ENROL], selects "Python Intermediate T2" + sibling "Emma Beginner Scratch," system shows: "Maya Python Intermediate T2: $200. Emma Scratch Beginner T2: $150. Total: $350. [CHECKOUT]." Parent enters credit card (Stripe), pays $350 in 30 seconds. System auto-generates invoice: "T2 Enrolment Confirmation. Maya + Emma. $350 paid. Classes start Apr 7. [ADD TO CALENDAR] [PAYMENT RECEIPT]." Email sent to parent + admin. Admin dashboard shows: "T2 Enrolment: 3 students enrolled, $600 collected, 17 spots remaining." Zero admin touch. Parent has confirmation email, calendar invite, invoice, receipt, all automated. Manual system (Mindbody / Acuity): parent emails "2 kids please." Admin replies "yes, $350, send bank transfer." Parent transfers via bank (memo: "kids STEM"). Admin receives transfer 1–2 days later, has to match to families (if memo is "kids STEM," which kids?). Admin emails parent "got your $350, which kids are you enrolling?" Parent replies "Maya and Emma." Admin manually logs into Mindbody, creates 2 class enrollments (Maya + Emma), generates 2 separate invoices (Mindbody can't bundle). Confusion. If parent transfers $350 with memo "kids," admin forgets which kids, asks parent, parent doesn't reply for 3 days, admin chases, process drags. Labour: 15 min per enrolment × 200 families = 50 hrs/term = 200 hrs/yr = $6k labour. Custom system: enrolment is instant (1 click + 1 payment), zero admin touch. Labour saved: $6k/yr. Plus: instant revenue confirmation (no 2-day bank lag), instant calendar invites (parents have start date locked in, don't miss first lesson), zero mis-matched payments (Stripe payment auto-links to family account).

2. Curriculum Progress Tracking & Student Project Milestones

Apr 7, T2 Week 1. Instructor Sarah teaches "Python loops and lists" to 20 Intermediate students (Maya, Kai, 18 others). After class, Sarah logs into system: "Python Intermediate T2, Week 1: Loops & Lists. [MARK ATTENDANCE] [RECORD PROGRESS]." System shows roster: Maya (present), Kai (present), 18 others (all marked present). Sarah clicks "Record Progress": adds lesson notes "Great engagement. Covered for-loops, list indexing. Starter project: build a simple quiz app. Submission due Apr 18." System auto-sends email to all 20 parents: "Week 1 Complete: Python Intermediate. Lesson: Loops & Lists. Project Due: Apr 18 (Quiz App). Curriculum progress: 1/10 weeks done. [VIEW CURRICULUM] [PARENT FAQ]." Parent sees: Week 1 ✓ done, Week 2–10 upcoming. Project submission portal opens: students can upload .py file + screenshot of quiz app running. Apr 18: Maya submits quiz app (300 lines, working). Kai submits (150 lines, has bug in list indexing). 16 others submit. 3 don't submit. Sarah reviews submissions: Maya (✓ excellent), Kai (⚠ submit but has bug, offer feedback "check line 23, list index out of range"), 16 others (✓ good–excellent), 3 no-submit (flag for follow-up). System auto-updates dashboard: Maya (1/10 projects complete, all on-time), Kai (1/10, submitted but flagged for bug feedback), 3 students (0/10, Week 1 milestone missed). Instructor alert: "3 students haven't submitted Week 1 project. Send reminder? [YES]." Sarah clicks YES, system auto-emails parents: "Kai and 2 others haven't submitted Week 1 quiz app. Due date was Apr 18. Extension deadline: Apr 22. [SUBMIT NOW] [NEED HELP? book office hours]." Kai's mum sees alert, calls Sarah, Sarah explains the bug, Kai fixes and resubmits Apr 20, all good. By Week 5 midpoint (May 5), system shows: Maya (5/10 projects, all on-time, zero bugs), Kai (5/10 projects, 1 had bug but resubmitted, strong improvement), class average (4.2/10 on-time). System flags: "Maya is accelerating—ready for Advanced track next term?" Sarah can recommend advanced path for T3. By Week 10 end-of-term, curriculum progress is complete: Maya (10/10 projects complete, all excellent), Kai (10/10 projects, 1 required rework but completed), class (avg 9.5/10, 95% completion rate). System auto-generates: "T2 Curriculum Complete. Maya: 10/10 milestones, 100% on-time, zero bugs, flagged for Advanced T3. Kai: 10/10 milestones, 90% on-time, 1 bug fixed, strong progress, ready for next tier." Report becomes part of showcase portal + parent report card. Manual system (Mindbody): instructor writes notes on paper after class. Notes are only instructor's personal record (if Sarah leaves, notes are lost). Parent has no visibility to "what did my kid learn this week?" No progress tracking. If Kai is struggling with loops, Sarah might notice but has no system to flag it, so Kai carries bug through 5 more projects before Sarah catches it. No structured feedback. By term-end, no formal record of curriculum completion. Parent doesn't know "Maya did 10 projects, Kai did 10 but 1 had a bug." Parent satisfaction is low (no visibility = parent worry). Custom system: every lesson is recorded, every project is tracked, every parent sees progress in real-time, every student has clear accountability (missed milestones trigger reminders), every instructor has structured feedback (Sarah sees "Kai's bug in Week 1, let's check Week 2-5 for patterns"). Labour saved: $12k/yr (manual curriculum tracking + progress reporting). Value-add: parent confidence (they see kid is learning), student accountability (progress is visible), term-end reporting (auto-generated, rich data). Higher T2→T3 re-enrolment because parents see progress clearly.

3. Equipment Checkout & Inventory Management with Damage Tracking

Apr 7, T2 Week 1, robotics class. Instructor Tom needs 8 LEGO EV3 kits (1 per student pair). Tom logs into system: "Robotics T2, Brisbane, Week 1. Equipment Needed: [checkbox] LEGO EV3 × 8, [checkbox] Micro:bit × 0, [checkbox] Arduino × 0." System checks inventory: "LEGO EV3: 10 available (6 in storage, 4 currently checked out to Game Dev class). Checking out 8 for Robotics. [CONFIRM]." Tom clicks confirm. System marks 8 EV3 kits as "checked out to Tom, Robotics T2, Apr 7, due back Apr 9 end-of-class." 50 mins before end-of-class (Apr 9, 5:10pm), system sends Tom reminder: "Please return 8 LEGO EV3 kits by 5:40pm. Condition check: any damage?" Tom collects kits from 8 students. One kit (Kit #47) has a cracked wheel. Tom logs into system: "Returning 8 EV3 kits. Kit #47: damage (cracked wheel, functional but needs repair). [SUBMIT]." System marks: Kit #47 (damaged, move to repair queue). Other 7 kits (normal wear, no damage). System auto-emails admin: "Kit #47 damaged (cracked wheel). Estimated repair: $15, 3 days. Availability: LEGO EV3 will be at 9/10 next week." Admin purchases replacement wheel ($15), assigns to maintenance queue. By Apr 12, Kit #47 is repaired, back in inventory. Apr 14, Week 2: Tom needs 8 EV3 again. System checks: "10 available (all repaired, none checked out)." Checkout confirmed. By term-end, system shows: 50 total checkouts across 10 weeks, 2 items damaged (1 EV3 wheel, 1 Micro:bit), both repaired in <1 week, zero lost items. Annual inventory cost: $2k repairs + $0 replacement loss (vs manual system's $5k–10k annual loss). Manual system: Tom tells admin "I need some LEGO kits." Admin walks to storage room, counts kits, says "we have 10," grabs 8. Tom uses 8 kits. Tom returns 8 kits to storage room. No checkout log. 1 week later, instructor Jake needs LEGO kits, counts storage, finds only 9 (one is missing). Admin spends 2 hours searching, asks "did anyone take kit home?" Calls parents. No luck. Kit is lost ($200 replacement cost). Annual loss: ~$1500 (5–8 items lost per year, avg $200–300 each). Plus: no damage tracking (broken kit sits in storage, admin doesn't know it's broken, tries to use it in class, doesn't work, troubleshoots for 30 mins thinking it's a software bug, finally realizes it's broken). Repair delay = class downtime. Custom system: zero lost items (checkout log prevents loss), fast repair (damage is reported immediately, not discovered weeks later), automated reminders (Tom doesn't forget to return kits), real-time inventory (admin knows exactly which kits are available, checked out, or in repair). Labour saved: $5k/yr (missing kit searches + damage troubleshooting) + $5k–10k equipment loss prevented = $10–15k/yr value.

4. Parent Showcase Portal with Student Code & Demo Videos

May 30, Week 5, midterm showcase. Instructor Sarah prepares: each of 20 Intermediate Python students has submitted a project (quiz app, calculator, text-based adventure game). Sarah logs into system: "T2 Showcase: Python Intermediate. [PUBLISH PROJECTS]." System shows 20 student projects (with file names, submission dates). Sarah clicks "Publish 20 projects to parent portal." System generates random portfolio URL: `velocity9-stock.aidxn.vercel.app/showcase/py-int-t2-5a7x9` (token-based, private). Sarah sends link to 20 parents via email: "T2 Midterm Showcase. View your child's project: [LINK]. Projects will be live for 2 weeks (until Jun 13), then archived. Parent login: email address." Parent clicks link, enters email (Maya's mum), authenticates (no password, click email link). Parent sees portfolio: "Python Intermediate T2 Showcase. [PROJECT 1: Quiz App by Maya]. Code Editor (live, read-only). Output: [demo running quiz app with 5 sample questions]. Feedback: Sarah: 'Maya built a 300-line quiz app with list storage and user validation. Excellent logic and user experience. Recommended for Advanced next term.'" Maya's mum reads, feels proud. Clicks through 5–10 other projects (with parent permission, some projects are private, some shared). At bottom: "Certificate of Completion: Maya completed T2 Python Intermediate. 10 weeks, 10 projects, 95% on-time submission rate." Parent can download PDF + print. Maya receives digital badge (@aidxn.com "Python Intermediate T2 Champion"). Portfolio is live for 2 weeks, then auto-archived (kept in system for Maya's record, not public). Manual system (Instagram): Sarah posts 1 screenshot of Maya's quiz app to @BrisSTEMClub Instagram story. 48 hrs later, story expires. Maya's mum doesn't follow Instagram, misses it. No showcase for parent. No certificate. No recognition. Custom system: every project is curated (Sarah approves before publishing, no spam), every parent can see (password-protected, only family access, not public), every student gets recognition (certificate + digital badge), every project is persistent (archived, kid can look back years later "I built this in T2 2026"). Labour saved: $8k/yr (manual showcase prep + video uploading + certificate generation = instructor time). Value-add: parent satisfaction (pride in child's work), student motivation (public recognition within family), reusable portfolio (kid can share with high school applications, college prep = long-term education value). Higher term-to-term retention (parent sees kid is learning, proud, re-enrols next term).

5. WWCC Compliance Database & Expiry Alerts

Feb 1, T1 starts. Admin has 6 instructors. System prompts: "Add instructor staff records. [+ADD INSTRUCTOR]." Admin adds: Sarah (Beginner Scratch, NSW, WWCC #123456, expiry Aug 2026), Tom (Robotics, QLD, WWCC #789012, expiry Nov 2026), Jake (Advanced Python, NSW, WWCC #345678, expiry May 2026). System stores each record: state (NSW/QLD/VIC/WA/etc), WWCC number, expiry date. System auto-alerts: "Jake's WWCC expires May 2026 (in 3 months). [SEND REMINDER TO JAKE]." Admin clicks, system auto-emails Jake: "Your WWCC expires May 15. Renew now to avoid work gap. [LINK to NSW WWCC renewal]." Jake renews on May 1, admin updates: "Jake WWCC renewed, expiry May 2029." System confirms: "Jake is clear (WWCC valid until May 2029)." May 15 arrives: Sarah's WWCC expires. System auto-flags: "Sarah's WWCC expired 3 days ago. She is not cleared to work with children. [SUSPEND SARAH FROM ALL CLASSES]." Admin dashboard shows red alert: "⚠️ Sarah cannot work. Schedule 6 T2 classes without instructor. [VIEW SCHEDULE]." Admin reassigns Sarah's classes to Tom (backfill teaching). Email sent to Sarah's students: "Instructor change: Sarah is unavailable, Tom will teach your Wed 4pm class." Zero legal risk (system prevents expired-WWCC staff from being scheduled). Manual system: admin has 6 names in a Trello card. Doesn't check expiry dates. Sarah's WWCC expires May 15. Admin doesn't notice. Sarah teaches Wed 4pm class May 22 (7 days expired). Parent complains to childcare regulator. Regulator audits venue, discovers Sarah was teaching illegally for 1 week. Venue fined $5k, reputation damaged, 1 school stops recommending the STEM club. By-state regulation: NSW WWCC valid 5 years, QLD valid 3 years, WA valid 3 years. System auto-tracks per state (Sarah in NSW = 5-year expiry, Tom in QLD = 3-year expiry). System doesn't make mistakes. Labour saved: $3k/yr (WWCC admin + expiry tracking). Risk prevented: $5k+ fines + reputation damage + legal liability. Mandatory in Australia (venue is liable if staff with expired WWCC work with kids).

6. Term Re-Enrolment Automation & Family Payment Continuity

Jun 10, 10 days before T2 ends. System auto-sends email to all 100 T2 families: "T3 Enrolment opens Jun 15. New courses: Game Dev Godot (Year 8+), AI Fundamentals (Year 9+). [OPEN ENROLMENT PAGE] [VIEW T3 CURRICULUM]." Jun 15, T3 enrolment opens. Maya's mum receives email reminder. Clicks [OPEN ENROLMENT PAGE]. System shows: "Maya is enrolled in Python Intermediate (completed T2 with excellence). [RE-ENROL SAME COURSE FOR T3] or [VIEW OTHER COURSES]." Mum clicks [RE-ENROL SAME COURSE FOR T3]. System shows: "Maya Python Intermediate T3 (Jul–Sep, same Tue + Thu 4–6pm, $200). Emma Scratch Beginner T3 (same Wed 5–6pm, $150). Siblings: both courses $350 (same as T2). [CONFIRM & PAY]." Mum clicks confirm, payment is Stripe (1-click, card is saved from T2), pays $350 instantly. System confirms: "T3 Enrolment locked. Classes start Jul 1. [ADD TO CALENDAR]." Admin dashboard shows: "T3 Enrolment: 65 families re-enrolled (65%), 35 pending response (35%). Pending reminders sent: 12 more families enrolled. Final enrolment closes Jun 28. [VIEW PENDING]." 20 families don't respond by Jun 28. Admin sends 1 final email: "Last chance to enrol T3. Classes start Jul 1. [ENROL NOW]." 5 more families enrol. 15 families go dark (probably not re-enrolling, or will re-enrol in T4). Admin has zero manual work (all done by system). Manual system (Mindbody): admin sends email blast Jun 10 "T3 enrolment open!" Waits. Only 20 families reply with enrolment. Admin manually enters 20 enrollments into Mindbody (creates 20 class bookings). Sends follow-up email to 80 families. Gets 15 more responses. Sends 3rd email to 65 non-responders. Eventually collects ~60–70 families after 3 weeks of chasing. Process takes 3 weeks, hundreds of emails. Admin labour: 50 hrs/month × 3 weeks = 75 hrs × $30 = $2.25k per term × 4 terms = $9k/yr. Custom system: zero manual follow-up. Families re-enrol in 1 click. System auto-reminds non-responders. Enrolment completes in 2 weeks instead of 3, families pay earlier (cash-flow benefit). Labour saved: $9k/yr. Plus: faster cash collection (20-family backlog at T2→T3 is ~$7k, collected 2 weeks earlier = $140 cash-flow benefit).

Australian After-School STEM Regulatory & Operational Context

After-school STEM clubs in Australia operate under: working-with-children background checks (WWCC, mandatory if staff work with children <18 years, issued per state: NSW, QLD, VIC, WA, SA, TAS, ACT, NT each have own WWCC authority + validity period). Duty of care (venue responsible for student safety, supervision ratios, incident reporting). Consumer law (Australian Consumer Law: tuition contracts must have clear terms, refund policy, no false claims like "our STEM club guarantees kid gets into selective school"). Curriculum alignment (optional, but common: club programs link to Australian Curriculum codes for Science + Digital Tech, e.g., "K–6 Digital Technologies: Recognise and describe the properties of digital systems, understand sequencing, loops, conditional logic"). School term calendar (T1 Jan–Mar, T2 Apr–Jun, T3 Jul–Sep, T4 Oct–Dec, most clubs align to school terms). Venue safety (if in rented space like school hall, club must comply with venue's insurance + safety rules). Equipment (LEGO, Micro:bit, Arduino are educational toolkits, not regulated, but must be stored safely + maintained). Custom system should track: WWCC per state (NSW vs QLD vs VIC, each has own expiry + renewal process), refund policy (e.g., "cancel by day 3 of term = full refund, day 4+ = no refund, mid-term withdrawal = pro-rata refund"), curriculum codes (system can tag lessons "Australian Curriculum K–6 Digital Tech AC9TDI01"), and incident log (if student injury or complaint arises, logged for safety audit). System doesn't replace policies but enables compliance + audit trail. Terminology: "STEM club" is broad (Science, Technology, Engineering, Math), but custom system treats kids by tier (Beginner Scratch = Year 3–4, Python = Year 5–8, Game Dev = Year 8+, Robotics = Year 6–10), with projects + progress tracking. System can report "100 kids in STEM clubs T2 2026, curriculum completion 95%, zero safety incidents, all staff WWCC current."

Six FAQs

Can we run STEM across 5 venues with 1 admin team?

Yes. System is multi-venue. Setup: Admin creates 5 venues (Brisbane, Gold Coast, Sunshine Coast, Ipswich, Toowoomba). Each venue has own enrolment page (kids see venue options: "Python Intermediate—Brisbane Tue 4pm" vs "Python Intermediate—Gold Coast Wed 5pm"). Instructors are assigned per venue. Sarah teaches Python at Brisbane + Gold Coast (schedule shows Sarah's hours across 2 venues, system prevents double-booking across time zones). Equipment is tracked per venue (Brisbane has 10 EV3 kits in storage, Gold Coast has 6). Reporting is global (admin sees "50 kids T2 Brisbane, 40 kids Gold Coast, 35 Sunshine Coast, 25 Ipswich, 20 Toowoomba = 170 total, $34k revenue across 5 venues"). No per-venue licensing fees. Manual system (Mindbody): charges per location + per booking. 5 venues = 5× setup + 5× monthly fees. $100/month per venue = $500/month = $6k/yr venue overhead, plus $2–5/class booking = ~$5k/yr more. Total: $11k/yr in fees alone. Custom system = flat $2k/yr hosting (scales 1–50 venues, no per-venue creep).

What if we offer makeup classes or let kids drop in occasionally?

Term-based model expects committed 10-week cohorts (75% attendance = passes, 50%+ = promoted, <50% = retake). But flexibility is built in: makeup class = if kid misses Week 3 (sick), kid can attend Week 3 lesson at different venue (if same curriculum, same instructor available). System tracks attendance per kid (shows "Week 3 made up on Wed instead of Tue"). Drop-in (occasional): kid is enrolled in Term cohort but can't make every class (e.g., "Maya enrolled Python T2 Tue + Thu, but can only make Tue most weeks"). System shows: Tue confirmed, Thu flexible. Parents pay base price (Tue guaranteed) + "drop-in credits" (Thu pay-as-you-go $30/class). By term-end, system calculates: "Maya attended 15/20 classes (75% = pass). Tue: 10/10, Thu: 5/10. Standard completion." System can handle both committed + flexible enrollment models.

Can we offer refunds if a kid wants to drop out mid-term?

Yes. Refund policy: "If drop-out by day 3 of term = 100% refund. Days 4–21 (first 3 weeks) = 75% refund. Days 22–42 (weeks 4–6) = 50% refund. Days 43+ (weeks 7–10) = no refund. Medical reason or venue closure = full refund anytime." System auto-calculates pro-rata: if Maya paid $200 for 10 weeks (= $20/week), attends 3 weeks, then drops (Week 4 day 1), system refunds: $200 - (3 weeks × $20) - (50% of remaining $140 = $70) = $200 - $60 - $70 = $70 refund. System processes Stripe refund instantly, sends parent receipt. Typical drop-out is <5% (STEM clubs have high retention because kids see progress + projects + fun). Refund processing = automated, zero admin labour.

How do we handle kids who are advanced vs struggling?

Tiers (Beginner / Intermediate / Advanced) are designed to self-select at enrolment. But monitoring happens continuously: if Beginner kid's project scores are all 95%+ and kid is asking advanced questions, instructor can recommend: "Next term move to Intermediate." If Intermediate kid is struggling (avg 60% on projects, asks for extra help each week), instructor can recommend: "Consider re-taking Intermediate next term for stronger foundation before Advanced." System tracks kid's project history, so when Intermediate Maya scores 95%+ every week, system flags: "Maya ready for Advanced next term?" Instructor confirms, parent is notified, kid gets boost. Vs kid who struggles, system proactively supports (extra office hours offered, re-take option, no shame—progression is based on demonstrated skill, not age/grade).

What if a kit breaks or goes missing mid-class?

Breakdown scenario: Tom's Robotics class, Week 3. Kid Liam drops LEGO EV3 kit, wheel cracks. Tom immediately logs into system: "Kit #47 damaged mid-class. Damage: cracked wheel. Student: Liam. [MARK DAMAGED]." System flags Kit #47 out-of-service. Lesson continues with 7 kits for 8 students (one pair pairs up, finishes slightly behind). Tom documents: "Wheel was impact-damaged, not defect. Normal wear. Repair cost $15, ~1 week lead time." Admin approves repair, purchases wheel, Kit #47 is back in service by next week. Cost: $15, zero class cancellation. If Liam's parent is responsible (dropped kit due to carelessness), venue can charge (policy: "equipment damage cost passed to student if caused by misuse"). System can auto-send parent: "Liam's kit was damaged in class (wheel broke, not defect, user damage). Repair cost: $15. Charge to account? [YES]." Missing kit: if kit disappears mid-term (not returned after class), Tom reports: "Kit #50 missing after Week 6 class." System alerts: "LEGO EV3 Kit #50 is 1 week missing. Contact student/parent: 'Did someone take kit home to practice? Please return by Friday.'" Parent confirms: "oops, Emma took it home, forgot to mention. Returning Friday." Friday: kit returned, zero loss. If genuinely lost (not returned after follow-up), admin files report: "Kit #50 lost, replacement cost $200, claim insurance or charge parent per damage policy." By tracking every checkout + check-in, 99%+ of kits are recovered before loss.

How do we communicate progress to parents who aren't online much?

Default is email + portal. But system can support SMS + WhatsApp for low-tech families: admin can opt-in to "send progress updates via SMS to families without email access." System auto-sends: "Maya's T2 Week 3 project (Quiz App) scored 92%. [VIEW FULL FEEDBACK: reply W]." Parent replies "W" (or any key), system sends full text breakdown of feedback. Phone-based communication works for alerts (missed milestone, kit damaged, mid-term check-in) but not for rich data (code display, detailed feedback). For families without online access, instructor can print progress report (auto-generated PDF) + give to kid. But rare (<5% of families are fully offline in 2026). System assumes most families can access email + 1 password-protected portal login. For accessibility, system supports text-only (no code syntax highlighting, just plain text) for very low-bandwidth. Basic SMS support is cheap addon ($0.05/SMS via Twilio) if venues want to serve non-digital families.

The Bottom Line

After-school STEM clubs (50–200 kids per term, 3+ venues) need term-based enrolment + invoice, curriculum progress tracking (which projects done, which struggling), equipment checkout log (kit issued, returned, damage tracked), parent showcase (student projects + certs), WWCC database (staff background checks, expiry alerts per state), and term re-enrolment automation. Mindbody (fitness class booking), Acuity (appointment scheduling), and Square Scheduling (point-of-sale) all lack curriculum tracking, equipment management, showcase portals, and WWCC compliance. Manual systems bleed ~$80k/yr to ops labour (enrolment, progress tracking, equipment loss, showcase prep, WWCC admin, billing, re-enrolment chasing) + compliance risk (WWCC expiry goes unnoticed, staff work illegally, venue faces fines). Custom platform automates all 6: term enrolment auto-generates invoice + payment link (parent pays in 1 click), curriculum progress is recorded per lesson (projects tracked, milestones flagged), equipment checkout is logged (no lost kits, damage caught immediately, repair time slashed), showcase portal is auto-published (student projects curated, parent access 2-week window, certificate auto-generated), WWCC database alerts 90 days before expiry per state (zero expired-staff risk), re-enrolment is 1-click + auto-reminder (65%+ re-enrol without chasing). Build cost: $80–120k (enrolment + curriculum tracking + equipment checkout + showcase + WWCC database + term re-enrolment). Year one: $100k investment. Year two: $2k/yr hosting. Break-even: month 18. Year 2+: $30k enrolment labour + $15k equipment tracking + $12k showcase prep + $8k WWCC admin + $5k billing + $10k re-enrolment = $80k/yr labour saved + zero equipment loss (~$5–10k/yr) + higher retention from parent confidence = $85–95k/yr value. Scale from 1 venue (50 kids, $7.5k/yr) to 5 venues (250 kids, $37.5k/yr revenue) without per-venue licensing creep. Own your curriculum. Own your equipment. Own your showcase. Own your compliance. Build custom. Ship faster. Scale to 5+ venues without manual ops bleed.

Ready to build a custom STEM-club platform for your after-school network? Check Aidxn's custom software packages, or book a call to discuss your current student volume (50–200/term?), venue count (1–5?), course tiers (Beginner Scratch / Intermediate Python / Advanced Game Dev / Robotics?), equipment (LEGO kits, Micro:bit, Arduino?), instructor team size, and scaling goals (grow to 10+ venues and 500+ kids per term by 2028).

Let us make some quick suggestions?
Please provide your full name.
Please provide your phone number.
Please provide a valid phone number.
Please provide your email address.
Please provide a valid email address.
Please provide your brand name or website.
Please provide your brand name or website.