back to work
Case Study · Internal Platform

Nexara

The internal platform that runs Banyan Labs' full intern lifecycle — applications, role-based access, video curriculum, weekly reviews, document signing, time tracking, and certificate generation.

Role
Co-lead / primary builder
Commits
~170 of 308 total
Status
Live · in production
Last shipped
April 2026
Nexara

An intern pipeline scattered across spreadsheets.

Banyan Labs trains justice-impacted developers through an OJT pipeline with many moving parts — application intake, skills tests, role assignment, video curriculum modules, weekly reviews, document signing, time logging, mentor relationships, capstones, certification.

Before Nexara those workflows lived across spreadsheets, Drive folders, Google Forms, and email threads. Nothing tied them together, nothing audited the role-based access, and nothing handed an intern a certificate at the end with their name correctly rendered on PDF.

One Firebase platform, hardened security rules first.

Nexara consolidates the full lifecycle into a single Next.js 16 + Firebase application. Five distinct user roles — intern, mentor, supervisor, admin, superadmin — backed by 14KB of progressively hardened Firestore security rules. The rules are the real auth boundary; the React layer is UX.

Email delivery is split safely: production uses real SendGrid, every other environment must use stub-success or stub-failure, and the SDK refuses real sends outside production. That single guard rule prevents accidental email blasts during dev.

Top contributor across two accounts.

  • Magic-link invitation system on top of Firebase Auth and SendGrid — onboarding-invite emails sent to applicant emails before a Banyan email exists.
  • Applicant pipeline (admin) with drag-and-drop status changes, referral tracking, and tokenized skills-test invite links.
  • Multi-module video curriculum with YouTube embeds, per-video completion tracking in Firestore, and module-unlock gating.
  • Time logging with financial dashboard, monthly-billing model (cap, contract start, per-month tracking, CSV export) alongside the existing fixed-fee model.
  • Certificate generation pipeline — pdf-lib + jsPDF + custom fonts + bulk ZIP export, plus a template-driven document-signing system with field-mapping configuration.
  • ClickUp REST API integration — in-app bug-report flow that creates triaged tasks directly on the engineering board.
  • Authored the CLAUDE.md, the README, the email delivery policy, and the recent storage-rules hardening for signed documents.

What it's built on.

Frontend
Next.js 16 · React 19 · Tailwind 4 · Strict TS
Backend
Next.js Route Handlers · Firebase Admin SDK
Database
Firestore · 14KB hardened rules · indexes in repo
Hosting
Firebase App Hosting · Cloud Secret Manager
Integrations
Google Drive · YouTube Data · SendGrid · ClickUp
PDFs
pdf-lib · jsPDF · @pdf-lib/fontkit · jszip

Running Banyan's full intern lifecycle in production.

Nexara is the closest thing to a my project in the Banyan portfolio. Across two accounts I'm the top committer — substantially ahead of the next contributor — and I own the architecture, the security model, and the deployment.

Other contributors (Rachael Higgins, Sam Pomeroy, Randall Murphy, Shandea Hardin) are real and shipping. The framing here is honest: tech-leading the project, not solo authorship.