Nhost - open source Firebase alternative with GraphQL
Most devs are probably at least somewhat familiar with Firebase, Google’s out of the box backend-solution for mobile & web apps. It's been a few years since Google bought it and as usual the community has provided us with a growing number of alternatives. Although Firebase does work with GraphQL that connection can always be improved to give us more and that is exactly where Nhost comes in.
Nhost = PostgreSQL + Hasura's GraphQL Engine + Hasura Backend Plus
I touched a bit recently on combining technologies to get the most out of them when talking about the GRAND Stack, well this will be a bit of a deja vu as Nhost is also a stack. It's basically PostgreSQL combined with Hasura's GraphQL Engine and Hasura Backend Plus, this together creates an open source Backend as a Service. Nhost uses them to get you everything you need:
- out of the box backend with a relational database,
- user authentication
- data storage,
- serverless fucntions,
- GraphQL API.
The main draw
Well that’s just the inner workings and if it's supposed to be an alternative to Firebase the most interesting part is obviously the features. After all no one gets interested in a tool based just on how it works but rather what it can do for them, so let's dive into that:
- out of the box: provides you with a solid base for starting a project, database, storage, scalability, authentication, user management and API,
- customization and versatility: aside from the defaults it can be customized and works well with others. Hasura Backend Plus supports customisable storage rules on any S3-compatible instance and works with third party Open Authentication providers like GitHub, Google, Facebook, Twitter and others,
- performance: PostgreSQL and Hasura GraphQL Engine are preconfigured to work as fast as possible,
- subscriptions: one often voiced complaint about GraphQL is the lack of a good subscription solution and manual query updates. No worries there, Nhost handles all that for you via Hasura,
- Dart and Flutter support: provides easy to use software development kit packages for Flutter devs (beta).
Who is it for?
Well you the reader, right? Well to be exact it's geared towards indie devs, startups and small to medium teams, at least for now according to the developers. The project has raised 3 million dollars for its next stage of development with prominent investors including the founders of GitHub, Netlify and WorkOS.
So you can bank on it growing quite a bit in the near future and if it doesn't sound convincing to you yet, it might soon as they add new features. For now it's already a useful tool which provides you with a great base out of the box for starting your project. Even if you’re already using Firebase, Strapi or Openbase it's always good to check out an alternative and see if it does something better, after all its open source.