DEVLAR
DEVLARDevByte
The Stack

Technology

Every technology choice is intentional. This page explains not just what is used, but why — and the architectural boundaries that keep the system decoupled and resilient.

Why Two Completely Separate Systems?

DevByte Engine (EC2)

Python + Node.js video pipeline running on AWS EC2 with PostgreSQL. Orchestrates all production work. Runs on a cron schedule. Pins 100% CPU during render — fundamentally incompatible with serverless function timeout limits.

DevByte Media House (Vercel)

This Next.js website hosted on Vercel. Reads only from MongoDB Atlas — a presentation-layer copy of pipeline output. The website stays up even when EC2 is offline. MongoDB credentials never touch EC2; EC2 Postgres credentials never touch Vercel.

EC2 → publishes video → writes record to MongoDB Atlas → Vercel reads Atlas (read-only user) → renders Control Center

Runtime

Python 3.11

All collectors, ingestion pipeline, evaluation, editorial engine, uploaders, and S3 bridge. Chosen for ecosystem breadth and async/thread-pool capabilities.

Node.js 18

Remotion and the batch orchestrator (batch_generate_and_upload.js) run on Node. Mixed runtime because Remotion is a Node/React library.

AI & Editorial

Google Gemini 2.5 Flash

Primary LLM. Used for both Pass 1 mission checks (parallel chunks) and Pass 2 relative ranking. Temperature fixed at 0.0 for deterministic output. JSON schema enforced.

Gemini 3.5 Flash (fallback)

Automatic fallback model when the primary returns a malformed response after retries. A third fallback (gemini-3.1-flash-lite) is also configured.

Edge TTS (Azure Neural)

Microsoft's neural voice synthesis. Produces natural-sounding audio with sentence-level timing metadata, which drives exact Remotion scene-cut boundaries.

Video Production

Remotion 4.x

React-based programmatic video renderer. Chosen because it treats video as a React component — version-controllable, composable, and debuggable like any UI code.

React 19

Remotion's rendering engine. Spring physics (useSpring), animated transitions, and dynamic layouts are expressed as CSS-in-JS, not After Effects keyframes.

TypeScript 5

Compile-time safety for the Remotion template layer. Script schema errors are caught before render, not during it.

Tailwind CSS v4

Token-based styling in Remotion templates. Same stack as the website, enabling design consistency.

FFmpeg 6.x

Audio/video utility layer. Used for duration probing and final MP4 metadata tagging.

Cloud & Publishing

AWS EC2

The pipeline runs on a compute instance — not serverless. Remotion pins 100% of CPU cores during render, which violates serverless timeout limits. EC2 is the right host.

AWS S3 (boto3)

Ephemeral bridge storage. Video is uploaded once, a presigned URL is generated (2-hour expiry), broadcast to Meta, then auto-deleted. Zero permanent storage cost.

YouTube Data API v3

OAuth 2.0 + resumable 2 MB chunked uploads. Private staging with immediate publication. Token cached in token.json for headless cron execution.

Meta Graph API v19.0

Instagram Reels container lifecycle (init → poll → publish) and Facebook Page Video endpoint. Both receive the S3 presigned URL concurrently.

Web & Presentation

Next.js 16 (App Router)

This site. SSG for all public Explore pages. Server Components with auth-gated MongoDB reads for the Control Center. Deployed on Vercel.

MongoDB Atlas

Presentation archive — one document per published video. Written by the EC2 pipeline after each publish, read by this site. Deliberately decoupled from PostgreSQL so the website works even when EC2 is offline.

PostgreSQL (EC2)

Pipeline's internal source of truth — candidates, evaluation results, full run history. Never queried directly by this website.

V1 vs V2 — What Changed

AspectV1V2 (Current)
SourcesGitHub Trending onlyHN + Blogs + GitHub Releases + Product Hunt
SelectionRandom trending repoTwo-pass evidence-driven Gemini editorial
FilteringNoneSignal → Quality → Dedup → Staleness gates
Output1 video, sequentialUp to 5 videos, concurrent pre-production
PublishingManual uploadYouTube + Instagram + Facebook automatically
StorageLocal files accumulatedEphemeral S3 bridge — zero permanent storage
ConcurrencySingle-threadedThreadPoolExecutor + 100% CPU Remotion render