Skip to content

pedrorpmoleiro/zero2prod

Repository files navigation

Zero to production in rust

Rust Security audit

This repository will host the implementation following the book Zero to production in Rust.

GitHub of the books implementation.

Email newsletter management cloud native application

Web Framework

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.

Tools used during development

  • bacon in replacement of cargo-watch which is no longer maintained. Install with cargo install bacon
  • llvm-cov to compute code coverage.
  • Official clippy for linting. Install with rustup component add clippy
  • Official rustfmt for linting. Install with rustup component add rustfmt
  • cargo-audit for security vulnerability checking. Install with cargo install cargo-audit
  • sqlx-cli for database migrations. Requires an environment variable with a value like postgres://${DB_USER}:${DB_PASSWORD}@${DB_HOST}:${DB_PORT}/${DB_NAME}.

Container images

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.

Email sending API

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 instead of Redis

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.

Admin credentials

Username: admin Password: everythinghastostartsomewhere

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published