How Fleeting Notes Migrated 1000+ Users from Firebase to Supabase (Stripe, Firebase, Supabase)

This page summarizes the projects mentioned and recommended in the original post on /r/Supabase

SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
surveyjs.io
featured
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
  • supabase

    The open source Firebase alternative.

  • The lack of full native Dart support, slow build times, sketchy workarounds, and no desktop support led me searching for another solution. After many hours of research, I was faced with the choice between two frameworks: Appwrite and Supabase. Both were great frameworks and both fit my use case perfectly. But, I decided to move forward with Supabase because of their philosophy of “ not reinventing the wheel”.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • firedart

    A dart-native implementation of the Firebase Auth and Firestore SDKs

  • The lack of full native Dart support, slow build times, sketchy workarounds, and no desktop support led me searching for another solution. After many hours of research, I was faced with the choice between two frameworks: Appwrite and Supabase. Both were great frameworks and both fit my use case perfectly. But, I decided to move forward with Supabase because of their philosophy of “ not reinventing the wheel”.

  • flutterfire

    🔥 A collection of Firebase plugins for Flutter apps.

  • The lack of full native Dart support, slow build times, sketchy workarounds, and no desktop support led me searching for another solution. After many hours of research, I was faced with the choice between two frameworks: Appwrite and Supabase. Both were great frameworks and both fit my use case perfectly. But, I decided to move forward with Supabase because of their philosophy of “ not reinventing the wheel”.

  • stripe-firebase-extensions

    Discontinued Repository of Firebase Extensions built by Stripe. [Moved to: https://github.com/invertase/stripe-firebase-extensions] (by stripe)

  • Stripe was the most difficult and finicky aspect of the migration. Within firebase, I used the stripe firebase extension to manage all the stripe components. It took care of a lot of the implementation work so I had no idea how to approach this when I first started. I bounced between different ideas like bi-directional sync of the subscription tier within firebase, but eventually I settled upon using Stripe as my single source of truth. Although it’d be more involved, I knew it’d make fully cutting Firebase out of Fleeting Notes easier down the road. Here are the migration steps I settled upon:

  • firebase-subscription-payments

    Discontinued Example web client for the `firestore-stripe-subscriptions` Firebase Extension using Stripe Checkout and the Stripe Customer Portal.

  • Another component I needed to upgrade was the payments page. For the current payments page, I closely modelled it to this sample payments page. The only problem with this payments page is that supabase isn’t notified of any new customers after the migration.

  • Stripe

    PHP library for the Stripe API.

  • Stripe was the most difficult and finicky aspect of the migration. Within firebase, I used the stripe firebase extension to manage all the stripe components. It took care of a lot of the implementation work so I had no idea how to approach this when I first started. I bounced between different ideas like bi-directional sync of the subscription tier within firebase, but eventually I settled upon using Stripe as my single source of truth. Although it’d be more involved, I knew it’d make fully cutting Firebase out of Fleeting Notes easier down the road. Here are the migration steps I settled upon:

  • happy-days

  • A big shout out to the supabase team, supabase happy hour series, egghead stripe course and the happy-days repo for helping with this component of the migration. I definitely would’ve spent way more time figuring out what I needed to do without these helpful courses / videos.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Flutter

    Flutter makes it easy and fast to build beautiful apps for mobile and beyond

  • When beginning my journey as a Flutter developer, I thought Firebase would be the best backend solution for Flutter. Given that both are made by Google, I thought this would be the backend that would be the most stable and flexible. I was wrong.

  • quickstart-android

    Firebase Quickstart Samples for Android

  • When beginning my journey as a Flutter developer, I thought Firebase would be the best backend solution for Flutter. Given that both are made by Google, I thought this would be the backend that would be the most stable and flexible. I was wrong.

  • stripe-sync-engine

    Sync your Stripe account to you Postgres database.

  • Stripe-Supabase Sync Engine: syncing the stripe database to supabase would’ve been nice but also would’ve been a lot of unnessary extra work (I’ll just use stripe webhooks instead). Also, I needed to spin up something to host that and I wasn’t willing to do that.

  • Appwrite

    Your backend, minus the hassle.

  • The lack of full native Dart support, slow build times, sketchy workarounds, and no desktop support led me searching for another solution. After many hours of research, I was faced with the choice between two frameworks: Appwrite and Supabase. Both were great frameworks and both fit my use case perfectly. But, I decided to move forward with Supabase because of their philosophy of “ not reinventing the wheel”.

  • awesome-supabase

    The Official awesome-list of Supabase Starters & Resources ⚡️

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • I've found a new code: happylilith510

    1 project | /r/afkarena | 11 May 2023
  • Which state management?

    1 project | /r/FlutterDev | 9 May 2023
  • Hated writing repetitive crud APIs, so I'm building a library to use Prisma on the frontend

    4 projects | /r/webdev | 6 May 2023
  • Where did you learn flutter

    2 projects | /r/FlutterDev | 15 Apr 2023
  • Keep track of data between pages

    2 projects | /r/flutterhelp | 2 Nov 2022