mybasev1.0.21

What is mybase

Self-hosted backend: one Postgres database + S3 bucket per project, plus optional cron, queues, cache, rate limits, analytics.

Examples use https://mybase.example.com. Replace it with your own instance's URL.

mybase is a self-hosted alternative to Supabase-style backends. It runs with Docker on anything from a Raspberry Pi to a server, and gives each project its own slice of a few shared services:

ServiceWhat a project getsTurned on
DatabaseA Postgres database + login role (pgvector, PostGIS, hypopg, pg_partman available)Always
StorageAn S3 bucket + access key (Garage). Objects under public/ are readable by anyoneAlways
CronSigned HTTP calls to your app on a schedule, plus one-off tasksPer project
QueuesSQS-style standard and FIFO queues with dead-letter queuesPer project
CacheA Redis-compatible keyspace (<project>:*) over TCP or HTTPPer project
Rate limitsShared limits (sliding window, fixed window, token bucket)Per project
AnalyticsCookieless page views, custom events, and errorsPer project
Vector searchIndexes of documents, searched by vector, keywords, or both (pgvector + full-text)Per project
UsersSign-in for your app's users with Better Auth: its tables, sessions, and a users pagePer project
CaptchaSelf-hosted proof-of-work bot checks for formsPer project
RealtimeWebSocket channels: live updates, chat, presence, for apps on serverless hostsPer project
SandboxesIsolated Node.js + Chromium workspaces for untrusted code, browser automation, PDFs/screenshots, and agent toolsOpt-in worker, per project

Instance-wide: a security advisor, audit log, and alerts.

This instance: https://mybase.example.com

How you use it

  • Dashboard at https://mybase.example.com: projects, tables, SQL, files, jobs, queues, keys, and sandbox runs.
  • CLI (mybase): everything the dashboard does, scriptable, with --json. See Quickstart.
  • SDK (@mybase-dev/sdk): what your app imports for cron, queues, cache, rate limits, and analytics.
  • Plain clients: any Postgres driver, any S3 client, any Redis client.
  • Agents: MCP server at https://mybase.example.com/mcp, docs at https://mybase.example.com/llms.txt. See Agents.

Agent notes

  • Start with mybase context <project> (or MCP get_project_context) instead of guessing what a project has.
  • Credentials (database password, S3 secret key, cache password, API keys) are shown once and never stored, unless the user linked them into Secrets. If lost, rotate or recreate; don't search for them.
  • Project names: 3–40 lowercase letters, digits, or _, starting with a letter. The bucket name is the project name with _ → -.

On this page