Skip to main content
Hayon is a production-ready, full-stack social media automation platform built to solve one critical problem: managing and publishing content across multiple social media platforms from a single, unified dashboard. Whether you’re an individual content creator, a social media manager, or part of a marketing team, Hayon eliminates the context-switching tax of juggling separate apps for each network. You compose once, schedule intelligently, and Hayon handles the rest — including AI-generated captions tailored to each platform.

The problem Hayon solves

Publishing consistently across social networks is tedious. Every platform has a different interface, different content requirements, different optimal posting times, and different analytics views. Teams end up context-switching constantly, using spreadsheets to track schedules, and manually copy-pasting content between apps. Hayon replaces all of that with a single workflow:
  1. Create — Compose your post with text, media, and platform-specific options in one place.
  2. Generate — Use AI (powered by Google Gemini) to create platform-appropriate captions automatically.
  3. Schedule — Set a publish time or post immediately; Hayon queues everything through RabbitMQ for reliable delivery.
  4. Analyze — Review engagement across all platforms from a unified analytics dashboard.

Key features

Multi-platform publishing

Post to Bluesky, Tumblr, Facebook, Threads, and Mastodon simultaneously. Each platform receives independently tracked status updates.

AI-generated captions

Generate platform-specific captions with Google Gemini AI. One image or idea, multiple tailored captions in seconds.

Smart scheduling

Schedule posts for any future date and time. Hayon uses RabbitMQ’s delayed message exchange to fire jobs precisely on time.

Rich analytics

Track post performance with timeline, growth, platform comparison, and heatmap views. A dedicated analytics worker fetches data on demand.

Real-time notifications

Receive instant success or failure alerts via WebSockets (Socket.IO) and Firebase push notifications — no polling required.

Subscription management

Built-in Stripe integration handles plan upgrades, billing portal access, and webhook-based subscription lifecycle events.

How the system works

At a high level, Hayon is a monorepo with a clear separation between a Next.js frontend and a Node.js/Express backend. The two communicate exclusively over HTTP REST APIs. There is no shared runtime code between them. When a user creates and schedules a post:
  • The frontend uploads any media to AWS S3 via the backend.
  • The backend optionally calls Google Gemini to generate a caption suggestion.
  • On submission, the backend publishes a job message to RabbitMQ.
  • A separate worker process consumes the queue, calls the relevant social platform APIs, and writes status results back to MongoDB.
  • The worker emits a Socket.IO event to notify the frontend of success or failure in real time.
This architecture decouples publishing from the web request cycle. If a platform API is slow or temporarily unavailable, the queue absorbs the wait without blocking the user interface. Failed jobs can be automatically retried up to three times before being moved to a parking-lot queue for inspection.

Tech stack

Frontend

Next.js 16 (App Router) · React 19 · Tailwind CSS v4 · shadcn/ui (Radix UI primitives) · Recharts · Socket.IO client · TypeScript

Backend

Node.js · Express v5 · MongoDB (Mongoose v8) · JWT access and refresh tokens · Google OAuth 2.0 (Passport.js) · TypeScript

Infrastructure

Redis (caching and session data) · RabbitMQ (job queue with delayed message exchange) · AWS S3 (media storage) · Stripe (payments) · Google Gemini AI (caption generation) · Firebase (push notifications)

Deployment

Vercel for the Next.js frontend · AWS EC2 for the Express backend · Nginx as reverse proxy · Logtail / Better Stack for structured logging

Subscription plans

Hayon ships with two built-in plans enforced at the API level:
PlanPosts per monthAI caption generations
Free3015
Pro6030
Plan limits are defined in backend/src/config/plans.ts and checked by middleware before any post or generation request is processed. Upgrading a plan triggers a Stripe Checkout session; the resulting subscription lifecycle is managed via Stripe webhooks.

Supported social platforms

Hayon currently supports publishing to:
  • Bluesky — via the AT Protocol (@atproto/api)
  • Facebook — via Meta’s Graph API (OAuth 2.0)
  • Threads — via Threads API (Meta OAuth)
  • Tumblr — via Tumblr OAuth 1.0a
  • Mastodon — via Mastodon’s REST API (mastodon.social instance by default)
Each platform has its own route group (backend/src/routes/platforms/) and posting service that handles credentials, content formatting, and error classification.

Next steps

Quickstart

Get Hayon up and running locally in minutes. Covers prerequisites, environment variables, and your first post.

Architecture

Deep-dive into how Hayon’s components connect — from the request lifecycle to background job processing.

Platform integrations

Learn how to connect Bluesky, Facebook, Threads, Tumblr, and Mastodon accounts.

API reference

Explore the full REST API for posts, analytics, platforms, and payments.

Build docs developers (and LLMs) love