Project 09 · Social media
Signal: multi-tenant social media management SaaS.
A multi-tenant social platform for agencies: scheduling, approvals, insights and AI — every workspace isolated from every other, every AI output explained.

01 ▸ Overview
Multi-tenant SaaS.
Signal is social-media management built for agencies that run many client brands. Each workspace is a tenant: its own brands, members, posts, connections and audit log, served from one codebase.
Facebook Pages and Instagram Business come first, through the Meta Graph API, with every platform an adapter so the next one drops in. Posts move through drafting, client approval and scheduled publishing; insights sync hourly; anomaly detection tells a client whether a reach drop is their content or the platform.
The AI layer runs server-side on Anthropic Claude and never returns a bare recommendation — it shows the signal it read, why it matters, and what to do. Security is three independent layers: an optimistic proxy, server-verified sessions, and Firestore rules that enforce tenant isolation even if the app code is wrong.
02 ▸ What we built
The parts that do the work.
Workspace-isolated multi-tenancy
Membership-checked reads and writes, encrypted platform tokens no browser ever sees, append-only audit logs.
Publishing and approvals
Draft → client approval → scheduled publish, with idempotent, transaction-locked cron so a slow clock never double-posts.
Insight sync and anomaly detection
Hourly pulls, intent scoring and a Pulse view that separates content problems from platform ones.
Explained AI
Every recommendation carries the evidence and the action; Claude runs server-side only.
Adapter architecture
Meta first, a mock adapter for demos, new platforms as drop-in modules.
03 ▸ Stack
What it runs on.
04 ▸ Related services
The operations services behind the build.
05 ▸ Related projects
Optimal Offshore