GRADUATION PROJECT · 2026

Sada

A multi-agent AI platform that turns a raw product brief into a grounded marketing strategy — then into a ready-to-publish, dated content calendar.

TRACKITI — Open source
Sada product mockup showing the campaign brief and strategy view
SADA
01 / 18
The Team

Six people, one echo

Built end to end — frontend, backend, and the multi-agent AI engine — by:

Abdelhamid Robaa

Yasser Tawfik

AbdelRahman ElSayed

Abdullah ElSawalmy

Mohamed Shalaby

Mohamed Hamdy

SADA
02 / 18
The Problem

Creators do the work of an entire marketing team, alone.

Planning a launch means segmentation, positioning, personas, a content calendar, platform-specific copy, hashtags, visuals, and QA — usually done with five disconnected tools and no memory between them.

Fragmented

No single source of truth

Strategy lives in a doc, content lives in a scheduler, brand facts live in someone's head. Nothing stays consistent.

One-shot AI

Chatbots don't plan

A single prompt to ChatGPT gives you a caption, not a strategy grounded in who the audience is and why it matters.

No guardrails

Nothing checks the output

Generic tools have no QA pass, no claim verification, and no approval step before content ships.

SADA
03 / 18
The Idea

One system, two coordinated agent workflows, a human in the loop.

Sada is a full-stack platform where specialized AI agents each own one job — research, positioning, copywriting, QA — and hand off structured, validated data to the next agent. Nothing is a raw paragraph of text passed hopefully downstream.

Strategy engine

Marketing Director workflow

6 strategy specialists turn a product brief into segmentation, personas, journeys, objectives, and a campaign plan.

Content engine

Content Creation workflow

6 content specialists turn an approved strategy into on-brand posts, visuals, hashtags, and a dated calendar.

Human-in-the-loop

Approval, not autopilot

The creator reviews the strategy before content is generated, and can approve or send content back with feedback.

SADA
04 / 18
Tech Stack

What it's built with

Frontend

React 19
Vite 8
Tailwind CSS 4
React Router 7
shadcn 4
Framer Motion 12
React Hook Form 7
Zod 4
Stripe.js 9

Backend

NestJS 11
Prisma 6
Crawlee 3
PostgreSQL
Better Auth 1.6
BullMQ 5
Stripe 22
Jest 30

AI Engine

Mastra Core 1.54
Zod 4
Mastra PG 1.18
Mastra Evals 1.6
Mastra Obs. 1.16
Tavily 0.7
Perplexity 0.2
Vitest 4
SADA
05 / 18
System Architecture

Three repos, one pipeline

The browser talks only to the NestJS system of record. Nest persists each run, queues asynchronous work, and lets backend workers call Mastra through one canonical server-to-server client.

DB

PostgreSQL

Backend records remain authoritative; pgvector supports scoped project knowledge.

Q

BullMQ + Redis

Requests return quickly while workers execute generation asynchronously.

AI

Model + search providers

LLM, web research, embeddings, and image providers stay behind Mastra.

BoundaryThe frontend never calls Mastra or Mastra's internal knowledge routes directly.
SADA
06 / 18
Workflow 1 — Marketing Strategy

The Marketing Director pipeline

A raw product description becomes a complete, structured strategy: segmentation, targeting, positioning, personas, journeys, SMART objectives, and a campaign plan.

Understand

Input + context
01Intake ValidationGate
02Product AnalysisAgent
03Project KnowledgeRAG

Strategize

Audience + position
04STP ResearchResearch
05STP StrategyAgent
06Buyer PersonaAgent
07Buyer JourneyAgent

Activate

Plan + validate
08SMART ObjectivesAgent
09Campaign PlannerAgent
10Quality CheckGate
LLM specialistgate, research, or retrieval
OutputCampaign Strategy
SADA
07 / 18
Workflow 2 — Content Creation

Strategy in, calendar out

