The problem
Content calendars, creative assets and channel activity were scattered across spreadsheets and folders, with no single place to see what was going out, what had gone out, or what it did.
What was built
A workspace-scoped platform covering six networks — Facebook Pages, Instagram, TikTok, YouTube, Google Business Profile and Threads. Account connection with encrypted token storage, a media library with per-network compatibility checks and nested folders, a composer that adapts one post per network with live validation and duplicate detection, posting queues and a scheduler, a publishing worker, an inbox for comments, messages and reviews, approvals and team roles, an analytics dashboard with CSV export, and a metered AI assistant. Backed by a 48-model PostgreSQL schema behind Prisma.
The engineering decision
The recommendation engine is the part worth pointing at, because of what it refuses to do. Best-times-to-post ranks only the hours the account has actually posted at — it will not invent an hour that has never been tried, and when it has fewer than ten posts to reason from it says so instead of producing a confident number. The same restraint runs through the rest: web push is written directly against RFC 8291 and 8188 with no dependencies and verified by decrypting with an independently written receiver, and a per-network queue restriction that had been a cosmetic label since the first migration is now refused at the tenancy boundary with a regression test behind it. The publishing calls for all six networks are written and unit-tested against each platform's documented contract; the ones that have not yet been run against a live API are recorded as exactly that in the project's own status table rather than described as finished.
Next plate
Zipicka Business HubCentralised business-operations layer for the e-commerce arm, unifying storefront, catalogue, campaign and performance data into one management view.