The open source Firebase alternative.
We’re making a Special Announcement on April 15th with a few more surprises throughout the week. Claim your ticket today so you don’t miss out and enter for a chance to win a set of AirPods Max.
We’ve increased the Supavisor client connection limits, the number of concurrent clients that can connect to your project’s pooler, for projects on Small, Medium, Large, and XL compute instances while pricing remains unchanged.
Introducing a conversational AI assistant in the SQL Editor to help you write and iterate on your queries. This is currently under a feature preview and can be enabled with instructions here.
We’re simplifying Supavisor connection pooler ports and modes so that port 6543 is only transaction mode and port 5432 continues to be only session mode. If you have pool mode set to session we recommend you switch to pooler port 5432 and set the mode to transaction.
You may have noticed improved performance from your database over the last couple of weeks. We made some architectural changes to free up resources for your Postgres instance by removing Storage, Realtime, and Pgbouncer from your instance and each are replaced with an equivalent multi-tenant solution, including our new Supavisor connection pooler.
In this post we'll be creating a Python project to implement semantic image search featuring Amazon Bedrock and Amazon Titan’s multimodal model to embed images and Supabase Vecs client library for managing embeddings in your Supabase database with the pgvector extension.
Learn about how OpenAI’s newest text embeddings models, text-embedding-3-small and text-embedding-3-large, are able to truncate their dimensions with only a slight loss in accuracy.
Connect to Supabase from any framework or ORM with our new “Connect” panel in Studio. This displays simple setup snippets that you can copy and paste into your application. We’ve started with a selection of popular frameworks and ORMs and you can request more by feature request or pull request.
PostgREST v12 has been released, and with it, comes the release of the highly requested aggregate functions, avg()
, count()
, sum()
, min()
, and max()
, that is used to summarize data by performing calculations across groups of rows.
We’ve created an official Supabase Provider for Terraform to version-control your project settings in Git. You can use this provider in CI/CD pipelines to automatically provision projects and branches and keep configuration in code.
We've shifted the management of foreign keys into the Table Editor’s side panel so you can easily see all foreign keys pertaining to a table as well as referencing columns to composite foreign keys.
Learn about how we built a movie listing app that recommends another movie based on the movie that a user is currently viewing built with Supabase, Flutter, and OpenAI.
Performance testing evaluates a system's compliance with its performance requirements. It reveals your app’s ability to handle user load, unexpected spikes, or recover from stressful workloads. In this blog post you will learn about how we automated our performance testing.
Number 10! A week of launches, and this time we are shipping multiple things every day. Make sure to get your ticket for the chance to snag some beautiful LWX swag.
With Resumable Uploads, you can continue uploading a file from where you left off, even if you lose internet connectivity or accidentally close your browser tab while uploading. We have now made Resumable Uploads available for all projects on the Pro Plan. You can now upload files as large as 50GB.
Logging in the CLI is as simple as typing supabase login
. Using the browser instead of copying the API keys from the dashboard manually. Small tweak to the flow, huge DX improvement!
We needed a way for the Elixir servers to "discover" each other. Elixir has an excellent library for this called "libcluster". We use Postgres as the common substrate between all the nodes in our Realtime service and created a Postgres strategy for libcluster.
We've released @supabase/ssr
, which makes it super easy to use cookies for storing user sessions. We’ve updated npx create-next-app -e with-supabase
to use @supabase/ssr
and made it compatible with Next.js 14.
pgvector is becoming the vector store of choice for developers. We’ve put it to the test against Pinecone and found that it performs better on cost and query throughput, without sacrificing accuracy.
You can now manage Storage buckets with the Supabase CLI:
supabase storage ls -r
: show all buckets and objectssupabase cp -r readme.md ss:///bucket
: upload local files to bucketsupabase cp -r ss:///bucket
: download objects from bucketsupabase rm -r ss:///bucket
: delete files from bucketManaging Storage buckets with CLI works best if there are less than 100k objects in your bucket and each of them is smaller than 20MB. Reference docs are here.
Supabase Studio is improved many times per day, here is some of what's new:
Secure your Supabase account with Multi-Factor Authentication. You can now add a time-based one-time password (TOTP), managed by apps such as 1Password, Authy, Google Authenticator or Apple's Keychain.
We've released @supabase/ssr
, which makes it super easy to use cookies for storing user sessions. We’ve updated npx create-next-app -e with-supabase
to use @supabase/ssr
and made it compatible with Next.js 14.
pgvector is becoming the vector store of choice for developers. We’ve put it to the test against Pinecone and found that it performs better on cost and query throughput, without sacrificing accuracy.
You can now manage Storage buckets with the Supabase CLI:
supabase storage ls -r
: show all buckets and objectssupabase cp -r readme.md ss:///bucket
: upload local files to bucketsupabase cp -r ss:///bucket
: download objects from bucketsupabase rm -r ss:///bucket
: delete files from bucketManaging Storage buckets with CLI works best if there are less than 100k objects in your bucket and each of them is smaller than 20MB. Reference docs are here.
Supabase Studio is improved many times per day, here is some of what's new:
Secure your Supabase account with Multi-Factor Authentication. You can now add a time-based one-time password (TOTP), managed by apps such as 1Password, Authy, Google Authenticator or Apple's Keychain.
You can now broadcast Realtime messages to all your connected users by simply using a REST API call, removing the need to connect to a WebSocket. This will be especially useful with our Edge Functions!
Less than two months ago, we announced Supavisor, our own Postgres connection pooler that handles millions of connections. It’s now available in all new projects. You can continue using pgbouncer alongside Supavisor, however, it will be deprecated effective January 15th, 2024.
With IPv4 addresses becoming increasingly scarce and cloud providers starting to charge for it, we won’t be assigning IPv4 addresses to Supabase projects from January 15th, 2024. [db.projectref.supabase.co](http://db.projectref.supabase.co)
will start resolving to a IPv6 address instead. If you plan on connecting to your database directly, you must ensure that your network can communicate over IPv6. Supavisor will continue to return IPv4 addresses, so you can update your applications to connect to Supavisor instead.
Introducing the latest addition to our Wrappers lineup: Airtable! You can use it to query data from your Airtable bases and tables directly from Postgres:
select * from my_airtable_table;
# data from Airtable
Read the Airtable Wrapper docs Learn about Wrappers
Supabase Studio is under constant improvement, here is what’s new:
Added HNSW support inside Vecs, our Python library for pgvector
. Vecs automatically creates schemas and collections inside your database, making it one of the easiest ways to get started with pgvector
.
supabase-js
in these environments to fall back to use this default storage mechanism now. Upgrade to supabase-js v2.36.0 or gotrue-js v2.54.0 for the latest changes. [PR]Deno.serve(req => new Response("ok"))
. No http
standard library dependency needed. (Thanks eifr for contributing with updated CLI templates. [PR]pgvector v0.5.0 adds Hierarchical Navigable Small World (HNSW), a new type of index that ensures lightning-fast vector searches, especially in high-dimensional spaces and embeddings.
We are all about open source collaboration, and Hugging Face is one of the open source communities we admire most. That’s why we've added Hugging Face support in our Python Vector Client and Edge Functions (Javascript).
The CLI received some serious upgrades including observability tools, streamlined backups, and enhanced migrations. But that's not all – the big game-changer is the introduction of Supabase branching which we’re rolling out to selected customers.
Supabase Studio brings some huge new features, including AI SQL editor, Schema diagrams, Wrappers UI, and a lot more!
With the release of OAuth2 applications, we've made it easier than ever for our partners to extend the Supabase platform with useful tooling.
The New Supabase x Vercel integration streamlines the process of creating, deploying, and maintaining web applications with several enhancements. Plus, it fully supports the App Router in Next.js ▲
Supavisor is a scalable, cloud-native Postgres connection pooler written in Elixir. It has been developed with multi-tenancy in mind, handling millions of connections without significant overhead or latency. We’re rolling it out to every database on our platform.
Launch Week is an event for our community, so it’s a good time to look back at what happened in the last months (spoiler: a lot).
HIPAA and SOC2 Type 2
Supabase is officially SOC2 Type 2 and HIPAA compliant! In this write-up, we offer insights into what you can expect if you’re planning to go through the same process.
Shipping doesn’t stop here at Supabase! We are back in full shipping mode and already thinking about the next LW. These are some of the things we’ve been working on:
Supabase Auth now has full native support for Sign in with Apple and Google, which means it can now be used with one-tap sign in methods like Sign in with Apple JS, Sign in with Google for Web, or even in Chrome extensions.
It’s been a busy month for the Supabase CLI. We have added a tonne of new features:
usage
flag for monitoring key Postgres statistics.We have made huge improvements to the billing tooling inside Supabase Studio, including:
New subscription page | New usage page
Added the popular social platform Kakao as new social provider. Allow your users to effortlessly sign in using their Kakao accounts and make authentication a breeze while expanding your app's reach to a wider audience.
Storing vector embeddings in Postgres with 'pgvector' is becoming increasingly popular for AI applications, so we're building out a collection of tools to store, index, and query embeddings at scale.
Vault is a Postgres extension and accompanying Supabase UI that makes it safe and easy to store encrypted secrets and other data in your database.
We have updated the Next.js Auth Helpers package to make it available across the client and server of the App Router. They also now implement server-side auth by default with PKCE - meaning the entire auth flow is now possible server-side.
As we plan the next few months of Dashboard development, we're reaching out to users to see all the different ways people use the Dashboard in their work.
Last month, we opened up a public RFC for the Dashboard SQL Editor. It's been amazing to see how people use this tool to build their projects. If you're a heavy user of the SQL Editor, we'd love to get your feedback.
We also started doing user interviews to understand how users use the Dashboard. Our goal is to build the best possible Dashboard for all of our users, and you can help! Reach out to Terry you would like to share your experience.
[Auth] You can now use Turnstile as a Captcha provider. Doc
[Auth] How to send a password reauthentication nonce. Doc
[Dashboard] Supabase Wrappers UI that supports pulling data in from Firebase, Stripe, S3, and Clickhouse. Create a Wrapper
[Edge Functions] Support for deploying all Edge Functions via CLI. Doc
[Edge Functions] Custom domains and vanity domains support for Edge Functions. PR
[Storage] Image Transformation is now out of Beta. Doc
[Postgres Extensions] pg_cron 1.5.2 (new projects only) now supports sub-minute schedules. PR
- Deno Fresh Starter: ChatGPT-style doc search. Template
Vector Similarity Search in Bubble using Supabase Vector. Integration
Our friends from 1Password announced Passage and wrote an integration guide with Supabase. Doc
Supabase Vecs: a vector client for Postgres. Blog post
ChatGPT plugins now support Postgres & Supabase. Announcement
Building ChatGPT Plugins with Supabase Edge Runtime. Template
Logflare is the hub of analytics streams for Supabase. We are open sourcing it so that you can self-host your own Logging infrastructure.
You can now self-host Edge Functions and run them in local development using our new Edge Runtime. We published a guide showing how to self-host Edge Functions with Fly and what more is coming ⚡
Supabase Storage received many of the most requested features from our users: Resumable Uploads, Quality Filters, Next.js support, and WebP support.
On day 4, we introduced SSO with SAML 2.0, PKCE, and Sign in with Apple for iOS. It felt like acronym day, but it was actually Auth day!
Supabase Studio got a major upgrade that goes from redesigns to improved developer experience, and new tools. We have the features people have been asking for and new capabilities that will change the way you work.
database.dev fills the same role for PostgreSQL as npm
for JavaScript or pip
for Python, it enables publishing libraries and applications for repeatable deployment. Our goal is to create an open ecosystem for packaging and discovering SQL.