A lightweight, full-stack app allowing me to create, update and delete espresso recipes. I use this app locally to store bean brands and their dialed in recipes.
This is a sample image of the webpage:
The frontend uses Svelte and AstroJS to make building static sites a breeze.
The backend serves the static files using Axum and stores the recipes in a simple JSON file (a database would be overkill).
coffee-notebook/
folder, and run ./prepare_docker.sh
to build the static Astro files.docker build -t coffee_notebook .
to build the docker image.docker images
, and confirm you see a coffee_notebook
image.docker run -d -p PORT:3000 --name coffee_notebook_instance coffee_notebook
, changing PORT
with your desired out-facing port.coffee.json
file are produced.coffee.json
file to save your recipes elsewhere, run (sudo) docker exec -it INSTANCE_NAME /bin/bash
and then cat coffee.json
. This will output the JSON file contents. If you spin up a new instance and already have the JSON file, you can just echo JSON_CONTENTS > coffee.json
to load the recipes into the backend.