Django social media manager with no seat limits
BrightBean Studio is a self-hosted social media manager written in Python on Django. You write a post, tailor the caption and media for each network, drop it on the calendar, and a background worker publishes it through the platform's official API. The README aims it at creators, agencies and small businesses, and pitches it as a free take on Sendible or SocialPilot with no limits on seats or connected accounts.
Postiz, written in TypeScript, and Mixpost, written in PHP, do the same job. The comparison of self-hosted social media schedulers sets the networks BrightBean Studio supports against those of the other tools.
PostgreSQL only, with client sign-off by magic link
- Eleven networks, no aggregator: Facebook, Instagram, LinkedIn (profiles and pages), TikTok, YouTube, Pinterest, Threads, Bluesky, Mastodon, Google Business Profile and DEV.to, each through its own API and the instance's developer credentials.
- No Redis: background jobs run on django-background-tasks, so PostgreSQL is the only data service. Postiz and Mixpost both need Redis.
- Slots and queues: each account gets recurring weekly posting slots, and a queue drops every new post into the next free one.
- Client sign-off: clients approve or reject posts in a portal through a magic link that lasts 30 days, without creating an account.
- Shared inbox: comments, mentions and direct messages in one place, though DMs only come from Facebook and Instagram.
- REST API and MCP server: a script or an agent can create and schedule posts, read analytics and reply from the inbox, using a key scoped to one workspace.
Missing X support, a Docker image and tagged releases
No X, Reddit or Discord. The request for an X connector has been open since April 16, 2026 (issue #19), alongside Reddit (#20) and Discord (#34). Postiz publishes to X, and so does Mixpost, even in its free edition.
One developer app per network. Meta, LinkedIn, TikTok, Google and Pinterest each need an app registered on their developer portal, with the instance's callback URL. LinkedIn company pages require an API product that LinkedIn reviews; without it, personal profiles have to be reconnected by hand about every 60 days. TikTok wants a demo video before it lets the app into production. Bluesky, Mastodon and DEV.to are the only networks that skip this step.
No published Docker image. The production Compose file builds the image from source, then runs the app under Gunicorn, the publishing worker, PostgreSQL 16 or later, Caddy for HTTPS and a one-shot migration container. A request for a prebuilt image has been open since June 2026 (#111). The README sizes the shipped command for 512 MB, with a warm Gunicorn worker near 200 MB, and asks for the same headroom for the publishing worker, which downloads videos to disk before pushing them out. With local storage, the media library is served without authentication under /media/, because Instagram, Facebook and Pinterest fetch files from there when a post goes out.
Sign-up stays open. No setting turns off the public sign-up page, and the request to add one has been waiting since April 2026 (#23). TOTP two-factor login is still on the README's roadmap, and the interface is English-only (#163).
Nothing is paywalled, hosted version included. Every feature ships in the AGPL-3.0 repository. BrightBean, the company behind it, runs the same code as a free hosted service and says it earns its money from separate API products. Its FAQ leaves the door open to premium features later, while promising the core stays free and the code stays open.
Six months old, no numbered release. The repository was created on March 25, 2026 and has no releases or tags, even though the website FAQ mentions release notes on GitHub. Updating means pulling main and rebuilding the image. One developer authored 573 of the 607 commits. Activity dropped to 5 commits in July 2026 and climbed back to 76 in September; the latest landed on September 30.
