AI-aggregated business intelligence across 107 topic verticals. Rebuilt from a Google AI Studio visual shell with no backend, no database, and no workers.
Pulse arrived as a Google AI Studio export. The founder had used Studio's no-code AI builder to mock up a polished React frontend with hardcoded sample data in a single 661-line constants file. The shell looked like a real product: news feed, deals page, social posts, video views, stock tickers, topic verticals. None of it was wired to anything. There was no database, no authentication, no API layer, no background workers, no content pipeline, no deployment path, and no real AI behind the AI button. The only LLM call in the entire codebase was a "Generate Insight" button on detail views that posted directly to the Gemini API from the browser using a public key. The visual shell was good. Everything else needed to exist for the first time.
The Notus took the fractional CTO seat and rebuilt the product from the visual shell outward. The frontend moved from Vite to Next.js 15 with ISR on Vercel, pre-rendering roughly 3,700 pages so every article, video, deal, and social post has its own crawlable URL. The Supabase Postgres backend was built from scratch with row-level security and idempotent writes. The processing layer became 15 worker services on Railway, each with a single responsibility. We picked the model for each job — Groq for inference and topic scoring, Parallel AI for creator discovery (an 89% cost cut versus the legacy research stack), Replicate for in-app imagery, OpenAI for embeddings — and the data source for each surface (Exa and Jina for article extraction, Apify and BrightData for social, Supadata for transcripts, Finnhub for stocks). The governance pack was written alongside the code, not after.
Pulse is live at pulse.bot, aggregating news, social, deals, video, podcasts, and stocks across 107 topic verticals. The ingestion-to-display pipeline runs in independent stages so any single failure is retryable without re-processing the rest. The relevancy scorer rejects off-topic content with a documented display threshold that grandfathered legacy URLs when it was raised. The AI Analyst streams Groq-generated answers grounded in Exa RAG context, behind per-IP rate limits and a panic switch the team can flip during incidents. The social-poster service publishes around 250 pieces of content per day across X, Threads, and Instagram with Satori-rendered overlay images stored on Cloudflare R2. Daily and weekly digest emails are AI-curated and delivered via Resend with React Email templates. The governance pack we wrote at the rebuild stage is still the artifact engineers consult when they want to change a prompt, swap a model, or move a threshold — which is the test that proves the documentation isn't shelfware.
AI-powered trading card platform with a custom multi-model image pipeline, nano banana powering the in-app editor, a 3D card-slab viewer, and a full creator marketplace. Built from a founder idea, no visual rough draft.