
Supabase is an open source Firebase alternative. Start your project with a Postgres database, Authentication, instant APIs, Edge Functions, Realtime subscriptions, and Storage.
backed by
Your browser can't play this video. Learn more
Build faster and focus on your products
Database Every project is a full Postgres database, the world's most trusted relational database.Learn more about /databaseLearn moreAuthentication Add user sign ups and logins, securing your data with Row Level Security.Storage Store, organize, and serve large files. Any media, including videos and images.Learn more about /storageLearn more
Join the community
Supported by a network of early advocates, contributors, and champions.
What can you build with supabase?
There are many example apps and starter projects to get going
Svelte kanban board
A Trello clone using Supabase as the storage system.
joshnuss
Next.js Realtime chat app
Next.js Slack clone app using Supabase realtime subscriptions
supabase
Next.js Subscription and Auth
The all-in-one starter kit for high-performance SaaS applications.
Vercel
Expo Starter
Template bottom tabs with auth flow (Typescript)
codingki
NestJS example
NestJS example using Supabase Auth
hiro1107
Example app of real-time chat using supabase realtime api
shwosner
Instant APIs that do the hard work for you
We introspect your database to provide APIs instantly. Stop building repetitive CRUD endpoints and focus on your product.
TypeScript Support Type definitions built directly from your database schemaExplore more about /docs/client/generating-typesExplore moreInstall from CDN Use Supabase in the browser without a build processExplore more about /docs/client/initializingExplore moreLocal emulator Develop locally and push to production when you're readyExplore more about /docs/guides/self-hostingExplore moreSupabase CLI Manage Supabase projects from your local machineExplore more about https://github.com/supabase/cliExplore more
import { createClient } from '@supabase/supabase-js'
// Initialize const supabaseUrl = 'https://chat-room.supabase.co'const supabaseKey = 'public-anon-key'const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new userconst { user, error } = await supabase.auth.signUpWithPassword({
email: 'example@email.com',
password: 'example-password',
})
import { createClient } from '@supabase/supabase-js'
// Initialize const supabaseUrl = 'https://chat-room.supabase.co'const supabaseKey = 'public-anon-key'const supabase = createClient(supabaseUrl, supabaseKey)
// Get notified of all new chat messagesconst realtime = supabase
.from('messages')
.on('INSERT', message => {
console.log('New message!', message)
})
.subscribe()
import '@supabase/supabase-js'
// Initialize const supabaseUrl = 'https://chat-room.supabase.co'const supabaseKey = 'public-anon-key'const supabase = createClient(supabaseUrl, supabaseKey)
// Get public rooms and their messagesconst publicRooms = await supabase
.from('rooms')
.select(`
name,
messages ( text )
`)
.eq('public', true)
import { createClient } from '@supabase/supabase-js'
// Initialize const supabaseUrl = 'https://chat-room.supabase.co'const supabaseKey = 'public-anon-key'const supabase = createClient(supabaseUrl, supabaseKey)
// Create a new chat roomconst newRoom = await supabase
.from('rooms')
.insert({ name: 'Supabase Fan Club', public: true })
import { createClient } from '@supabase/supabase-js'
// Initialize const supabaseUrl = 'https://chat-room.supabase.co'const supabaseKey = 'public-anon-key'const supabase = createClient(supabaseUrl, supabaseKey)
// Update multiple usersconst updatedUsers = await supabase
.from('users')
.eq('account_type', 'paid')
.update({ highlight_color: 'gold' })
Build your app without leaving the dashboard
Your browser can't play this video. Learn more
Your browser can't play this video. Learn more
Your browser can't play this video. Learn more
Manage your data with the familiarity of a spreadsheet
You don’t have to be a database expert to use Supabase. Our table editor makes Postgres easy to use, even for non-techies. You can do everything right in our dashboard.
In-built SQL editor for when you need greater control
Write, save, and execute SQL queries directly on our dashboard, with templates to save you time. Run common queries and even build applications using our growing list of templates.
User management as straight-forward as it can be
Easily manage your users with Supabase Auth, with email logins, magic links, and third-party logins. Create complex access policies with SQL rules to fit your unique business needs.