Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This is great news. My last few web projects have all been based on Firebase because I focus on the front-end these days and I don't have to worry about scaling, databases, API endpoints and other nonsense which consumes a lot of my day. The pain of even getting a VPS deployed with support for Node.js, database and then figuring out some kind of redundancy to keep Node and my database running can also consume your day.

I used to favour Node.js for my REST API backend, but you can't beat the pricing for Firebase and generous free tier. One of the lesser known features is the cloud configuration service which gives you an SDK, it allows me to remotely turn settings on and off, syndicating them in realtime across all devices.

Oh, and the authentication functionality that Firebase offers with the painless SDK is absolutely fantastic. It's crazy easy to add Google/Facebook login functionality to my application and not worry about dealing with the pain of JSON Web Tokens, oAuth authentication and the other pain points of integrating social login. Implementing authentication used to be painful, fortunately services like Auth0 and Firebase are making it easier.

To those wondering who would use Firebase, I am a prime example. I am a front-end developer, but I come from a full-stack background. As I focus on the front-end, I've lost interest in configuring API's and backends, so Firebase handling this for me without needing to really do anything is a huge plus. I have no want, need or desire to ever touch a backend if I can avoid it.

For prototyping, you can't beat Firebase's cloud hosted database which utilises a JSON format to store data aka NoSQL without the scaling pain like MongoDB inflicted upon us. The rules engine that sits ontop of it allows you to configure it however you want, support for indexes and more.

Makes me happy to see that Google is doubling down on Firebase, it truly is a great product and I would be sad to see it discontinued.



I developed my first SWA with angular 2 + firebase database/hosting. In one hand, the dev process is really easy and fast (firebase deploy to upload your website).

In the other end, if you want to be fully serverless it's start to getting more complicated. Using external service to manage form (form.io), page pre-rendering (prerender.io), notification...

I don't know why analytic, crash report are only available on Android/iOS because when you are able to do your sdk on 2 platforms. 1 more shouldn't be that hard.


I also like firebase. Unfortunately the updates are all for mobile development and not for the web. Also there is no support for angular universal in angularfire?


Question: How do you deal with authorisation? I've still yet to come up with a solution I'm happy with unfortunately; I'm currently relying on a custom token generated server-side that grants given users particular claims that I then check in the database rules, but it feels... brittle, I guess.


> I'm currently relying on a custom token generated server-side

I don't understand. Where's this server? I thought the point of Firebase was that you don't need a server.


For custom claims on tokens you need a server, unfortunately. I've not found a way around it yet, but I was hoping someone had an idea on how to get rid of it!


Exact same thing that we are using for a realtime collaborative app. Generate token on server-side with access to certain keys.

However, we had to redo our json structure once we started thinking authorisation. It sucked and in retrospect should have thought about it earlier, but it seems to work.

Typically authorisation layers on top of existing data, but in this case, we had to redo data structure keeping auth in mind. Is that why you feel its brittle?


> Typically authorisation layers on top of existing data, but in this case, we had to redo data structure keeping auth in mind. Is that why you feel its brittle?

That's pretty much exactly it, I guess. It honestly just feels less "secure" than I'd like, even if it's not!


> I don't have to worry about scaling, databases, API endpoints and other nonsense

You caused a lot of backend developers to shed a tear


detail: You don't have to worry about scaling up to 10-40k connections, which is great for small-medium apps (which is not scaling).

Once you go beyond that you have to manually shard and replicate data between shards and load balance your connections.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: