Florent Le Page
Tied black jiu-jitsu belt, red bar with three white stripes

Club management app

RollManager

Everything a jiu-jitsu club needs to run, in one app.

In pilot

28 screens
300 API routes
64 tables
435 automated tests

RollManager runs a sports club end to end: memberships, partial and online payments, reminders, scheduling, attendance, member progression and a public website. It is designed with Marvelous BJJ, where it is deployed as a pilot, and built with the rigor of business software.

Stack: Vue 3, Node.js 22, Express, SQLite, Stripe, Playwright. Screenshots use demo data.

Screens

The club at a glance

Dashboard: monthly revenue, payments at risk, renewals, retention, six months of collections and attendance, belt distribution.

RollManager admin dashboard

Payments and reminders

Fixed-price memberships, due dates, partial payments with numbered receipts, Stripe online payments, automatic reminders 30 and 7 days ahead and when overdue.

Finance and memberships screen

Schedule and attendance

Weekly classes by level, sign-ups, cancellations and closures, attendance check-in.

Weekly class calendar

Progression and gamification

Belt path, sessions and seniority, trophies: progression computed on the server, followed by each member in their portal.

Member progression and trophies

In every member's pocket

Member portal installable on a phone (PWA), ready for a native app.

Member portal on a phone

For the club, 16 screens

  • Dashboard, members and a profile for each member.
  • Attendance, calendar, classes and grades.
  • Billing, membership catalog, communication campaigns and reports.
  • Audit log, backups, users and roles, settings, editable public website.

For members, 8 screens

  • Portal installable on a phone (PWA), ready for a native app with Capacitor.
  • Dashboard, belt path and trophies computed on the server.
  • Schedule, attendance, messages, membership and profile.

Under the hood

  • 4 access screens: sign-in, first sign-in, forgotten password and password reset.
  • Layered architecture: configuration, database, testable business services, routes, scheduled jobs.
  • Zod validation, CSP, owner, admin and coach roles, two-factor authentication.
  • httpOnly cookies with token rotation and revocation, scrypt hashing, audit log, GDPR.
  • The server refuses to start in production without strong secrets.
  • 435 automated tests (327 server-side, 108 front-end) and 8 end-to-end journeys with Playwright.