The approved campaign strategy is turned into a content brief, then researched, drafted, checked, approved by a human, illustrated, tagged, and scheduled.

Ground

Strategy + context
01Build BriefStep
02Project KnowledgeRAG
03Content ResearchAgent
04Content StrategyAgent

Create & Review

Draft + approve
05CopywriterAgent
06Preflight ChecksGate
07Editor / QAAgent · loop
08Human ApprovalSuspend

Enrich & Publish

Parallel + schedule
09Visual PromptAgent · ‖
10Hashtag / SEOAgent · ‖
11ScheduleStep
12Claim AuditGate
LLM agentdeterministic stephuman approval
OutputContent Calendar
SADA
08 / 18
The Agent Roster

13 specialist roles, one accountable system

SpecialistJobWorkflow
Product AnalysisExtracts a structured product profile from the raw briefStrategy
STP StrategySegmentation, targeting, positioningStrategy
Buyer Persona1–3 grounded buyer personasStrategy
Buyer JourneyFunnel stages and touchpoints per personaStrategy
SMART ObjectivesMeasurable campaign goalsStrategy
Campaign PlannerChannels, budget allocation, content mixStrategy
Content ResearcherTrends, hashtags, audience contextContent
Content StrategistContent strategy from brief + researchContent
CopywriterOn-brand posts per platformContent
Editor / QAReviews drafts, triggers a bounded rewriteContent
Visual PromptImage/video prompts + generation per postContent
Hashtag / SEORanked hashtags and keywordsContent
Chat TitleNames each session for the workspace UIShared
SADA
09 / 18
Agent Tools

What the agents can actually call

Agents don't just generate text — they call typed, bounded tools for anything that needs to be real: live data, brand rules, or a verifiable calculation. Every tool has a Zod input/output contract, same as an agent handoff.

Grounding

Web Search

Uses Tavily for current market, competitor, and industry signals.

Research Evidence

Caches citable excerpts with publisher, URL, and relevance score.

Perplexity Search

Returns AI-summarized web research for faster content discovery.

Brand safety

Brand Context

Retrieves approved voice, claims, prohibited terms, and tone examples.

Claim Verifier

Marks each claim approved, evidence-linked, or unsupported.

Platform Rules

Returns platform limits, hashtag conventions, CTA style, and formatting rules.

Production

Content Calendar

Turns approved posts into a dated, cross-platform publishing schedule.

Image Generation

Builds an enhanced visual prompt and image spec for each post.

UTM Builder

Creates normalized, campaign-tracked URLs without a model call.

SADA
10 / 18
Design Decision

Why specialist roles, not one giant prompt?

  • Single responsibility prompts. Every agent has an explicit "you never do X" clause — the copywriter never invents strategy, the QA agent never writes copy.
  • Zod-validated handoffs. Every agent returns a schema-checked object, not free text. Nothing downstream has to guess a shape.
  • No hallucinated facts. Agents list unknowns in an assumptions field instead of inventing numbers.
  • Independently testable. Each step factory takes its agent as a dependency, so tests swap in a mock and assert behavior deterministically.
  • Focused extension. New roles such as Market Research, Competitor Analysis, SEO, or Analytics can enter at explicit workflow boundaries.
  • Model-agnostic. Any agent can be pointed at a different model string without touching its prompt or schema.
SADA
11 / 18
Engineering Highlights

The hard problems weren't prompting

Guardrails

Deterministic checks beside the LLM

A rule-based preflight and a claim-audit step catch platform, policy, and unverified-claim issues that don't need — and shouldn't rely on — a model call.

Latency budget

Bounded QA loop

QA runs one review-and-rewrite cycle by design, keeping worst-case model time under the backend's fixed run deadline instead of looping until "perfect."

Grounding

RAG over brand knowledge

Approved brand facts are retrieved via pgvector before content is drafted, using swappable Gemini or local Ollama embeddings.

Throughput

Parallel independent steps

