Skip to content
Case study · AI SaaSLive

Status
Live
Built with
React, TypeScript, Tailwind CSS
StartupDeckAI: AI startup analysis and pitch decks, built full stack.
Scoring
8 dimensions
Deterministic formula, GO / PIVOT / KILL
Automated tests
3,400+
Vitest, plus Playwright E2E, in CI
Core flow
Idea → Deck
Analysis feeds the slides

Overview

StartupDeckAI is an AI platform that turns a startup idea into market analysis, competitor intelligence, a scored GO / PIVOT / KILL verdict, and a pitch deck.

I built it end to end: the React front end, the API and data model, the analysis engine, the background jobs, payments, and the CI/CD pipeline.

Problem

Founders juggle spreadsheets, research tabs, and slide templates, and the pitch ends up disconnected from the analysis.

Generic chatbot output is hard to trust and harder to turn into something investors will read.

Constraints

AI generation is slow and costs money on every call. An analysis gets a 90-second budget and streams its progress to the browser as it runs, with heartbeats so the proxy in front of the API does not cut the connection.

The data model had to absorb new signals and a changing product shape without backfills.

Architecture

The front end is React and TypeScript on Vite, with TanStack Query for server state, Zustand for client state, Tailwind CSS and Radix UI for the interface, Recharts for charts, and Three.js and Framer Motion for the interactive layer.

An Express API serves REST and server-sent events on PostgreSQL through Drizzle ORM, plus a read-only GraphQL endpoint for the internal admin page. Sign-in uses Passport (email and Google OAuth) with sessions in Redis, and payments run on Razorpay.

The analysis engine runs four LLM stages in parallel and a synthesis stage, then scores eight dimensions with a deterministic formula; every figure carries a source label set in code. The analysis and the pitch deck stream to the browser over server-sent events, and the deck exports to PDF. BullMQ on Redis runs email delivery and scheduled market news and funding jobs.

GitHub Actions runs lint, type checks, 3,400+ unit tests with coverage, an npm audit and Playwright end-to-end tests on every push. When it passes on main, a deploy workflow triggers the API deploy on Render; Vercel builds the front end from main.

Request path

  1. Web app

    React, TanStack Query, Tailwind

  2. API

    Express, REST and SSE

  3. PostgreSQL

    Drizzle ORM

Analysis

  1. Analysis engine

    Four LLM stages in parallel, then synthesis

  2. Score

    Eight dimensions, GO / PIVOT / KILL

  3. Pitch deck

    Slides built from the analysis, streamed

Delivery

  1. GitHub Actions

    Lint, types, 3,400+ tests, Playwright E2E

  2. Render

    API deploy triggered when CI passes

  3. Vercel

    Front end built from main

Slow AI work streams its progress as it runs, and the API deploy follows a passing CI run.

Tradeoffs

The platform prioritizes a structured idea-to-deck workflow over open-ended conversation.

Rich 3D visuals cost performance budget, so they are kept progressive and responsive.

What I'd do differently

Additive schema design paid off: pivoting the product from validation to pitch decks did not require a painful migration.

It also reinforced how SaaS complexity grows once auth, payments, background jobs, and SEO enter the picture, and why a strict CI gate pays for itself.

ReactTypeScriptTailwind CSSNode.jsExpressGraphQLPostgreSQLRedisBullMQ

Building something similar?

We can walk you through how this was built on a free call.

Free consultation

Have a project in mind?

Tell us what you're building. We'll suggest the simplest way to ship it, and tell you honestly if we're not the right fit.

Email us
  1. 1

    Tell us about the project

    A few quick questions in the chat, or an email.

  2. 2

    Reply within 24–48 hours

    With questions, a rough scope and a starting price.

  3. 3

    Free call, then a written quote

    No commitment until you're happy with it.