This repository will host the implementation following the book Zero to production in Rust.
GitHub of the books implementation.
For this project the actix-web was chosen as the go-to web framework due to it being aimed at production usage,
extensive use and large community.
baconin replacement ofcargo-watchwhich is no longer maintained. Install withcargo install baconllvm-covto compute code coverage.- Official
clippyfor linting. Install withrustup component add clippy - Official
rustfmtfor linting. Install withrustup component add rustfmt cargo-auditfor security vulnerability checking. Install withcargo install cargo-auditsqlx-clifor database migrations. Requires an environment variable with a value likepostgres://${DB_USER}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_NAME}.
Podman is being used as the container runtime for the development of the project with the goal to also learn Podman native development.
Because of this Containerfile is being used instead of Dockerfile.
The definition between these two file types are the same and Podman supports both, but Containerfile is the official
Podman container definition file so it is being used.
The same goes for .containerignore and the Docker equivalent .dockerignore.
The book recommends the use of Postmark, since now it only offers a free trial I will be using Mailersend which offers a free tier with up to 3000 free emails a month.
Valkey is an open source fork of Redis before Redis changed their license from open source to source available. This alternative can be used as a drop in replacement so it was chosen to keep with the open source nature of this project.
Username: admin
Password: everythinghastostartsomewhere