Supabase - My new best friend

 


I have been looking for a cheap (free) database or database as a service solution I can use for my learning and sample projects.  I had looked at Azure, AWS, MySQL, Cosmos, Firebase, Goole Sheets, flat files, and many others.  After all that research, I could not find anything I liked.  Until now.

I have found Supabase!!!

They are marketing Supabase as an alternative to Firebase, but it is not as feature-rich as it needs to be to complete with Firebase, but it has more than enough features right now for me to be very excited about it.   

From their Github:


"How it works

Supabase is a combination of open-source tools. We’re building the features of Firebase using enterprise-grade, open-source products. If the tools and communities exist, with an MIT, Apache 2, or equivalent open license, we will use and support that tool. If the tool doesn't exist, we build and open-source it ourselves. Supabase is not a 1-to-1 mapping of Firebase. Our aim is to give developers a Firebase-like developer experience using open source tools.

Current architecture

Supabase is a hosted platform. You can sign up and start using Supabase without installing anything. We are still creating the local development experience - this is now our core focus, along with platform stability."

There is a lot that Supabase has, but I will be coving the feature set that I am interested in using.  I highly recommend that you check out their website and the many youtube videos that cover the full feature set.


Features I need

1. Database

Every Supabase database is a dedicated Postgres database.  You can leverage your Postgress knowledge to use Supabase.  And if you are not already familiar with Postgress, there is an unlimited number of resources available to help you learn.

Supabase gives you an online table editor to create and maintain your tables, plus a SQL editor to manage your data.

2. Auth

Supabase allows you to configure security at the user level and the role level.  Supabase's auth includes PostreSql policy engine.

It also includes online user maintenance tools.

3. Cost

Supabase has a free trier for small projects or to experiment with.  Check out what you get with the free trier features.
 
Basically with the free tier, you get 2 organizations and each origination can have 2 databases.  

Truthfully it was the free tier option that caught my attention orginially.  The Pro tier option is not bad either.  I have to admit, I like their pricing format.  Makes it easier to be able to determine cost.

4. Ease of use within an application

This is another feature that makes it a winner in my book.  There is a REST API layer that sits on the database.  This allows you to simply use REST calls to access your data.  From my simple test so far, it seems very fast.

Supabase is really targeted at Javascript developers.  There are React, Angular, Vue, and other JS frameworks with libraries to access the database.  In addition, there is good support in their community for other libraries including C#.  For me, I want to stay with the REST layer for now.

5. Ease of setup

I was able to create my account, set up my organization, create my first project and create my first table all well within an hour.  For me, that is pretty impressive.  The UI is simple to use, and easy to understand.  I was able to create my table and even upload data to it through the UI.


6. Ease of scaling up service level

Once you fall in love with Supabase, a simple email to support will allow you to upgrade your operating tier.  If you happen to have a situation that your host application that takes off and you start exceeding your tier, they will reach out to you and help you determine what you need.  Before the billing hits you.

What's Next?

My next project is going to be a Blazor CRUD project using Supabase as the backend data storage,  Once that is completed, I will add user and tole security to the CRUD application.  I would like to finish with build user maintenance into the CRUD application.  And if all goes well, I want to build a Blazor image gallery using Supabase data storage.

Hopefully, you will follow me through these additional projects utilizing Superabase with Blazor.

Comments

Popular posts from this blog

Yes, Blazor Server can scale!

Blazor new and improved Search Box

Blazor Wizard Step Component