Open Source Firebase Alternative with GraphQL
nhost.io
nhost.io
Just curious what the market size is for these types of services? It doesn't seem like anyone really uses them; for tech people it's just as easy to spin up an instance in some cloud somewhere. For non technical people, well these types of services still seem to be too complex.
I think the one thing Firebase has going for it, that is a differentiator is it's mobile push service that pushes to both iOS and Android. There aren't many options there.
Whant we hear form our users is that they like Nhost because of:
- Open Source
- SQL (Postgres)
- GraphQL (Hasura)
- GitHub Integratoin (like Vercel & Netlify)
> for tech people it's just as easy to spin up an instance in some cloud somewhere.
I think this is the biggest missconseption.
Just look at Vercel and Netlify. They host html/css/js as a core business and they have million of users combined. Why? Because they make it extreamly easy for developers to be *productive* and they hook into developers' workflow with Git.
Most of our users at Nhost can spin up servers and infrastructure on their own, but are they using their time optimally by doing so? Or should they instead spend time building what's important for their business and users?
Firebase is a nightmare since they folded it into GCP. As a standalone product it was complete, easy to grok, and simple to secure. Now I feel like I literally need to hire a CISSP to make sure my whole company wont be hosed by a single security rule misconfiguration buried somewhere in GCP.
I think you might be underestimating their reach though, they're very popular in app development shops, since an app developer doesn't need to know how to build a serverside application in order to get an app that needs remote services working.
It's closed source and locks you into Google Cloud.
You can't self host. And since it's pay for use, you can end up with large unexpected bills for a variety of reasons.
It doesn't have full text search.
It doesn't have a relational database.
I'm sure there are more things. Firebase is awesome but it's definitely not the ultimate solution.
Additionally looks like some very high profile apps are using it, or at least have done so in the past: https://cloud.google.com/blog/topics/startups/bereal-creates...
- Open Source: Nhost is open source. Some competitors are, too, and some are not.
- Infrastructure: Our infrastructure is set up to handle anything from side-projects to companies with hyper-scale. Each service, except the Postgres database, is stateless and can scale horizontally.
- UI: The Nhost Dashboard, although under development, will give us an edge in the next six months. Most database and backend dashboards look like they were built by engineers (without designers) in 1997. There is so much room for innovation.
- Tech: We're using well-used and open source technologies with little to no abstractions in our stack, from SQL (Postgres) to GraphQL (Hasura), to Node.js for Serverless Functions. Here I see competitors using either old technologies or building abstractions, forcing them to re-invent already solved problems, and forcing users to re-learn already battle-tested solutions.
- Workflow: We're not just an "infrastructure company." The goal with Nhost is to make developers as productive as possible. We have a CLI for local development and a GitHub integration that automatically deploys your backend (just like Netlify & Vercel). This way, our customers can focus on their business and users instead of figuring out development workflows. Here I see competitors either building custom in-house branching solutions outside Git or nothing.
In the end, I'm glad to see competition in this space. The winner of healthy competition is developers who can pick the services that best suit their needs. And that's the ultimate goal. To empower developers to build.
Hasura GraphQL Engine is one of the open source tools we're using for the Nhost stack. But it's "only" one of the open source technologies we're using.
Others are:
- Postgres. Who doesn't love Postgres?
- Hasura Auth: https://github.com/nhost/hasura-auth
- Hasura Storage: http://github.com/nhost/hasura-storage
- Serverless Functions (Node.js)
On top of that we have SKDs in JS/TS/React/Next.js/Vue.
And a CLI for local development and a GitHub integration so you can deploy your backend just like you deploy your frontend with Netlify and Vercel.
Hope that clarifies a bit.
in other words: what’s your moat?
NHost gets you Hasura, the underlying postgres db, pre-configured auth with JWTs, blob storage, functions and a client-side library to get all of that working together with nearly zero configuration.
edit: also, Hasura's cheapest offering ($100 / month) is still prohibitively expensive for indie projects (That's just Hasura - you would have to add database costs, auth costs and blob storage costs to that $100).
It's freaking crazy
We also provide SDKs in JS, TS, React, Next.js, and Vue: https://docs.nhost.io/reference/javascript
built to leverage Hasura's features and driven by users needs
Hasura Auth has 1M+ pulls on Docker Hub and we have JS SDKs for both Auth and Storage.
So Nhost is either not vendor-neutral, or must be used alongside with AGPL S3 implementations.
But the good thing with Nhost is that it's open source, so if you want to implement something other than S3 as the core storage layer, you can do so: https://github.com/nhost/hasura-storage
Notice, also, that Hasura has support for REST endpoints.
Very excited for this!
Evaluate them both, use whichever fits your usecase/you like best.
- 28k stars on GitHub
- Unicorn Startup with $136M in funding
- Notable users of Hasura GraphQL Engine: Netlify, Walmart, Airbus, Atlassian, Nhost ;)
- Support for multiple databases (Postgres, MS SQL, BigQuery, etc)
- Hasura Console (UI)
- Hasura handles row AND column level permissions instead of only Postgres row-level security.
- Database Event Triggers
- Overall a bigger communtity, great docs, lots of example.