From d8adca187a35966273d0d10c4a33dfd5da9d2db7 Mon Sep 17 00:00:00 2001
From: Copple <10214025+kiwicopple@users.noreply.github.com>
Date: Tue, 28 Jun 2022 17:35:02 -0500
Subject: [PATCH] Adds a new blog post for partial dumps
---
...partial-postgresql-data-dumps-with-rls.mdx | 178 +++++++++++++++
apps/www/public/rss.xml | 206 +++++++++---------
2 files changed, 285 insertions(+), 99 deletions(-)
create mode 100644 apps/www/_blog/2022-06-28-partial-postgresql-data-dumps-with-rls.mdx
diff --git a/apps/www/_blog/2022-06-28-partial-postgresql-data-dumps-with-rls.mdx b/apps/www/_blog/2022-06-28-partial-postgresql-data-dumps-with-rls.mdx
new file mode 100644
index 00000000000..cb5b3f7b262
--- /dev/null
+++ b/apps/www/_blog/2022-06-28-partial-postgresql-data-dumps-with-rls.mdx
@@ -0,0 +1,178 @@
+---
+title: Partial data dumps using Postgres Row Level Security
+description: Using RLS to dump only a subset of your database.
+author: paul_copplestone
+image: python-1/python.jpg
+thumb: python-1/python.jpg
+tags:
+ - postgresql
+ - data
+date: '2022-06-28'
+toc_depth: 3
+---
+
+When working with databases, it's common to create a `seed.sql` file which contains a subset of production data for testing.
+
+During early development, it's fine to dump the entire database and restore it on your development machine.
+However, once you have production users this becomes a security issue - do you really want to dump your users' data onto your local machines?
+
+There are many ways to solve this, but recently I stumbled upon a neat way to do it using PostgreSQL's Row Level Security (RLS).
+
+The concept is simple:
+
+1. Create a database user with restricted access.
+2. Define some RLS rules for that user, limiting what data they can access.
+3. Run `pg_dump` as that user.
+
+For this scenario, let's imagine that you have a table called `profiles` in your database:
+
+```sql hideCopy
+
+create table profiles (
+ id serial primary key,
+ name text,
+ email text
+);
+```
+
+| `id` | `name` | `email` |
+| ---- | ------------ | ------------------------ |
+| `1` | `Employee 1` | `employee1@supabase.com` |
+| `2` | `Employee 2` | `employee2@supabase.com` |
+| `3` | `Employee 3` | `employee3@supabase.com` |
+| `4` | `Jenny` | `jenny@example.com` |
+| `5` | `Joe` | `joe@example.com` |
+
+In this case, if we ran a `pg_dump` we will save Jenny and Joe's personal data. We don't want that, so let's create a Postgres user called `exporter`, who can only dump the data we want.
+
+### Step 1: Prepare a user
+
+Create a user to connect to the database. We'll call them `exporter` and grant them access to the public schema:
+
+```sql hideCopy
+-- Create a new user with login privileges
+create user exporter
+ with password 'exporter_secure_password';
+
+-- Allow this user to select the rows we need
+grant usage on schema public to exporter;
+grant select on profiles to exporter;
+```
+
+### Step 2: Create data access rules
+
+Let's turn on RLS for this table and limit the data which `exporter` can access:
+
+```sql hideCopy
+-- Turn on Row Level Security
+alter table profiles
+ enable row level security;
+
+-- Only dump data for internal team members 1, 2, 3
+create policy "Data dump rule" on profiles
+ for select
+ to exporter
+ using (
+ id in (1, 2, 3)
+ );
+```
+
+### Step 3: Export the data
+
+Now we can use `pg_dump` to get only the data that we need.
+
+Run the dump with the `exporter` user that we created above and use the `--enable-row-security` flag to ensure that the dump succeeds.
+
+```bash hideCopy
+
+# Dump all the data into a "seed.sql" file
+# which we can use to restore our local databases.
+pg_dump \
+-h db.host.supabase.co \
+-U exporter \
+-d postgres \
+-n public \
+--data-only \
+--enable-row-security \
+--table=profiles \
+> seed.sql
+```
+
+And that's it. You can follow this same pattern for any tables that you want to dump.
+
+## Data access patterns
+
+RLS is a bit like appending a “where” clause to a `select`, so you can create all sorts of data access patterns. Let's see a few more which are useful for extracting seed data.
+
+### Using email rules
+
+Instead of using hardcoded numbers in our RLS policies, we could use email extensions to determine the users who we want to export:
+
+```sql hideCopy
+-- Only dump data for supabase employees
+create policy "Data dump rule" on profiles
+ for select
+ to exporter
+ using (
+ substring(email from '@(.*)$') = 'supabase.com'
+ );
+
+```
+
+### Only recent data
+
+If we have a table with a lot of data, like an `analytics` table, we might only care about the last 2 months of data.
+
+```sql hideCopy
+-- A fake analytics table where we store actions a user takes
+create table analytics (
+ id serial primary key,
+ ts timestamptz default now(),
+ profile_id references profiles,
+ event text
+);
+alter table profiles
+ enable row level security;
+
+-- Here is an "age" rule so that we only dump the most recent analytics
+create policy "Data dump rule" on logs
+ for select
+ to exporter
+ using (
+ profile_id in (1, 2, 3) and
+ ts > now() - interval '2 MONTHS' -- here's the magic
+ );
+```
+
+### Using flags
+
+If you don't mind having some additional columns in you database, you can add flags to each row to determine whether it's safe to export.
+
+```sql hideCopy
+create table profiles (
+ id serial primary key,
+ name text,
+ email text,
+ is_exportable boolean -- make this "TRUE" if you want to allow access
+);
+alter table profiles
+ enable row level security;
+
+-- Only dump data for internal team members 1, 2, 3
+create policy "Data dump rule" on profiles
+ for select
+ to exporter
+ using ( is_exportable = true );
+
+```
+
+## Conclusion
+
+Using `seed` data isn't the only way to run development environments. It's also possible to run fully-masked copies of your database using tools like
+[Snaplet](https://docs.snaplet.dev/tutorials/supabase-clone-environments).
+
+We're also bullish on copy-on-write strategies which allow users to "fork" a database at a point in time,
+a strategy used by [Database Lab Engine](https://postgres.ai/docs/database-lab).
+DLE uses the ZFS file system to achieve this, but it's within reach of the Postgres core once alternative storage strategies become easier to implement.
+
+If you want to try out the steps we described in this article, fire up a full PostgreSQL database: [database.new](https://database.new)
diff --git a/apps/www/public/rss.xml b/apps/www/public/rss.xml
index e0d100e0b62..de3ce4efc85 100644
--- a/apps/www/public/rss.xml
+++ b/apps/www/public/rss.xml
@@ -5,15 +5,23 @@
https://supabase.com
Latest news from Supabaseen
- Wed, 22 Jun 2022 00:00:00 GMT
+ Mon, 27 Jun 2022 05:00:00 GMT
+
+ https://supabase.com/blog/2022/06/28/partial-postgresql-data-dumps-with-rls
+ Partial data dumps using Postgres Row Level Security
+ https://supabase.com/blog/2022/06/28/partial-postgresql-data-dumps-with-rls
+ An example of how to load data into Supabase using supabase-py
+ Mon, 27 Jun 2022 05:00:00 GMT
+
+
https://supabase.com/blog/2022/06/15/loading-data-supabase-pythonPython data loading with Supabase
https://supabase.com/blog/2022/06/15/loading-data-supabase-python
An example of how to load data into Supabase using supabase-py
- Fri, 17 Jun 2022 00:00:00 GMT
+ Thu, 16 Jun 2022 05:00:00 GMT
@@ -21,7 +29,7 @@
Supabase Beta May 2022
https://supabase.com/blog/2022/06/07/beta-update-may-2022
Product and community updates including wildcard auth redirects, edge functions with webhooks, and Prometheus endpoints for everybody.
- Wed, 01 Jun 2022 00:00:00 GMT
+ Tue, 31 May 2022 05:00:00 GMT
@@ -29,7 +37,7 @@
How Mike Lyndon is using Supabase to accelerate development of AllPullTogether
https://supabase.com/blog/2022/05/26/how-supabase-accelerates-development-of-all-pull-together
Mike Lyndon is learning web development as he builds AllPullTogether, and Supabase is helping him accelerate what he can accomplish.
- Thu, 26 May 2022 00:00:00 GMT
+ Wed, 25 May 2022 05:00:00 GMT
@@ -37,7 +45,7 @@
Works With Supabase - announcing our Partner Gallery
https://supabase.com/blog/2022/04/20/partner-gallery-works-with-supabase
Introducing our Partner Gallery - open source and made with Supabase.
- Wed, 20 Apr 2022 00:00:00 GMT
+ Tue, 19 Apr 2022 05:00:00 GMT
@@ -45,7 +53,7 @@
Bring the Func Hackathon Winners 2022
https://supabase.com/blog/2022/04/18/bring-the-func-hackathon-winners
Celebrating many amazing OSS Hackathon projects using GraphQL and Edge Functions.
- Mon, 18 Apr 2022 00:00:00 GMT
+ Sun, 17 Apr 2022 05:00:00 GMT
@@ -53,7 +61,7 @@
Supabase Beta March 2022
https://supabase.com/blog/2022/04/15/beta-update-march-2022
Functions, GraphQL, and much more.
- Fri, 15 Apr 2022 00:00:00 GMT
+ Thu, 14 Apr 2022 05:00:00 GMT
@@ -61,7 +69,7 @@
Supabrew - Never Code Thirsty
https://supabase.com/blog/2022/04/01/supabrew
A light and refreshing non-alcoholic beer for devs.
- Fri, 01 Apr 2022 00:00:00 GMT
+ Fri, 01 Apr 2022 05:00:00 GMT
@@ -69,7 +77,7 @@
Supabase Realtime, with Multiplayer Features
https://supabase.com/blog/2022/04/01/supabase-realtime-with-multiplayer-features
Today we're announced Realtime, with multiplayer features. Realtime enables broadcast, presence, and listening to database changes delivered over WebSockets.
- Fri, 01 Apr 2022 00:00:00 GMT
+ Fri, 01 Apr 2022 05:00:00 GMT
@@ -77,7 +85,7 @@
Hackathon: Bring the Func(🕺)
https://supabase.com/blog/2022/04/01/hackathon-bring-the-func
Build open-source projects with our latest features, win limited edition swag and plant a tree!
- Fri, 01 Apr 2022 00:00:00 GMT
+ Fri, 01 Apr 2022 05:00:00 GMT
@@ -85,7 +93,7 @@
Edge Functions are now available in Supabase
https://supabase.com/blog/2022/03/31/supabase-edge-functions
Today we're launching Edge Functions. Edge Functions let you execute Typescript code close to your users, no matter where they're located.
- Thu, 31 Mar 2022 00:00:00 GMT
+ Wed, 30 Mar 2022 05:00:00 GMT
@@ -93,7 +101,7 @@
Introducing Supabase Enterprise
https://supabase.com/blog/2022/03/30/supabase-enterprise
Today we are releasing Supabase Enterprise, a suite of features to scale your project.
- Wed, 30 Mar 2022 00:00:00 GMT
+ Tue, 29 Mar 2022 05:00:00 GMT
@@ -101,7 +109,7 @@
GraphQL is now available in Supabase
https://supabase.com/blog/2022/03/29/graphql-now-available
GraphQL support is now in general availability on the Supabase platform via our open source PostgreSQL extension, pg_graphql (beta).
- Tue, 29 Mar 2022 00:00:00 GMT
+ Mon, 28 Mar 2022 05:00:00 GMT
@@ -109,7 +117,7 @@
Community Day
https://supabase.com/blog/2022/03/28/community-day
Kicking off Launch Week IV with contributors, partners, and friends.
- Mon, 28 Mar 2022 00:00:00 GMT
+ Sun, 27 Mar 2022 05:00:00 GMT
@@ -117,7 +125,7 @@
Supabase Launch Week IV
https://supabase.com/blog/2022/03/25/supabase-launch-week-four
Launch Week 4: One new feature every day for an entire week. Starting Monday 28th March.
- Fri, 25 Mar 2022 00:00:00 GMT
+ Thu, 24 Mar 2022 05:00:00 GMT
@@ -125,7 +133,7 @@
Should I Open Source my Company?
https://supabase.com/blog/2022/03/25/should-i-open-source-my-company
The unexpected upsides of building in public
- Fri, 25 Mar 2022 00:00:00 GMT
+ Thu, 24 Mar 2022 05:00:00 GMT
@@ -133,7 +141,7 @@
Postgres Auditing in 150 lines of SQL
https://supabase.com/blog/2022/03/08/audit
PostgreSQL has a robust set of features which we can leverage to create a generic auditing solution in 150 lines of SQL.
- Tue, 08 Mar 2022 00:00:00 GMT
+ Mon, 07 Mar 2022 06:00:00 GMT
@@ -141,7 +149,7 @@
Supabase Beta January 2022
https://supabase.com/blog/2022/02/22/supabase-beta-january-2022
New auth providers, SMS providers, and new videos.
- Tue, 22 Feb 2022 00:00:00 GMT
+ Mon, 21 Feb 2022 06:00:00 GMT
@@ -149,7 +157,7 @@
Supabase Beta December 2021
https://supabase.com/blog/2022/01/20/supabase-beta-december-2021
New crypto extension, Postgres videos, and a bunch of cool integrations.
- Thu, 20 Jan 2022 00:00:00 GMT
+ Wed, 19 Jan 2022 06:00:00 GMT
@@ -157,7 +165,7 @@
Golden Kitty Awards Ceremony Watch Party with Supabase
https://supabase.com/blog/2022/01/20/product-hunt-golden-kitty-awards-2021
Hang out with us while watching the Product Hunt Golden Kitty Awards Ceremony
- Thu, 20 Jan 2022 00:00:00 GMT
+ Wed, 19 Jan 2022 06:00:00 GMT
@@ -165,7 +173,7 @@
Holiday Hackdays Winners 2021
https://supabase.com/blog/2021/12/17/holiday-hackdays-winners-2021
Celebrating many amazing projects submitted to our Holiday Hackdays Hackathon.
- Fri, 17 Dec 2021 00:00:00 GMT
+ Thu, 16 Dec 2021 06:00:00 GMT
@@ -173,7 +181,7 @@
Supabase Beta November 2021: Launch Week Recap
https://supabase.com/blog/2021/12/15/beta-november-2021-launch-week-recap
We wrapped up November with Supabase's third Launch Week. Here's all the awesome stuff that got shipped ...
- Wed, 15 Dec 2021 00:00:00 GMT
+ Tue, 14 Dec 2021 06:00:00 GMT
@@ -181,7 +189,7 @@
Kicking off the Holiday Hackdays
https://supabase.com/blog/2021/12/03/supabase-holiday-hackdays-hackathon
Build cool stuff and celebrate open-source software with us during the Holiday Hackdays!
- Fri, 03 Dec 2021 00:00:00 GMT
+ Thu, 02 Dec 2021 06:00:00 GMT
@@ -189,7 +197,7 @@
pg_graphql: A GraphQL extension for PostgreSQL
https://supabase.com/blog/2021/12/03/pg-graphql
GraphQL support is in development for PostgreSQL + Supabase.
- Fri, 03 Dec 2021 00:00:00 GMT
+ Thu, 02 Dec 2021 06:00:00 GMT
@@ -197,7 +205,7 @@
Five more things
https://supabase.com/blog/2021/12/03/launch-week-three-friday-five-more-things
It's never just one more thing!
- Fri, 03 Dec 2021 00:00:00 GMT
+ Thu, 02 Dec 2021 06:00:00 GMT
@@ -205,7 +213,7 @@
Supabase acquires Logflare
https://supabase.com/blog/2021/12/02/supabase-acquires-logflare
Today, we're ecstatic to announce that Logflare is joining Supabase.
- Thu, 02 Dec 2021 00:00:00 GMT
+ Wed, 01 Dec 2021 06:00:00 GMT
@@ -213,7 +221,7 @@
Realtime Postgres RLS now available on Supabase
https://supabase.com/blog/2021/12/01/realtime-row-level-security-in-postgresql
Realtime database changes are now broadcast to authenticated users, respecting the same PostgreSQL policies that you use for Row Level Security.
- Wed, 01 Dec 2021 00:00:00 GMT
+ Tue, 30 Nov 2021 06:00:00 GMT
@@ -221,7 +229,7 @@
Supabase Studio
https://supabase.com/blog/2021/11/30/supabase-studio
The same Dashboard that you're using on our Platform is now available for local development and Self-Hosting.
- Tue, 30 Nov 2021 00:00:00 GMT
+ Mon, 29 Nov 2021 06:00:00 GMT
@@ -229,7 +237,7 @@
Community Day
https://supabase.com/blog/2021/11/29/community-day
Kicking off launch week by highlighting the communities around Supabase.
- Mon, 29 Nov 2021 00:00:00 GMT
+ Sun, 28 Nov 2021 06:00:00 GMT
@@ -237,7 +245,7 @@
New in PostgreSQL 14: What every developer should know
https://supabase.com/blog/2021/11/28/whats-new-in-postgres-14
A quick look at some new features and functionality in PostgreSQL 14.
- Sun, 28 Nov 2021 00:00:00 GMT
+ Sat, 27 Nov 2021 06:00:00 GMT
@@ -245,7 +253,7 @@
PostgREST 9
https://supabase.com/blog/2021/11/28/postgrest-9
New features and updates in PostgREST version 9.
- Sat, 27 Nov 2021 00:00:00 GMT
+ Fri, 26 Nov 2021 06:00:00 GMT
@@ -253,7 +261,7 @@
Supabase Launch Week III: Holiday Special
https://supabase.com/blog/2021/11/26/supabase-launch-week-the-trilogy
Tis the season to be shipping.
- Fri, 26 Nov 2021 00:00:00 GMT
+ Thu, 25 Nov 2021 06:00:00 GMT
@@ -261,7 +269,7 @@
How we launch at Supabase
https://supabase.com/blog/2021/11/26/supabase-how-we-launch
The history and methodology of Supabase Launch Week.
- Fri, 26 Nov 2021 00:00:00 GMT
+ Thu, 25 Nov 2021 06:00:00 GMT
@@ -269,7 +277,7 @@
Supabase Beta October 2021
https://supabase.com/blog/2021/11/05/supabase-beta-october-2021
Three new Auth providers, multi-schema support, and we're gearing up for another Launch Week.
- Sun, 07 Nov 2021 00:00:00 GMT
+ Sat, 06 Nov 2021 05:00:00 GMT
@@ -277,7 +285,7 @@
Supabase $30m Series A
https://supabase.com/blog/2021/10/28/supabase-series-a
Supabase just raised $30M, bringing our total funding to $36M.
- Thu, 28 Oct 2021 00:00:00 GMT
+ Wed, 27 Oct 2021 05:00:00 GMT
@@ -285,7 +293,7 @@
Replenysh uses Supabase to implement OTP in less than 24-hours
https://supabase.com/blog/2021/10/19/replenysh-time-to-value-in-less-than-24-hours
Learn how Replenysh uses Supabase to power the circular economy, redefining how brands interact with their customers and products.
- Tue, 19 Oct 2021 00:00:00 GMT
+ Mon, 18 Oct 2021 05:00:00 GMT
@@ -293,7 +301,7 @@
Hacktoberfest Hackathon Winners 2021
https://supabase.com/blog/2021/10/14/hacktoberfest-hackathon-winners-2021
Celebrating many amazing projects submitted to our Hacktoberfest Hackathon.
- Thu, 14 Oct 2021 00:00:00 GMT
+ Wed, 13 Oct 2021 05:00:00 GMT
@@ -301,7 +309,7 @@
Supabase Beta Sept 2021
https://supabase.com/blog/2021/10/04/supabase-beta-sept-2021
Hackathon, Aborting request, UI updates, and now Hiring.
- Mon, 04 Oct 2021 00:00:00 GMT
+ Sun, 03 Oct 2021 05:00:00 GMT
@@ -309,7 +317,7 @@
Supabase Hacktoberfest Hackathon 2021
https://supabase.com/blog/2021/09/28/supabase-hacktoberfest-hackathon-2021
We're running another Supabase Hackathon during Hacktoberfest!
- Tue, 28 Sep 2021 00:00:00 GMT
+ Mon, 27 Sep 2021 05:00:00 GMT
@@ -317,7 +325,7 @@
Supabase Beta August 2021
https://supabase.com/blog/2021/09/10/supabase-beta-august-2021
Fundraising, Realtime Security, custom SMS templates, and deployments in South Korea.
- Fri, 10 Sep 2021 00:00:00 GMT
+ Thu, 09 Sep 2021 05:00:00 GMT
@@ -325,7 +333,7 @@
Supabase Beta July 2021
https://supabase.com/blog/2021/08/12/supabase-beta-july-2021
Discord Logins, Vercel Integration, Full text search, and OAuth guides.
- Thu, 12 Aug 2021 00:00:00 GMT
+ Wed, 11 Aug 2021 05:00:00 GMT
@@ -333,7 +341,7 @@
Open Source Hackathon Winners
https://supabase.com/blog/2021/08/09/hackathon-winners
Let the medal ceremony begin for the best projects submitted during the Supabase Hackathon.
- Mon, 09 Aug 2021 00:00:00 GMT
+ Sun, 08 Aug 2021 05:00:00 GMT
@@ -341,7 +349,7 @@
Supabase Swag Store
https://supabase.com/blog/2021/07/30/supabase-swag-store
Today we are officially launching the Supabase Swag Store.
- Fri, 30 Jul 2021 00:00:00 GMT
+ Thu, 29 Jul 2021 05:00:00 GMT
@@ -349,7 +357,7 @@
Updates for Supabase Functions
https://supabase.com/blog/2021/07/30/supabase-functions-updates
The question on everyone's mind - are we launching Supabase Functions? Well, it's complicated.
- Fri, 30 Jul 2021 00:00:00 GMT
+ Thu, 29 Jul 2021 05:00:00 GMT
@@ -357,7 +365,7 @@
The Supabase Hackathon
https://supabase.com/blog/2021/07/30/1-the-supabase-hackathon
A whole week of Hacking for Fun and Prizes.
- Fri, 30 Jul 2021 00:00:00 GMT
+ Thu, 29 Jul 2021 05:00:00 GMT
@@ -365,7 +373,7 @@
Supabase Reports and Metrics
https://supabase.com/blog/2021/07/29/supabase-reports-and-metrics
We're exposing a full set of metrics in your projects, so that you can build better (and faster) products for your users.
- Thu, 29 Jul 2021 00:00:00 GMT
+ Wed, 28 Jul 2021 05:00:00 GMT
@@ -373,7 +381,7 @@
Supabase Auth v2: Phone Auth now available
https://supabase.com/blog/2021/07/28/supabase-auth-passwordless-sms-login
Phone Auth is available today on all new and existing Supabase projects.
- Wed, 28 Jul 2021 00:00:00 GMT
+ Tue, 27 Jul 2021 05:00:00 GMT
@@ -381,7 +389,7 @@
Mobbin uses Supabase to authenticate 200,000 users
https://supabase.com/blog/2021/07/28/mobbin-supabase-200000-users
Learn how Mobbin migrated 200,000 users from Firebase for a better authentication experience.
- Wed, 28 Jul 2021 00:00:00 GMT
+ Tue, 27 Jul 2021 05:00:00 GMT
@@ -389,7 +397,7 @@
Supabase Storage now in Beta
https://supabase.com/blog/2021/07/27/storage-beta
Supabase Storage moves into Beta.
- Tue, 27 Jul 2021 00:00:00 GMT
+ Mon, 26 Jul 2021 05:00:00 GMT
@@ -397,7 +405,7 @@
Spot: a video sharing app built with Flutter
https://supabase.com/blog/2021/07/27/spot-flutter-with-postgres
Spot is a geolocation-based video-sharing app with some social networking features.
- Tue, 27 Jul 2021 00:00:00 GMT
+ Mon, 26 Jul 2021 05:00:00 GMT
@@ -405,7 +413,7 @@
Supabase is now on Postgres 13.3
https://supabase.com/blog/2021/07/26/supabase-postgres-13
From today, new Supabase projects will be on a version of Supabase Postgres that runs on Postgres 13.3.
- Mon, 26 Jul 2021 00:00:00 GMT
+ Sun, 25 Jul 2021 05:00:00 GMT
@@ -413,7 +421,7 @@
Supabase Community Day
https://supabase.com/blog/2021/07/26/supabase-community-day
Community Day
- Mon, 26 Jul 2021 00:00:00 GMT
+ Sun, 25 Jul 2021 05:00:00 GMT
@@ -421,7 +429,7 @@
Epsilon3 Self-Host Supabase To Revolutionize Space Operations
https://supabase.com/blog/2021/07/26/epsilon3-self-hosting
Learn how the team at Epsilon3 use Supabase to help teams execute secure and reliable operations in an industry that project spend runs into the billions.
- Mon, 26 Jul 2021 00:00:00 GMT
+ Sun, 25 Jul 2021 05:00:00 GMT
@@ -429,7 +437,7 @@
Supabase Launch Week II: The SQL
https://supabase.com/blog/2021/07/22/supabase-launch-week-sql
Five days of Supabase. Again.
- Thu, 22 Jul 2021 00:00:00 GMT
+ Wed, 21 Jul 2021 05:00:00 GMT
@@ -437,7 +445,7 @@
Protecting reserved roles with PostgreSQL Hooks
https://supabase.com/blog/2021/07/01/roles-postgres-hooks
Using Postgres Hooks to protect functionality in your Postgres database.
- Fri, 02 Jul 2021 00:00:00 GMT
+ Thu, 01 Jul 2021 05:00:00 GMT
@@ -445,7 +453,7 @@
Supabase Beta June 2021
https://supabase.com/blog/2021/07/02/supabase-beta-june-2021
Discord Logins, Vercel Integration, Full text search, and OAuth guides.
- Wed, 02 Jun 2021 00:00:00 GMT
+ Tue, 01 Jun 2021 05:00:00 GMT
@@ -453,7 +461,7 @@
Supabase Beta May 2021
https://supabase.com/blog/2021/06/02/supabase-beta-may-2021
Apple & Twitter Logins, Supabase Grid, Go & Swift Libraries.
- Wed, 02 Jun 2021 00:00:00 GMT
+ Tue, 01 Jun 2021 05:00:00 GMT
@@ -461,7 +469,7 @@
Supabase Beta April 2021
https://supabase.com/blog/2021/05/03/supabase-beta-april-2021
Supabase "gardening" - stability, security, and community support.
- Wed, 05 May 2021 00:00:00 GMT
+ Tue, 04 May 2021 05:00:00 GMT
@@ -469,7 +477,7 @@
Supabase Beta March 2021
https://supabase.com/blog/2021/04/06/supabase-beta-march-2021
Launch week, Storage, Supabase CLI, Connection Pooling, Supabase UI, and Pricing.
- Tue, 06 Apr 2021 00:00:00 GMT
+ Mon, 05 Apr 2021 05:00:00 GMT
@@ -477,7 +485,7 @@
Workflows are coming to Supabase
https://supabase.com/blog/2021/04/02/supabase-workflows
Functions are great, but you know what's better?
- Fri, 02 Apr 2021 00:00:00 GMT
+ Thu, 01 Apr 2021 05:00:00 GMT
@@ -485,7 +493,7 @@
PgBouncer is now available in Supabase
https://supabase.com/blog/2021/04/02/supabase-pgbouncer
Better support for Serverless and Postgres.
- Fri, 02 Apr 2021 00:00:00 GMT
+ Thu, 01 Apr 2021 05:00:00 GMT
@@ -493,7 +501,7 @@
Supabase Dot Com
https://supabase.com/blog/2021/04/02/supabase-dot-com
The Supabase Domain name is changing.
- Fri, 02 Apr 2021 00:00:00 GMT
+ Thu, 01 Apr 2021 05:00:00 GMT
@@ -501,7 +509,7 @@
Supabase Launches NFT Marketplace
https://supabase.com/blog/2021/04/01/supabase-nft-marketplace
A fully encrypted NFT platform to protect and transact your digital assets
- Thu, 01 Apr 2021 00:00:00 GMT
+ Thu, 01 Apr 2021 05:00:00 GMT
@@ -509,7 +517,7 @@
Supabase CLI
https://supabase.com/blog/2021/03/31/supabase-cli
Local development, database migrations, and self-hosting.
- Wed, 31 Mar 2021 00:00:00 GMT
+ Wed, 31 Mar 2021 05:00:00 GMT
@@ -517,7 +525,7 @@
Storage is now available in Supabase
https://supabase.com/blog/2021/03/30/supabase-storage
Launching Supabase Storage and how you can use it in your apps
- Tue, 30 Mar 2021 00:00:00 GMT
+ Tue, 30 Mar 2021 05:00:00 GMT
@@ -525,7 +533,7 @@
Supabase Beta Pricing
https://supabase.com/blog/2021/03/29/pricing
Supabase launches Beta pricing structure
- Mon, 29 Mar 2021 00:00:00 GMT
+ Mon, 29 Mar 2021 05:00:00 GMT
@@ -533,7 +541,7 @@
Launch week
https://supabase.com/blog/2021/03/25/launch-week
Five days of Supabase.
- Thu, 25 Mar 2021 00:00:00 GMT
+ Wed, 24 Mar 2021 05:00:00 GMT
@@ -541,7 +549,7 @@
Angels of Supabase
https://supabase.com/blog/2021/03/25/angels-of-supabase
Meet the investors of Supabase.
- Thu, 25 Mar 2021 00:00:00 GMT
+ Wed, 24 Mar 2021 05:00:00 GMT
@@ -549,7 +557,7 @@
Developers stay up to date with intheloop.dev
https://supabase.com/blog/2021/03/22/In-The-Loop
Learn why Kevin is building intheloop.dev with Supabase
- Mon, 22 Mar 2021 00:00:00 GMT
+ Mon, 22 Mar 2021 05:00:00 GMT
@@ -557,7 +565,7 @@
Using Supabase in Replit
https://supabase.com/blog/2021/03/11/using-supabase-replit
Free hosted relational database from within your node.js repl
- Thu, 11 Mar 2021 00:00:00 GMT
+ Thu, 11 Mar 2021 06:00:00 GMT
@@ -565,7 +573,7 @@
Toad, a link shortener with simple APIs for low-coders
https://supabase.com/blog/2021/03/08/toad-a-link-shortener-with-simple-apis-for-low-coders
An easy-to-use link shortening tool with simple APIs
- Mon, 08 Mar 2021 00:00:00 GMT
+ Mon, 08 Mar 2021 06:00:00 GMT
@@ -573,7 +581,7 @@
Postgres as a CRON Server
https://supabase.com/blog/2021/03/05/postgres-as-a-cron-server
Running repetitive tasks with your Postgres database.
- Fri, 05 Mar 2021 00:00:00 GMT
+ Fri, 05 Mar 2021 06:00:00 GMT
@@ -581,7 +589,7 @@
Supabase Beta February 2021
https://supabase.com/blog/2021/03/02/supabase-beta-february-2021
One year of building.
- Tue, 02 Mar 2021 00:00:00 GMT
+ Tue, 02 Mar 2021 06:00:00 GMT
@@ -589,7 +597,7 @@
Cracking PostgreSQL Interview Questions
https://supabase.com/blog/2021/02/27/cracking-postgres-interview
Understand the top PostgreSQL Interview Questions
- Sat, 27 Feb 2021 00:00:00 GMT
+ Sat, 27 Feb 2021 06:00:00 GMT
@@ -597,7 +605,7 @@
Roboflow.com choose Supabase to power Paint.wtf leaderboard
https://supabase.com/blog/2021/02/09/case-study-roboflow
Learn how Roboflow.com used Supabase to build their Paint.wtf leaderboard
- Tue, 09 Feb 2021 00:00:00 GMT
+ Tue, 09 Feb 2021 06:00:00 GMT
@@ -605,7 +613,7 @@
Supabase Beta January 2021
https://supabase.com/blog/2021/02/02/supabase-beta-january-2021
Eleven months of building.
- Tue, 02 Feb 2021 00:00:00 GMT
+ Tue, 02 Feb 2021 06:00:00 GMT
@@ -613,7 +621,7 @@
Supabase Beta December 2020
https://supabase.com/blog/2021/01/02/supabase-beta-december-2020
Ten months of building.
- Sat, 02 Jan 2021 00:00:00 GMT
+ Sat, 02 Jan 2021 06:00:00 GMT
@@ -621,7 +629,7 @@
Making the Supabase Dashboard Supa-fast
https://supabase.com/blog/2020/12/13/supabase-dashboard-performance
Improving the performance of the Supabase dashboard
- Sun, 13 Dec 2020 00:00:00 GMT
+ Sun, 13 Dec 2020 06:00:00 GMT
@@ -629,7 +637,7 @@
Supabase Partners With Strive School To Help Teach Open Source
https://supabase.com/blog/2020/12/02/supabase-striveschool
Supabase Partners With Strive School To Help Teach Open Source To The Next Generation Of Developers
- Wed, 02 Dec 2020 00:00:00 GMT
+ Wed, 02 Dec 2020 06:00:00 GMT
@@ -637,7 +645,7 @@
Xendit Built a Counter-Fraud Watchlist for the Fintech Industry
https://supabase.com/blog/2020/12/02/case-study-xendit
See how Xendit use Supabase to build a full-text search engine.
- Wed, 02 Dec 2020 00:00:00 GMT
+ Wed, 02 Dec 2020 06:00:00 GMT
@@ -645,7 +653,7 @@
TAYFA Built a No-Code Website Builder in Seven Days
https://supabase.com/blog/2020/12/02/case-study-tayfa
See how Tayfa went from idea to paying customer in less than 30 days.
- Wed, 02 Dec 2020 00:00:00 GMT
+ Wed, 02 Dec 2020 06:00:00 GMT
@@ -653,7 +661,7 @@
Monitoro Built a Web Crawler Handling Millions of API Requests
https://supabase.com/blog/2020/12/02/case-study-monitoro
See how Monitoro built an automated scraping platform using Supabase.
- Wed, 02 Dec 2020 00:00:00 GMT
+ Wed, 02 Dec 2020 06:00:00 GMT
@@ -661,7 +669,7 @@
Supabase Alpha November 2020
https://supabase.com/blog/2020/12/01/supabase-alpha-november-2020
Nine months of building.
- Tue, 01 Dec 2020 00:00:00 GMT
+ Tue, 01 Dec 2020 06:00:00 GMT
@@ -669,7 +677,7 @@
Postgres Views
https://supabase.com/blog/2020/11/18/postgresql-views
Creating and using a view in PostgreSQL.
- Wed, 18 Nov 2020 00:00:00 GMT
+ Wed, 18 Nov 2020 06:00:00 GMT
@@ -677,7 +685,7 @@
Supabase Alpha October 2020
https://supabase.com/blog/2020/11/02/supabase-alpha-october-2020
Eight months of building.
- Mon, 02 Nov 2020 00:00:00 GMT
+ Mon, 02 Nov 2020 06:00:00 GMT
@@ -685,7 +693,7 @@
Supabase.js 1.0
https://supabase.com/blog/2020/10/30/improved-dx
We're releasing a new version of our Supabase client with some awesome new improvements.
- Fri, 30 Oct 2020 00:00:00 GMT
+ Fri, 30 Oct 2020 05:00:00 GMT
@@ -693,7 +701,7 @@
Supabase Alpha September 2020
https://supabase.com/blog/2020/10/03/supabase-alpha-september-2020
Seven months of building.
- Sat, 03 Oct 2020 00:00:00 GMT
+ Sat, 03 Oct 2020 05:00:00 GMT
@@ -701,7 +709,7 @@
Supabase Hacktoberfest 2020
https://supabase.com/blog/2020/09/11/supabase-hacktoberfest-2020
Join us for a celebration of open source software and learn how to contribute to Supabase.
- Fri, 11 Sep 2020 00:00:00 GMT
+ Fri, 11 Sep 2020 05:00:00 GMT
@@ -709,7 +717,7 @@
Supabase Alpha August 2020
https://supabase.com/blog/2020/09/03/supabase-alpha-august-2020
Six months of building
- Thu, 03 Sep 2020 00:00:00 GMT
+ Thu, 03 Sep 2020 05:00:00 GMT
@@ -717,7 +725,7 @@
Supabase Auth
https://supabase.com/blog/2020/08/05/supabase-auth
Authenticate and authorize your users with Supabase Auth
- Wed, 05 Aug 2020 00:00:00 GMT
+ Wed, 05 Aug 2020 05:00:00 GMT
@@ -725,7 +733,7 @@
Supabase Alpha July 2020
https://supabase.com/blog/2020/08/02/supabase-alpha-july-2020
Five months of building
- Sun, 02 Aug 2020 00:00:00 GMT
+ Sun, 02 Aug 2020 05:00:00 GMT
@@ -733,7 +741,7 @@
Continuous PostgreSQL Backups using WAL-G
https://supabase.com/blog/2020/08/02/continuous-postgresql-backup-walg
Have you ever wanted to restore your database's state to a particular moment in time? This post explains how, using WAL-G.
- Sun, 02 Aug 2020 00:00:00 GMT
+ Sun, 02 Aug 2020 05:00:00 GMT
@@ -741,7 +749,7 @@
Alpha Launch Postmortem
https://supabase.com/blog/2020/07/10/alpha-launch-postmortem
Everything that went wrong with Supabase's launch
- Fri, 10 Jul 2020 00:00:00 GMT
+ Fri, 10 Jul 2020 05:00:00 GMT
@@ -749,7 +757,7 @@
What are PostgreSQL Templates?
https://supabase.com/blog/2020/07/09/postgresql-templates
What are PostgreSQL templates and what are they used for?
- Thu, 09 Jul 2020 00:00:00 GMT
+ Thu, 09 Jul 2020 05:00:00 GMT
@@ -757,7 +765,7 @@
Physical vs Logical Backups in PostgreSQL
https://supabase.com/blog/2020/07/17/postgresql-physical-logical-backups
What are physical and logical backups in Postgres?
- Tue, 07 Jul 2020 00:00:00 GMT
+ Tue, 07 Jul 2020 05:00:00 GMT
@@ -765,7 +773,7 @@
Supabase Alpha June 2020
https://supabase.com/blog/2020/07/01/supabase-alpha-june-2020
Four months of building
- Wed, 01 Jul 2020 00:00:00 GMT
+ Wed, 01 Jul 2020 05:00:00 GMT
@@ -773,7 +781,7 @@
Steve Chavez has joined Supabase
https://supabase.com/blog/2020/06/15/supabase-steve-chavez
Steve joins Supabase to help build Auth.
- Mon, 15 Jun 2020 00:00:00 GMT
+ Mon, 15 Jun 2020 05:00:00 GMT
@@ -781,7 +789,7 @@
Supabase Alpha May 2020
https://supabase.com/blog/2020/06/01/supabase-alpha-may-2020
Three months of building
- Mon, 01 Jun 2020 00:00:00 GMT
+ Mon, 01 Jun 2020 05:00:00 GMT
@@ -789,7 +797,7 @@
Supabase Alpha April 2020
https://supabase.com/blog/2020/05/01/supabase-alpha-april-2020
Two months of building
- Mon, 01 Jun 2020 00:00:00 GMT
+ Mon, 01 Jun 2020 05:00:00 GMT