How it works

Hours of After Effects work, rendered in minutes.

ProScoreboard Customization replaces manual template edits with an automated, self-serve render pipeline — built internal-first, with a clean path to opening up to customers.

Intent

Built first as an internal tool for our team — the goal is to cut the time and cost of producing branded ProScoreboard videos by replacing manual After Effects work with an automated render pipeline.

The architecture is deliberately shaped so it has a clean path to going public-facing later — same backend, same render pipeline, just opened up to customers directly with account login. Nothing about the core pipeline needs to be rebuilt to make that shift. It's mainly front-end access, authentication, and usage limits that change.

End-to-end flow

Six steps, fully automated — from the branding form to a broadcast-ready video in the customer's hands.

Step 01

Customization input

A web form collects the branding data — school/team name, logo upload, colors, fonts, sport type, team labels. No video processing happens here. The payload is packaged as JSON and sent to our backend API.

Step 02

Job intake

An API Gateway endpoint receives the JSON, writes a new render job to the database (status: queued), stores the uploaded logo in S3, and hands the job to the render pipeline.

Step 03

Render environment

After Effects needs a full licensed desktop, so we host it on GPU-backed Windows EC2. An SQS queue holds pending jobs; an Auto Scaling Group spins instances up on demand and back down to zero when idle — we only pay for AE compute we actually use.

Step 04

Rendering

A small agent on the instance pulls the next job, downloads the branding data and logo from S3, and runs aerender against a pre-loaded AE template — swapping values into pre-named layers like TEAM_NAME, LOGO, and PRIMARY_COLOR.

Step 05

Delivery

The finished video uploads to an S3 output bucket. An S3 event triggers a Lambda that marks the job complete and generates a secure, time-limited pre-signed download URL. The web app sees the status flip and shows the download — no manual step on our end.

Step 06

Cleanup

The instance picks up the next job or shuts itself down if the queue is empty — so we're never paying for idle After Effects license time.

What comes out

Broadcast-ready overlays, alphas, and wipes — branded per school.

Why this shape

Three architectural bets that keep the pipeline fast, cheap, and ready to scale.

Queue + auto-scaling EC2

Solves the core problem that After Effects needs a real licensed machine to render, without paying for a GPU instance 24/7.

Event-driven delivery

Lambda hands the finished video back to the website the instant S3 sees the upload — no polling, no manual intervention.

S3 as the handoff

Inputs in, outputs out. Render instances stay stateless and disposable — any instance can pick up any job, so scaling to concurrent renders is straightforward.

Today · Internal

A production tool for our team

Used internally to fulfill customization requests faster and cheaper than doing them by hand in After Effects. Same render pipeline that will later power the customer-facing product.

  • Self-serve branding form for the team
  • Automated aerender pipeline on demand-scaled EC2
  • Job dashboard with downloadable render packages
Next · Public

A sales tool for customers

Same backend, opened up so customers can see their branding before they buy. Only front-end access and guardrails change.

  • Real customer auth (ProContent/ProPresenter or standalone)
  • Per-account usage limits and quotas
  • A fast, low-cost preview step before a full AE render
  • Rate limiting, file validation, and logo moderation

See it in action.

Brand a scoreboard pack in under a minute and watch the render operations page flip to complete.