← Back to projects
Automation · Case studyRunning

Social AutoPostFrom artwork to post, on time.

A panel and scheduler that renders the artwork and publishes the ads for my deals brand on Facebook and Instagram.

Next.js 15TypeScriptPrismaZodSharpFFmpegMeta Graph APIAWS
A laptop displaying the real Social AutoPost ad bank beside a phone showing the final frame of an ad

From artwork to post, on time.

A panel and scheduler that renders the artwork and publishes the ads for my deals brand on Facebook and Instagram.

An 18-second vertical ad rendered by the worker on AWS, with no manual editing.
My role

Product definition and AI-assisted development, connecting requirements, implementation and review.

Posting automatically to Facebook since 31 Oct 2026; Instagram was connected on 1 Nov 2026. One post every 6 hours per network, 93 tests passing, and only confirmed post IDs count as published.

Promoting communities every day on two networks, with copy that does not repeat, the right links for each network and no one having to remember to post.

A Next.js panel with Prisma and Zod validation; a worker that renders artwork and vertical ads with Sharp and FFmpeg (1080×1920, QR code on the last frame); a scheduler that publishes through Meta's official Graph API. Captions rotate across 30 openings for 10 artworks.

Campaign — Brand, destinations and rules set in the panel.

An explanatory diagram of the running workflow. This is not live system monitoring.

Artwork and vertical ad rendering

Implemented¹

Editorial bank with per-network captions

Implemented¹

Automatic Facebook publishing

Implemented¹

First scheduled Instagram posts

In development

¹ Identified in code or implementation documentation; not equivalent to a new production test.

Next.js 15TypeScriptPrismaZodSharpFFmpegMeta Graph APIAWS

Meta OAuth. Authorisation came back with an empty list of Pages. Instead of asking for broader permissions, I logged only steps and counts (no tokens) and found the real cause: the account used managed no Page.

The ad bank in the panel, with three campaign artworks

Real output produced by the system.

Simulation first, real posts later. The app ran in simulated mode for weeks before its first public post, and any uncertain send stays out of the count until it is confirmed.

Keep exploring

GameplayCollector V2
Let’s build something.

An interesting problem?
Let’s build.

Web systems, automation and tools that turn an idea into working software.