← Back to projects

Cloud application · Multi-cloud

Safe Button

A daily check-in dashboard that helps people let a trusted contact know they are okay. A single check-in records the update and sends a timestamped email.

Animated walkthrough of the Safe Button check-in dashboard

Live demo

This preview loads the currently deployed Daily Check-In Dashboard.

Open the dashboard in a new tab ↗

Project overview

Safe Button is a Flask application built around a simple daily check-in workflow. The project explores how the same application idea can be deployed using two different cloud platforms, with each implementation using its own identity, storage, and delivery services.

Cloud implementations

Google Cloud

The main branch contains the Flask check-in app and a Cloud Build workflow. The check-in sends a timestamped email through configurable SMTP settings.

Explore Google Cloud branch ↗

AWS

The AWS branch adds Cognito sign-in and per-user DynamoDB records, with an EKS deployment pipeline built from CodePipeline and CodeBuild.

Explore AWS branch ↗

Architecture diagrams

Google Cloud architecture for Safe Button, including Cloud Run, Firestore, Cloud Build, Cloud Scheduler, and monitoring services
Google Cloud architecture
AWS architecture for Safe Button, including EKS, Cognito, DynamoDB, Lambda, EventBridge, and CodePipeline
AWS architecture

Key features

Technology stack

Python Flask Google Cloud Build AWS Cognito DynamoDB Amazon SES Docker Kubernetes / EKS CodePipeline CodeBuild