OSS Firebase Framework Alternatives

Firebase — and AWS Amplify — are a stack of tools for rapid prototyping, backend as a service, etc

Fission and webnative already handle static hosting, DNS, Auth, file storage / uploads.

For database functionality, what are other OSS tools that might be expanded by adding webnative, or that we might help expand / build on.


Either put a quick section here or add as a top level link and add here

Supabase

The open source Firebase alternative.

Supabase adds realtime and restful APIs to Postgres without a single line of code.

Builds on top of Postgres to add REST and web socket interfaces

Feathers

A framework for real-time applications and REST APIs

Feathers (https://feathersjs.com/ ) has long been considered by many others as a serious contender for an open source Firebase alternative (there also is a comparison on the website). It does not try to replicate Firebase but instead leverages a unique architectural approach to provide protocol independent services with built-in transports for websockets and REST APIs. A while ago I also prototyped an adapter for the DAT protocol over the Beaker browser (feathers-chat.hashbase.io).

Kinto

Kinto is a generic JSON document store with sharing and synchronisation capabilities.

Uses Python and Postgres as the backend, has a deploy-to-heroku option.

1 Like

Feathers

A framework for real-time applications and REST APIs

Although it is my own project, Feathers (https://feathersjs.com/) has long been considered by many others as a serious contender for an open source Firebase alternative (there also is a comparison on the website). It does not try to replicate Firebase but instead leverages a unique architectural approach to provide protocol independent services with built-in transports for websockets and REST APIs. A while ago I also prototyped an adapter for the DAT protocol over the Beaker browser (feathers-chat.hashbase.io).

2 Likes

Thanks for adding all those links @daffl. I added it directly into the wiki top post, which I think you should have permission to edit? I bumped your trust level in any case :slight_smile:

I re-titled this as “Firebase Framework Alternative”. That’s probably still not quite right.

Here are some attributes I’d say make for a Firebase Framework Alternative

  • backend database
  • schema definition that generates API
  • auth / user model included

For Supabase, they wrap Postgres. I’m reading through the FeathersJS docs and it looks like NeDB is the default DB. Very interesting, hadn’t seen that before. Since it’s browser based, it means that we could a Fission WNFS backend and have it persist, too!

The platform / service would also includes things like:

  • SSL
  • subdomains
  • static site hosting
  • file storage
  • file uploads
  • real time services (sockets, etc.)

Not exhaustive, but in discussing these items, we start getting an idea of what to compare :slight_smile:

1 Like

Does postgrest also count, then? PostgREST Documentation — PostgREST 12.0 documentation

Feels like there’s a smooth gradient here all the way down to Rails

I had that one in mind :slight_smile:

No, I don’t think so! You have to manually create a database schema, and that gives you a rest API. I also think their auth / user model isn’t really app developer simple enough. It could be used to build such a thing of course.

The Supabase “just add Postgres” is probably simple enough? Meaning a Heroku pg instance gets you going. But then you’re still adding your own file store and other components.

This probably needs a grid to ACTUALLY compare these things.

1 Like

It works with any database (you can choose between 10+ different database when you create the app), NeDB is just used for the tutorials so that people don’t have to set up a database server. Most people end up with Postgres (Sequelize) or MongoDB (Mongoose).

I think the most important point is that it is still the only framework that can be used the same on the client in the browser (or any other JavaScript runtime). It doesn’t just have a “client library” but is the same core library just with different adapters that either connect to a database or the API server - or peer to peer to other clients. I still think that puts it in a unique position of being able to leverage decentralized technology with a programming model that thousands of developers are already familiar with.

2 Likes

Via @agentofuser, need to go through and add links to all these
https://twitter.com/swyx/status/1326802802266447872

I’m still up in the air about whether marketing Fission as a “Firebase alternative” is useful or not.

Focusing on the “jobs to be done” seems like better messaging — fast and simple app building. But I totally understand that people also want like a side by side grid or a shortcut to understanding — “like Firebase, but different”.

1 Like