fluxbase

module
v0.0.0-...-ef425cb Latest Latest
Warning

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

Go to latest
Published: May 1, 2026 License: AGPL-3.0

README

Fluxbase

CI

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!

Run make test-full to validate all critical flows.

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
  • GraphQL API: Full GraphQL support with configurable depth/complexity limits
  • Authentication: Email/password, magic links, OAuth2 (Google, GitHub, Microsoft, etc.), OIDC, SAML SSO, MFA/TOTP
  • Realtime Subscriptions: WebSocket-based live data updates using PostgreSQL LISTEN/NOTIFY
  • Storage: File upload/download with access policies (local filesystem or S3), image transformations
  • Edge Functions: JavaScript/TypeScript function execution with Deno runtime
  • Background Jobs: Long-running tasks with progress tracking, retry logic, cron scheduling
  • RPC/Procedures: SQL-based serverless procedures with scheduling and RBAC
  • Webhooks: Event-driven webhook delivery for database changes with retries and HMAC signing
  • Vector Search: pgvector-powered semantic search with automatic embeddings
  • MCP Server: Model Context Protocol for AI assistant integration
Key Highlights
  • Single binary or container deployment
  • PostgreSQL as the only external dependency
  • Automatic REST endpoint generation
  • Row Level Security (RLS) support
  • TypeScript SDK
  • Database branching for dev/test environments
  • Built-in observability (Prometheus metrics, OpenTelemetry tracing)
  • Horizontal scaling with leader election

Quick Start

For more information about Fluxbase, look into the docs.

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.
logutil
Package logutil provides logging utilities for sanitization
Package logutil provides logging utilities for sanitization
mcp
mcp/custom
Package custom provides support for user-defined MCP tools and resources.
Package custom provides support for user-defined MCP tools and resources.
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.
testcontext
Package testcontext provides thread-safe storage for shared test context.
Package testcontext provides thread-safe storage for shared test context.
testutil
Package testutil provides shared test helper functions for unit testing.
Package testutil provides shared test helper functions for unit testing.
test
cleanup/cmd command
Package main provides a standalone tool to clean up test resources.
Package main provides a standalone tool to clean up test resources.

Jump to

Keyboard shortcuts

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