I often get asked by other developers what kind of stack we used to build Pointz (if you don’t know what I mean by “tech stack,” it’s just a term software developers use to refer to what technologies were used when building your app, website, etc.) and since I love talking about nerd stuff I figured I’d go ahead and write a blog on it.
Here’s exactly what we used to build Pointz (spoiler alert, it’s pretty Google-dependent).
Frontend - Flutter
If you haven’t used Flutter, consider this a personal ringing endorsement. Before Flutter, React Native was the go-to for writing mobile apps that needed native-like performance, without having to go full native and manage two separate apps.
Now, Google has come out with a new framework called Flutter that in my opinion, is superior to React Native. Why do I like Flutter so much more than React Native? There are many reasons but I’ll just go into a few.
Third, Flutter comes with amazing styled components out of the box. This is huge for me because I do not have a designer yet, nor am I very design-conscious. I end up spending more than half my time trying to make an app look good. With Flutter, I don’t need a designer. Everything comes out looking great.
There are many more reasons why I really like Flutter, but I’ll end it there for brevity sake.
Database - Firestore
A lot of people have heard of Firebase, but not so many about Firestore. Firestore is just like Firebase except it’s… wait for it… scalable!! It’s still a (very) realtime database, but unlike Firebase, you don’t have to worry about all the necessary data redundancy in order to get adequate perform and Firestore is much more queryable.
Coming from a SQL based background, Firestore is pretty much a cross between a SQL database and Firebase from my viewpoint. I can’t tell you how excited I was to run a query and have it spit out in the console, “Hey, you need to create an index for the query. Click here to do so.” This was music to my ears. I am more accustomed to being forced to call a DBA to create some index that won’t be created until weeks later (sidenote: I worked at a bank previously).
Backend - Firebase Functions
Analytics - Mixpanel
After trying so hard (and I mean really really hard), I simply cannot convert to Firebase Analytics. It’s watered down, has bad reports, and is unnecessarily difficult. I feel like I may be alone on this one, because everyone else seems to love Firebase Analytics (and I really wanted to as well). Mixpanel is just a stronger analytics program and easier to use in so many ways.
Hardware - Beacons
This is kind of obvious, but thought I would include it for the sake of having a complete overview. Right now we haven’t committed to any particular beacon manufacturer, despite trying multiple. All of them lack one thing or another, so we’re hoping our ideal version will come out in the future. If not, we’ll just end up building our own.
Any-who, that is our tech stack. Thanks for me letting me nerd out for a little bit.