hello @ atellius.com
Case 001 — Owned SaaS
All workA multi-tenant SaaS that scores websites across six AI-visibility dimensions, generates remediation plans, and produces client-branded PDF audits. Built by us, sold to agencies under a credit-wallet billing model.

Architecture · 8 layers · request flows left to right
- Next.js
- React
- FastAPI
- PostgreSQL
- Cloudflare
- Stripe
- Razorpay
- SES
8
Scanner categories
bot access, schema, content, entity, FAQ, sameAs, E-E-A-T, platform
12
Multi-tenant tables
organisation_id NOT NULL + backfilled
2
Payment rails
Stripe (USD) + Razorpay (INR)
< 30 ms
Worker startup
Cloudflare edge cold start
Agencies selling SEO services need a way to deliver AI-visibility audits without standing up their own scanner. We built and continue to operate a multi-tenant SaaS that lets them white-label our entire pipeline — scan, score, remediate, report — under their own brand, with a PAYG credit wallet.
Backend — FastAPI on a single DigitalOcean droplet
Async SQLAlchemy with selectinload everywhere — no MissingGreenlet errors, no N+1. An Alembic migration pipeline introduced organisation_id across 12 tenant tables, backfilled to an internal org during cutover.
- OrgContext dependency injected into 81 router endpoints
- Credit middleware on scan / ai_sim / pdf_report / verify
- Append-only ledger with DB-level balance check constraint
Frontend — Vite + React + Tailwind + shadcn
A React SPA served by nginx on the same droplet — single-origin, no CORS. Built around an SSE feed for streaming scan results so users see findings populate live.
Edge — Cloudflare CDN, R2, WAF
Static assets cached on the edge. R2 holds branded PDF reports. WAF rules block scanner-targeted abuse. Workers reserved for future per-agency white-label routing.
01
6-dimension streaming scorer
A custom scorer evaluates retrievability, entity authority, content structure, schema markup, E-E-A-T, and platform-specific signals, streaming partial results over SSE so the UI updates incrementally.
02
Multi-run AI simulation
Each prompt runs 3–5 times against multiple LLMs; we report citation frequency rather than a binary yes/no. Statistical consistency is what makes the result defensible.
03
White-label everything
Brand name, primary colour, logo, and PDF chrome are per-organisation. The product is owned by NBN Ventures but ships with no hardcoded brand strings — a single PRODUCT_NAME constant flips the entire surface.
Operates as the proof-of-craft anchor for Atellius. The same patterns — async SQLAlchemy, credit wallets, multi-tenancy, edge-first delivery — now ship as templates for agency clients.

