PostPilot — AI LinkedIn Post Generator

Overview ~
Building a multi-tenant AI-powered LinkedIn content platform for a marketing team that needed brand consistency across multiple workspaces.
PostPilot is an AI-powered LinkedIn post generator I built for Prompt (meetprompt.com), a marketing and communications company led by Paul. Their team was creating LinkedIn content manually — different people writing in different voices, no shared brand guidelines, no way to track what was working, and no central system for managing who writes what across multiple teams. I designed and built the entire platform end-to-end: a multi-workspace system where different teams operate independently while a super admin oversees everything from one dashboard. The system turns a brief into three distinct, on-brand LinkedIn post variations in under a minute using Claude AI, learns from approved posts to improve over time, and generates editorial-quality images using Google Imagen 4. Built with Next.js 16 (App Router), TypeScript, Supabase (Postgres + Auth + Storage + Row Level Security), Anthropic Claude API (Haiku + Sonnet), Google Imagen 4 for image generation, and Serper.dev for competitive intelligence.
Challenge ~
Engineering a multi-tenant content platform with AI generation, brand voice learning, and real-time streaming — all with workspace-level isolation.
The core challenge was architectural: building a true multi-tenant system where every piece of data — generations, voice profiles, content strategies, approved posts, competitive intelligence — is isolated per workspace through Supabase Row Level Security, while giving a super admin full visibility across all workspaces from a single dashboard. On top of that, the AI generation pipeline needed to feel instant despite making multiple Claude API calls — so I built SSE streaming that delivers tokens to the UI as they arrive, with each of the three variations streaming independently. The image generation pipeline was another challenge: naive text-to-image prompts produced generic stock photo results, so I built a two-stage system where Claude Haiku first analyzes the post content like an art director and proposes a concrete visual scene, then Imagen 4 generates the actual image. The platform also needed invite-only access control with two-tier roles (platform-level super admin and workspace-level owner/admin/member), per-user voice document selection, a feedback loop where approved posts improve future generations, and rate limiting that works across both burst and daily windows.
Reviews ~
A content platform that transformed how the team creates LinkedIn posts — structured, on-brand, and AI-powered.
The Prompt team went from scattered manual content creation to a structured, AI-powered workflow where every post stays on brand and every team member works from the same system. The multi-workspace architecture gave leadership full visibility while letting individual teams operate independently. The brand voice learning meant posts sounded like their team — not like AI. The super admin panel with golden badges, assign-to-workspace modals, and workspace-scoped user management gave Paul's team the control they needed to manage everything from one place.
“PostPilot is what our team has been missing. Having multiple workspaces where different users can work independently, with a super admin managing everything — Musawir built exactly what we needed and made our work so much easier.”
Paul, Prompt (meetprompt.com)
Solutions ~
Domain-driven multi-tenant architecture with streaming AI generation, intelligent image prompting, and a self-improving content loop.
Designed the system around a domain-driven folder structure with clean separation between UI (features/), business logic (domain/), and external service adapters (infrastructure/). Built 45 API endpoints covering generation, brand voice, content strategy, competitive intelligence, content calendar, admin operations, and audit trails. The generation pipeline builds prompts from multiple context sources — brand voice profile, content strategy pillars, approved post examples (few-shot learning with 90-day recency and quality weighting), and anti-AI-tell rules — then streams three distinct variations via SSE using a 5-format by 5-angle matrix that enforces genuine diversity between options.
Built the multi-tenant system with workspace-level RLS policies, a two-tier role system (platform roles for super admins, workspace roles for owners/admins/members), invite-only onboarding with configurable member caps, and per-user voice document selection so teammates choose their active voice independently. The image generation pipeline uses Claude Haiku as an art director to extract visual concepts, then Google Imagen 4 to generate editorial-quality photographs with a rolling history of 4 attempts per variation and automatic storage cleanup. Added session resilience (JSON 401 on API routes with global SWR redirect), audit trail logging, competitive post discovery via Serper, and a 13-tag feedback system across 6 dimensions that steers future generation quality. The full platform ships with 123 unit tests on the domain layer.


