MADNEXUM Certificate Generator

Look up a participant by name and generate their certificate — participation or achievement.

1. Connect your Firebase project

Open this file in a text editor and fill in FIREBASE_CONFIG and COLLECTION_NAME near the top of the script block below (search for "EDIT THIS"). Your Firestore documents should have at least a name field and a points field (number). Optional fields: quizName, date, certId.

2. Find participant & generate

3. Preview & download

"Add to Profile" opens LinkedIn's official Licenses & Certifications form, pre-filled with the certificate name, issuer, and date. "Share on LinkedIn" posts a link to your feed — LinkedIn requires a public URL to generate the preview, so host the PNG/PDF somewhere (e.g. Google Drive, your site, or Firebase Storage) and paste that link above first.

4. Bulk generate for everyone in the database

Fetches every document in your configured Firestore collection and generates a certificate for each participant using their actual name from the database. Certificates with points at or above the achievement threshold automatically get the Achievement wording, everyone else gets Participation.

For large numbers of participants (100+), generate the ZIP and PDF separately (not both at once) — doing both together is what caused the "Out of Memory" crash. PDFs are also auto-split into files of 200 certificates each so a single huge PDF doesn't crash the tab.