Meridian Social
Schedule everywhere. Own your voice across every platform.
meridiansocial.app ↗Multi-platform publishing for creators and small teams running more than one voice. Eleven platforms, each on its own terms.
Social media management tools are either bloated enterprise dashboards or stripped-down schedulers that break on their third platform. Creators and small teams don't need analytics suites or team approval chains. They need to write a post, choose where it goes, and trust that it gets there.
Most tools treat platforms as interchangeable. They're not. Twitter has a 280-character ceiling. Instagram favors visuals. LinkedIn rewards longer thought. Discord is a webhook. Bluesky uses app passwords. Each one has its own OAuth flow, its own API quirks, its own failure modes. A scheduling tool that doesn't account for these differences isn't a tool — it's a liability.
One composer. Eleven platforms.
Each integration is purpose-built. OAuth where the platform requires it. PKCE for Twitter. Credential-based auth for Bluesky and Discord. Token refresh handling for platforms that expire access. No shortcuts. No abstractions that paper over differences.
Agencies manage multiple clients. Creators run multiple identities. Meridian scopes everything — posts, connections, limits — per brand. Switch context without switching accounts.
The composer shows per-platform character counts in real time. Twitter's 280 and LinkedIn's 2,200 aren't treated the same. The interface reflects the platform, not our preferences.
Text-to-image and image-to-video via Higgsfield. Not as a bolt-on feature with its own page — integrated directly into the compose flow. Write a prompt, generate media, attach it, schedule. One flow.
Sixteen tools exposed via the Model Context Protocol. Claude Code can create posts, schedule content, manage brands, generate media, and check queue status — all without the browser. For users who think in terminals, not dashboards.
Not a roadmap feature. The calendar ships with drag-and-drop, week and month views, and click-to-edit. Scheduling is spatial, not just temporal.
Scheduled posts update every 30 seconds. Time remaining is always accurate. Edit, delete, or publish immediately — without navigating away.
Scheduled posts need retry logic, failure tracking, and cancellation. BullMQ gives us all three. Three retry attempts with exponential backoff. If Twitter's API throws a 429 at 3 AM, the post retries — then marks as failed with a reason the user can read.
Typed schema. Auto-generated migrations. Platform connections scoped to brands with a unique constraint on platform + brand. The schema enforces relationships the application layer doesn't have to worry about.
We needed dark mode, glass morphism, and consistent spacing without importing a full design system. Ten components — all built to the same spec. Tailwind utilities underneath. No runtime CSS-in-JS overhead.
Three slices of state: auth, theme, brands. Redux is infrastructure for a problem this size. Zustand is a function call.
Three tiers. Enforcement at every boundary.
30 posts/month, 3 platforms per post, 1 brand. Watermark on published posts.
Unlimited posts, all platforms, 1 brand. No watermark.
Everything in Pro, plus 5 brands. Multi-client management.
Plan limits are checked at post creation, not at publish time. No one schedules 50 posts only to find out at midnight that they hit a wall.
Platform integrations are where ambition meets bureaucracy. Every OAuth flow has its own interpretation of the spec. Twitter's PKCE implementation requires a code verifier stored with a 10-minute TTL. Instagram demands a connected Facebook business account. Pinterest needs a separate landing page for app review. Each one is a week of work disguised as an afternoon.
The MCP server changed how we use our own product. Scheduling a week of content from a terminal — no browser, no clicking — turned a 30-minute task into a 3-minute conversation. We built it for users. We kept it because we couldn't go back.
The endorsement watermark for free users was a deliberate trade. "Posted with meridiansocial.app" at the bottom of every post. Not hidden. Not aggressive. Just present. The users who convert to Pro do it to remove five words. That's the kind of pricing signal that works.
Have something worth building?
We take on a small number of client projects alongside our own products. If it's ambitious and the problem is real, we're interested.
Start a conversation