Code for "Zero To Production In Rust", a book on API development using Rust.
Find a file
2021-12-28 17:51:36 +01:00
.github/workflows Check prepared data is up-to-date. 2021-09-27 18:12:59 +02:00
configuration Use 127.0.0.1 instead of localhost. 2021-10-07 21:56:40 +01:00
migrations Implement password hashing using Argon2, with PHC string format as storage encoding. 2021-08-29 22:09:43 +02:00
scripts Do not use backticks - they lead to the script trying to execute the quoted command. 2021-12-28 12:20:13 +01:00
src Fix clippy errors 2021-12-28 17:51:36 +01:00
tests/api Update to latest version of actix-web, tracing-bunyan-formatter and tracing-subscriber. Use tokio macros instead of actix-web's macros. 2021-12-26 17:03:38 +01:00
.dockerignore Refactor structure to use one root branch per chapter. 2020-12-05 17:19:11 +00:00
.env Refactor structure to use one root branch per chapter. 2020-12-05 17:19:11 +00:00
.gitignore Scaffolding 2020-08-23 11:34:29 +01:00
Cargo.lock Update dependencies. 2021-12-28 13:08:43 +01:00
Cargo.toml Update dependencies. 2021-12-28 13:08:43 +01:00
Dockerfile Update runtime image. 2021-09-30 21:24:23 +01:00
LICENSE-APACHE Add licensing information. 2021-06-06 14:11:19 +01:00
LICENSE-MIT Add licensing information. 2021-06-06 14:11:19 +01:00
README.md Add chapter 9 to the README. 2021-08-01 19:21:57 +01:00
spec.yaml Fix environment variable for application URL on DO. 2021-07-14 09:32:16 +01:00
sqlx-data.json Update query file. 2021-03-13 11:14:22 +00:00

Zero To Production / Code

Zero To Production In Rust is an opinionated introduction to backend development using Rust.

This repository serves as supplementary material for the book: it hosts snapshots of the codebase of our email newsletter project at end of each chapter.

Chapter snapshots

The master branch (where you are right now!) shows the project at the end of the last published chapter (Chapter 8, right now).

You can browse the project at the end of previous chapters by switching to their dedicated branches:

Pre-requisite

You'll need to install:

Launch a (migrated) Postgres database via Docker:

./scripts/init_db.sh

How to build

Using cargo:

cargo build

How to test

Using cargo:

cargo test 

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.