Realm Academy Card Generator

WebAutomation

An internal tool for Realm Academy for Family Life that turns relationship-registration form submissions into branded, shareable profile cards, with an admin dashboard and a CSV bulk-import fallback for pre-existing registrants.

  • PHP
  • GD
  • MySQL
  • PDO
Realm Academy Card Generator website screenshot

The challenge

Realm Academy's relationship-registration program needed a shareable, on-brand profile card generated for every applicant the moment they submitted a form — plus a way to backfill cards for registrants who signed up before the automation existed.

The approach

A public webhook endpoint accepts JSON, URL-encoded, or multipart submissions from the registration form, normalizing inconsistent field names into a fixed schema before storing each submission in MySQL via PDO. Image rendering is not done via a headless browser or an HTML/CSS engine — a PHP GD-based generator draws each 1080x1920 card entirely with GD primitives: gradients, glow orbs, rounded rects, and manual text-wrapping across four selectable templates. A session-authenticated admin dashboard lists, searches, paginates, and bulk-deletes generated cards, with a per-card view/download/share page. A separate CSV import tool covers submissions that predate the webhook, dynamically mapping columns from a form-export CSV by header name so an admin can select rows and batch-generate cards for them.

What’s live

  • Webhook endpoint with field-name normalization for varying form-builder payloads
  • Four PHP GD-rendered card templates drawn from scratch, no HTML/CSS rendering engine involved
  • Admin dashboard with search, pagination, and single/bulk delete
  • CSV import tool for batch-generating cards from a legacy form export

Have a similar project in mind?