fluxbase

module
v0.0.1-rc.123 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 4, 2026 License: AGPL-3.0

README ΒΆ

Fluxbase

CI codecov

Beta Software: Fluxbase is currently in beta. While we're working hard to stabilize the API and features, you may encounter breaking changes between versions. We welcome feedback and contributions!

A lightweight, single-binary Backend-as-a-Service (BaaS) alternative to Supabase. Fluxbase provides essential backend services including auto-generated REST APIs, authentication, realtime subscriptions, file storage, and edge functions - all in a single Go binary with PostgreSQL as the only dependency.

Features

Core Services
  • PostgREST-compatible REST API: Auto-generates CRUD endpoints from your PostgreSQL schema
  • Authentication: Email/password, magic links, JWT tokens with session management
  • Realtime Subscriptions: WebSocket-based live data updates using PostgreSQL LISTEN/NOTIFY
  • Storage: File upload/download with access policies (local filesystem or S3)
  • Edge Functions: JavaScript/TypeScript function execution with Deno runtime
  • Background Jobs: Long-running tasks with progress tracking, retry logic, and real-time updates
  • Schema Introspection: Automatic API generation from database tables
Key Highlights
  • Single binary deployment (~80MB)
  • PostgreSQL as the only external dependency
  • Automatic REST endpoint generation
  • Row Level Security (RLS) support
  • TypeScript SDK

Quick Start

πŸ“– See GETTING_STARTED.md for complete setup instructions

Try it Now: Docker Compose (2 minutes)

Get Fluxbase running instantly with Docker:

# Clone the repository
git clone https://github.com/fluxbase-eu/fluxbase.git
cd fluxbase/deploy

# Start all services (PostgreSQL + Fluxbase + MinIO)
docker compose up -d

# Check health
curl http://localhost:8080/health

# Access admin dashboard
open http://localhost:8080

That's it! Fluxbase is now running at http://localhost:8080

Default credentials:

  • Database: postgres:postgres

Comparison with Supabase

Feature Fluxbase Supabase
Deployment Single binary Multiple services
Dependencies PostgreSQL only PostgreSQL + multiple services
Size ~80MB 2+ GB
REST API βœ… PostgREST-compatible βœ… PostgREST
Authentication βœ… Built-in βœ… GoTrue
Chatbots βœ… Built-in ❌
Realtime βœ… Built-in βœ… Realtime
Storage βœ… Built-in βœ… Storage API
Edge Functions βœ… Deno βœ… Deno
Vector/AI βœ… βœ…
Admin UI βœ… Built-in βœ…

Documentation

Getting Started
Production
GitHub Setup
Monitoring
Additional Resources
  • docs/ - Full Docusaurus documentation (run make docs to serve locally)
  • .docs/archive/ - Historical project tracking documents

Support

For issues, questions, and discussions:

Directories ΒΆ

Path Synopsis
cli
annotations
Package annotations provides parsing of @fluxbase: annotations from code comments.
Package annotations provides parsing of @fluxbase: annotations from code comments.
bundler
Package bundler provides client-side bundling for edge functions and jobs.
Package bundler provides client-side bundling for edge functions and jobs.
client
Package client provides the HTTP client for the Fluxbase API.
Package client provides the HTTP client for the Fluxbase API.
cmd
Package cmd provides the Cobra commands for the Fluxbase CLI.
Package cmd provides the Cobra commands for the Fluxbase CLI.
config
Package config provides configuration management for the Fluxbase CLI.
Package config provides configuration management for the Fluxbase CLI.
output
Package output provides output formatting for the Fluxbase CLI.
Package output provides output formatting for the Fluxbase CLI.
util
Package util provides utility functions for the Fluxbase CLI.
Package util provides utility functions for the Fluxbase CLI.
cmd
fluxbase command
internal
ai
api
branching
Package branching provides database branching for isolated development/testing environments.
Package branching provides database branching for isolated development/testing environments.
mcp
pubsub
Package pubsub provides pub/sub interfaces for cross-instance communication.
Package pubsub provides pub/sub interfaces for cross-instance communication.
query
Package query provides shared query-related types used by both the API and MCP packages.
Package query provides shared query-related types used by both the API and MCP packages.
ratelimit
Package ratelimit provides pluggable rate limiting backends for distributed deployments.
Package ratelimit provides pluggable rate limiting backends for distributed deployments.
rpc
scaling
Package scaling provides utilities for horizontal scaling of Fluxbase instances.
Package scaling provides utilities for horizontal scaling of Fluxbase instances.
testutil
Package testutil provides shared test utilities and mocks for unit testing.
Package testutil provides shared test utilities and mocks for unit testing.
Package test provides testing utilities and helpers for Fluxbase e2e tests.
Package test provides testing utilities and helpers for Fluxbase e2e tests.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL