this is a project scaffold. it's the template from which i start all new services.
clone the repo. change the name. deploy. start the dev loop. now you've got:
- a fast, fun dev loop for frontend, backend, and admin
- basic auth
- implement async functions in cmd/
- runtime up to 15 minutes
- streaming logs back to the caller
- all execution state in s3
- caller can pass presigned s3 put urls to store state upstream
- invoke async functions:
- via cli locally
- via cli remotely (rpc or subprocess)
- via api remotely (rpc or subprocess)
- via web interface, debug and manage your service from any browser, even mobile!
- invoke bash inside the lambda:
- not often needed, but nice to have
- wondering how long it takes to gzip a file in lambda? bash oneliner
- wondering what the lambda username is? whoami
- implement sync functions as normal /api/ endpoints in backend/
- devops automation
- ./bin/relay.sh # backend dev loop via ec2 for faster lambda zip updates
- ./bin/ensure.sh # deploy aws infra
- ./bin/preview.sh # preview aws infra deployment
- ./bin/logs.sh # low latency backend logs from s3
- ./bin/dev.sh # frontend and backend dev loop
- ./bin/delete.sh # delete backend infra
- ./bin/check.sh # lint frontend and backend
- ./bin/cli.sh # rebuild and invoke cli locally