This project is a reference implementation of a production-ready backend API built with Rust and the Actix-Web framework. It serves as a codebase demonstrating the development of a newsletter subscription service, encompassing the management of subscriber sign-ups, email confirmations, and campaign delivery.
The project highlights a layered architecture that separates concerns into handler, service, and repository layers. It utilizes an actor-based concurrency model for handling HTTP requests and employs trait-based abstractions to decouple business logic from external dependencies, such as email service providers.
The implementation features a PostgreSQL backend using an asynchronous database driver with compile-time SQL query validation and connection pooling. It includes a comprehensive integration test suite that uses isolated database instances for each test and implements environment-based configuration for deployment across different stages.