DeployNinja
DeployNinja is a deployment platform with GitHub-triggered builds, live logs, AWS-backed delivery, and repeatable release flows.
Overview
DeployNinja replaces manual deployment scripts with a GitHub-native CI/CD platform. Webhooks trigger automated builds, stream logs in real-time, and deploy to ECS with zero-downtime rolling updates.
DeployNinja replaces manual deployment scripts with a GitHub-native CI/CD platform. Webhooks trigger automated builds, stream logs in real-time, and deploy to ECS with zero-downtime rolling updates.
Architecture: control plane (Next.js) manages projects and triggers, build server (Node.js) runs Docker builds and pushes to ECR, reverse proxy routes traffic to ECS containers. State in PostgreSQL, logs in ClickHouse, events via Kafka.
How It Was Built
The main technical choices behind the product, from system design to the parts that make it work day to day.
- Separated concerns across three services: control plane for project configuration and webhook management, build server for Docker builds and ECR pushes, reverse proxy for routing to ECS containers.
- Integrated GitHub webhooks with signature verification, branch filtering, and automatic build triggers on push to configured branches.
- Separated concerns across three services: control plane for project configuration and webhook management, build server for Docker builds and ECR pushes, reverse proxy for routing to ECS containers.
- Integrated GitHub webhooks with signature verification, branch filtering, and automatic build triggers on push to configured branches.
- Implemented log streaming via Kafka topics (build-logs, deployment-logs) with ClickHouse aggregation for real-time tailing and historical query.
- Configured ECS rolling updates with health checks, auto-rollback on failure, and S3 for static asset storage.
Impact
- Reduced deployment time from about 15 minutes to 4 minutes by removing repeated manual steps.
- Live logs and centralized state made failures easier to understand and fix.
- Reduced deployment time from about 15 minutes to 4 minutes by removing repeated manual steps.
- Live logs and centralized state made failures easier to understand and fix.
- Made releases more repeatable because the flow lives in the platform instead of in scattered scripts and local knowledge.
Highlights
- Automates the full release flow from GitHub push to production deployment.
- Production deployments stay available through rolling updates and automatic rollback.
- Automates the full release flow from GitHub push to production deployment.
- Production deployments stay available through rolling updates and automatic rollback.
- Build and deployment logs are centralized and streamed so teams can debug without server access.
Tech Stack
More Projects
Additional work across AI products, developer tooling, and full-stack systems.
Next.js 16
Edward
Most AI builders stop at generation. Edward is everything after: admission-controlled BullMQ runs, resumable execution over an append-only event log, per-chat Docker sandboxes, and S3 + Cloudflare preview infrastructure.
Next.js 16
Agentic Chat
An AI chat platform that routes each request through the right context — memory, documents, tools, or research — and acts on the answer through connected apps.
Next.js
Bonkers by Foyer
Creative production system built at Foyer Tech — led the v2→v3 rebuild with reusable templates, multi-model routing, and faster repeat workflows for high-quality visual asset creation.
Chrome MV3
Fieldcraft
A careful Chrome extension copilot that reads the open job tab, evaluates fit against your profile, researches the company, and drafts truthful answers for review before any form is filled. It never auto-submits.
Next.js
Inkdown
Markdown editor and sharing platform with folders, live preview, and public links.
Next.js
Intellect AI
AI content platform combining image tools, video tools, and community features.
MongoDB
Video Platform
Full-stack video platform covering viewer and creator workflows.
Next.js
RAG-Chat
Document-grounded chat system with background processing and source-backed answers.
Chrome MV3
Bastion
A Chrome extension that PIN-locks websites before the browser starts loading them. No DOM overlay. No cached previews. Just a real network redirect.