Howard Paget
About Projects Articles

Streams Feature

Streams

Download the app: https://www.streamsapp.io

Introduction

Streams is an app that helps you collect everyday data and create dashboards using that data. For example, you can track how many coffees you drink and create a chart of no. of coffees drank per day/week/month.

Streams allows other tools to be used to create dashboards for example data can be imported into Google Sheets, or read by a Python Script.

Screenshots

Screenshot 1 Screenshot 2

Technology

Backend - Spring Boot

The backend is a Spring Boot application written in the Java. Spring Boot was chosen as it is the current de facto standard for writing web apps in Java making troubleshooting mush easier due to the abundance of resource material on PluralSight, StackOverflow, etc.

Database - Postgres

Data is stored in a Postgres database. Postgres was chosen as it is a popular and reliable database. Postgres supports some handy features such as json columns which I use to store the entries data (which are basically a maps of string → string).

Deployment - Kubernetes

The backend is containerised and deployed to a Kubernetes cluster running on DigitalOcean.

Frontend - Flutter

The app is built using Google’s cross platform UI framework Flutter.