Database, Auth, and Storage for Modern Apps

Open-source Postgres backend with built-in auth, storage, and auto-generated APIs. Self-host it or let us run it for you.

Linabase dashboard showing the database editor with SQL query results, table browser, and sidebar navigation

Everything you need to ship

A complete backend stack. No glue code, no third-party services, no vendor lock-in.

Postgres + Row-Level Security

Secure your data at the row level with visual policies you can test before deploying. Scale horizontally with Citus when you need to.

Authentication

Add user auth in minutes. Email/password, OAuth, magic links, and a full admin panel, all out of the box.

Object Storage

Upload, serve, and manage files with any S3-compatible backend. Signed URLs, access policies, and automatic scaling built in.

Typed REST API + OpenAPI

Your schema becomes a REST API instantly with auto-generated TypeScript types and OpenAPI spec. Filtering, joins, aggregates, and RPC included.

Database Branching

Create isolated database copies for development. They auto-sleep when idle and wake instantly when you need them.

SDK + ORM Support

Type-safe JavaScript SDK plus direct Postgres access for Drizzle, Prisma, and Knex. Use whatever fits your stack.

Familiar API, zero learning curve

The Linabase SDK follows the same patterns you already know. Query your database, manage auth, and handle file uploads with a clean, type-safe API.

Full TypeScript support with type-safe queries
Migrate from Supabase with zero rewrites
Auth, storage, and database in one import
Signed URLs and presigned uploads built in
Drops into React, Next.js, Node.js, or any framework
Install
npm install @linabase/js
Database queries
const { data } = await lb
  .from("posts")
  .select("*, author:profiles(name)")
  .eq("published", true)
  .order("created_at", { ascending: false })
  .limit(10);

// Insert a row
await lb.from("posts")
  .insert({ title: "Hello", body: "World" });

// Update with filter
await lb.from("posts")
  .update({ title: "Updated" })
  .eq("id", 1);
Auth + Storage
// Sign up a user
const { data } = await lb.auth.signUp({
  email: "user@example.com",
  password: "securepassword",
});

// Upload a file
await lb.storage
  .from("avatars")
  .upload("profile.png", file);

// Get a signed URL
const { data: url } = await lb.storage
  .from("documents")
  .createSignedUrl("report.pdf", 3600);

Why Linabase

Supabase showed that Postgres can be a backend. Linabase makes it portable, efficient, and self-hostable.

100 projects, one server

Schema-per-project architecture means 100 projects share one Postgres instance. Supabase spins up a separate database per project.

Runs on a $10/month VPS

Docker Compose on a single machine. No Kubernetes, no managed infrastructure bills. Same stack in dev and production.

RLS you can actually test

Visual policy builder, integrated test runner, and pre-deploy diffs. Know your policies work before they hit production.

No lock-in, ever

One-click project export with pg_dump. Standard Postgres, standard S3, standard JWTs. Move anywhere, any time.

FeatureLinabaseSupabase
Schema-per-project (shared Postgres)
Free
100 projects on one server
Free
RLS test runner + pre-deploy diffs
Free
One-click project export
Free
Self-hostable
Free
Free
Row-level security
Free
Free
Database branching
Free
Paid
Auto-generated REST API
Free
Free
S3-compatible storage
Free
Free
Auto-generated TypeScript types
Free
Free
Direct Postgres access (ORMs)
Free
Free
JavaScript SDK
Free
Free
Realtime subscriptions
Webhooks
Free
Edge functions
Free

Choose Supabase if you...

  • Need realtime subscriptions out of the box
  • Want edge functions for serverless logic
  • Prefer a fully managed service with no ops
  • Need a large ecosystem of integrations
  • Want a mature platform with years of production use

Choose Linabase if you...

  • Run many projects and want them on one server
  • Want a simpler, cheaper self-hosted stack
  • Care about testing RLS policies before deploying
  • Need one-click project export for portability
  • Want to avoid vendor lock-in with standard Postgres

Pricing

Pay for what you use. Every user gets $10/month in free credits. No tiers, no feature gates.

Self-Hosted
Free

Run on your own infrastructure. No limits, no phone-home.

Unlimited projects
All features included
Your hardware, your rules
Community support
Deploy Now
Recommended
Cloud
$0to start

$10/month free credit. Pay only when you exceed it.

$10/mo free credit (no card required)
All features included
Zero-downtime upgrades
Managed backups and updates
Start Building

Usage metered by database storage, file storage, and bandwidth. No per-request charges. See full pricing details

Ready to build?

Get a full Postgres backend with auth and storage in under a minute. No credit card required.