How we built it
An autonomous studio that turns raw photos into a published feed.
NIKSAC pairs a photographer with a crew of AI agents and a hardened, production-grade backend. This is the complete engineering story — the product, the decisions, the API, and a live animated view of the architecture.
Who it's for
The Photographer
Shoots. Doesn't fuss with feeds.
Nik captures the work and drops raw frames into OneDrive. No exports to juggle, no captions to agonize over — the pipeline takes it from there.
The Agent Crew
Curates, writes, and schedules.
A team of focused AI agents picks the strongest frames, drafts on-brand captions and hashtags, proposes crops, and slots posts into the calendar.
The Publisher
Ships to Instagram, reliably.
Approved posts publish straight to Instagram through the Graph API — with idempotent, timeout-guarded calls so nothing double-posts or stalls.
Capabilities
OneDrive ingestion
New frames sync automatically via Microsoft Graph webhooks, with EXIF read on arrival.
AI curation
Agents rank and shortlist the strongest shots so only the best make the feed.
Caption & crop
On-brand copy plus aspect-ratio-aware crop suggestions for every platform.
Smart hashtags
Relevant, non-spammy tag sets generated per photo and per collection.
Scheduling
Posts are queued and released on a cadence, coordinated by a cron worker.
Enterprise identity
Microsoft Entra sign-in with MFA delegated to Entra ID; sessions are HMAC-signed.
Concurrency-safe state
Optimistic versioning + Postgres advisory locks keep browser, webhook, and cron writes consistent.
Guarded API layer
Every route runs behind auth, validation, and per-IP rate limits with a uniform error envelope.
Start here
3-Slide Overview
The photographer workflow problem, how PhotoFlow solves it, and the animated system architecture — three slides, no reading required.
Live diagram
Animated System Architecture
Watch a request travel the full stack — clients, Vercel edge, identity & MFA, the guarded API layer, Neon persistence, and external services — step by step.
The complete reference
Product specs, engineering decisions, and operational guides — versioned with the code and rendered right here, so there's no repository detour.