Part 2 in the complete flutter app walkthrough. Designing an onboarding and authentication flow with the bloc framework.

This is the second post in a series on how the Dreamwod app is built. The Dreamwod app is an iOS and Android app for CrossFit athletes where they can track their progress and for CrossFit gyms that want their athletes to engage in their community. We have previously described the components and package used to build a “details page” in the app. …


Components, best practices, and tools used to build a large Flutter app.

The Dreamwod app

This is the first post in a series on how the Dreamwod app is built. The Dreamwod app is an iOS and Android app for CrossFit athletes where they can track their progress and for CrossFit gyms that want their athletes to engage in their community. We have previously described how we have created some of the backend services (Golang + CloudRun at Google Cloud) and now it’s time to discuss the app.

The series contains (at least) the following posts.

  1. Components used for building the details page…


Secure asynchronous processing with Cloud Run through Pub/Sub.

Background

Cloud Run will throttle the CPU when there isn’t an active request processing. That means that it isn’t possible to spawn a new thread or goroutine to do background processing within a Cloud Run API. Background processing can for example be to send an email during registration or to send push notifications when a user likes a post, something that the user doesn’t have to wait for.

This article will describe a solution for asynchronous processing where an API running on Cloud Run will send events to Pub/Sub. …


Migrating a golang REST API from Kubernetes Engine (GKE) to Cloud Run

Migrating to Cloud Run

Background

Kubernetes at Google Cloud (GKE) was used during the development and the testing of the Dreamwod app (https://www.dreamwod.app). GKE has been working good but it has also been the most expensive and complicated part of the hosting. We have because of that been migrated from GKE to Cloud Run. The primary reasons behind the migrations are.

  1. Cost - Cloud Run is cheaper than GKE (for our workload).
  2. Simplicity - Our API is pretty simple and we don’t need a lot of the extra features in Kubernetes.

Migrating secrets

When migrating…

Erik

Developer, backend, frontend, ML. Likes crossfit and training. Building on the app dreamwod.app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store