Skip to content
BUILD FOUNDRY

Professional association platform · 2025

GART — Membership, Learning & Communications

A connected platform for the Global Association of Radiation Therapists to manage membership services, educational programs, and communications. Members have a place to manage their profiles, learn, and access benefits, while the team manages applications and content through a dedicated admin panel.

Services provided

  • Product Planning
  • Web Development
  • Backend & APIs
  • Cloud & DevOps
  • Testing & QA
Visit the live site (opens in a new tab)

Delivery

  1. Discover
  2. Plan
  3. Design
  4. Build
  5. Test
  6. Deploy
  7. Monitor
  8. Maintain

Technology stack

Frontend
React 18 · TypeScript · Vite · React Router · Tailwind CSS · shadcn/ui · TanStack Query
Backend
Node.js · Express 5 · REST APIs · JWT access tokens · Cookie-based refresh rotation · Role-based access control · Multer uploads
Database
MongoDB · Mongoose schemas · Users, memberships, applications, payments · Courses, modules, questions, enrolments, progress
DevOps
Environment configuration · Secrets management · Static asset serving
Cloud
Cloudflare R2 object storage · Brevo transactional email · Managed hosting
Testing
API testing · Workflow and permission testing · Manual QA passes

Need & approach

One platform for members and the GART team.

GART needed to connect membership, education, and communications while keeping application decisions with its team. We built a member portal and an admin workspace on one API, with separate permissions for each role.

  • Members register, manage their profiles, and access benefits based on membership type.
  • Application status drives the next action: review, a decision email, and certificate creation. New applications, enquiries, and feedback also notify the team.

Membership & certificates

From application to approved membership.

Applicants see their fee, currency, membership dates, and UPI payment details before submitting documents and payment proof. The system checks eligibility and blocks duplicate applications. Administrators review a queue filtered by status and membership type, with a written reason required for rejection.

  • Approval creates the membership and automatically generates, numbers, stores, and emails its certificate.
  • Members can access their certificates again; reissues return the stored document.

Learning & communications

Keep learning and community updates connected.

Members take courses available to their membership type. Passing a module’s test unlocks the next, with attempts, best scores, and progress saved. Each module has its own pass mark, and the course is marked complete when all modules are finished.

  • Administrators create courses and modules, add questions individually or in bulk, and track learning progress.
  • The same admin panel manages news, newsletters, job opportunities, and other site content.

Access & reliability

Permissions follow the person and the record.

Registration verifies email ownership with a one-time code. Sessions refresh automatically when a token expires, while a password reset ends existing sessions. Uploaded documents stay in private Cloudflare R2 storage, with their references held in the database.

  • The server checks the member’s or administrator’s permissions before allowing access to records, courses, or files.
  • Authorized file requests receive links that expire, rather than permanent public URLs.
Delivery notes & current limits
  • Interface design followed the API work on this project. We now plan them together.
  • Certificates are available as HTML; PDF export is not yet implemented. Some unused legacy routes remain to be cleaned up.
  • Usage, uptime and commercial impact were not measured for this engagement.

Explore the services behind this project

We take products from planning through to production and stay on to run them. Tell us where yours is today.