Visual prompt generation and hashtag/SEO generation run concurrently once copy is approved — they don't depend on each other.

Resumability

Suspend / resume for human review

The content workflow can pause after QA and wait — potentially indefinitely — for a reviewer's approve/reject decision before continuing.

Portability

Multi-provider model routing

One config string switches every agent between OpenCode Go, OpenAI, Anthropic, or Google models — no prompt rewrites.

SADA
12 / 18
Product Experience

What the creator actually sees

Generate

Fill a campaign brief, watch the strategy stream in, review and approve it, then watch content, visuals, and hashtags assemble into a calendar.

Knowledge

A brand knowledge base with an "ask" panel — the same source Sada retrieves from when it grounds content in real brand facts.

Connectors

A dashboard for connecting supported social accounts and managing approved publishing flows.

Billing

Stripe-backed plans and subscription management, built directly into the app rather than bolted on.

Auth

Session-cookie authentication with email/password, OTP login, and email verification — no tokens sitting in browser storage.

History

Every brief, reviewed strategy, and completed campaign is saved to the project sidebar so nothing is lost on refresh.

SADA
13 / 18
Testing & Quality

Tested like production software

The AI engine treats agents as ordinary dependencies — every workflow is unit- and integration-tested without ever calling a real model.

  • Per-agent unit tests. Each agent is built for real, then agent.generate is patched with a typed mock returning a fixture — the wiring is exercised, only the LLM call is faked.
  • Integration tests. Full workflows are composed with mocked agents and asserted end-to-end against the schema contract.
  • Schema tests. Every Zod contract has its own tests, independent of any agent.
  • Repeatable quality checks. Typecheck, tests, and production builds provide the release gate for workflow changes.
SADA
14 / 18
Novelty

What Sada does that a chatbot can't

vs. a single ChatGPT prompt

One prompt gives you one guess. Sada coordinates 13 specialist roles through schema-validated handoffs, so approved strategy informs content instead of being discarded between steps.

vs. Buffer / Canva / schedulers

Those tools start after the strategy exists. Sada generates the strategy itself, then the content that follows from it, in one traceable pipeline.

Guardrails, not just generation

Deterministic preflight checks and a claim audit run alongside the model — output is checked, not just produced.

A creator stays in control

Strategy approval and content approval are explicit steps, not an afterthought — the workflow literally pauses and waits.

SADA
15 / 18
Competitive Landscape

Where Sada sits in the 2026 market

Most tools either schedule content you already planned, or optimize a brand presence you already have. Sada starts one step earlier — from a raw product brief, with nothing yet decided.

Dimension Scheduling tools
Buffer, Hootsuite
Autonomous agents
Trellis, NoimosAI
Sada
Starting point You already have a strategy You already have a brand presence A raw product brief — nothing exists yet
Strategy work None — you bring your own Optimizes an existing strategy over time Generates the strategy itself: STP, personas, journeys, objectives
Output check None Performance-based, after the fact Deterministic guardrails before publish — preflight + claim audit
Human role Approves everything manually Approves broad strategy, agent runs loosely after Explicit approval gate built into the workflow itself
Most competitors help you run a strategy you already have. Sada is one of the few systems where the strategy is generated, grounded, and verified before content is ever written — with the creator approving both stages, not just the final calendar.
SADA
16 / 18
Limitations & Future Work

Honest about what's next

Current limitations

  • Cost and latency scale with the number of agent calls per run.
  • Publishing coverage depends on configured provider credentials and currently supported channels.
  • Quality depends on the underlying model — provider outages or drift affect output.

Next capabilities

  • Competitor intelligence with deeper, cited source coverage.
  • Campaign analytics that feed measured results back into planning.
  • SEO performance beyond keyword generation and content metadata.
  • Publishing coverage across more channels and account types.
SADA
17 / 18

Strategy that survives the handoff

From raw brief to approved campaign, with every decision traceable.

Questions? Explore the three independently versioned parts of Sada.