Articles
caution
These articles reflect the state of ZIO at the time of their publication. The code samples might be outdated, considering ZIO was early in development at the time they were written. However, the concepts are still relevant.
ZIO Core
- Wrapping impure code with ZIO by Pierre Ricadat (July 2019)
- Thread shifting in cats-effect and ZIO by Adam Warski (June 2019)
- Performant Functional Programming to the Max with ZIO by Mark Galea (May 2019)
- ZIO & Cats Effect: A Match Made in Heaven by John De Goes (April 2019)
- Beautiful, Simple, Testable Functional Effects for Scala (introducing ZIO Environment) by John De Goes (February 2019)
- Thread Pool Best Practices with ZIO by John De Goes (January 2019)
- Bifunctor IO: A Step Away from Dynamically-Typed Error Handling by John De Goes (May 2018)
Patterns and Best Practices
- Idiomatic dependency injection for ZIO applications in Scala by Pierre Ricadat (Nov 2024)
- The Tri-Z Architecture: a Pattern for Layering ZIO Applications in Scala by Pierre Ricadat (Aug 2024)
- Tuning ZIO for high performance by Pierre Ricadat (May 2024)
- Processing ZIO effects through a pipeline (September 2020)
- 5 pitfalls to avoid when starting to work with ZIO by Natan Silnitsky (Jan 2020)
ZIO STM
- How to write a concurrent LRU cache with ZIO STM by Jorge Vasquez (March 2020)
- Exploring the STM functionality in ZIO by Fredrik Skogberg (May 2019)
Testing
- Integration Testing by Andreas Gies (Feb 2021)
- Effective testing with ZIO Test (RC18) by Pavels Sisojevs (April 2020)
- Testing background process with ZIO by François Armand (March 2020)
- Effective testing with ZIO Test (RC17) by Pavels Sisojevs (January 2020)
- Speeding up time with ZIO TestClock by Tim Pigden (October 2019)
- Testing Incrementally with ZIO Environment by John De Goes (March 2019)
ZIO Streams
- ZIO Streams and JMS by Andreas Gies (October 2020)
- Building the Death Star with ZIO Stream by Juliano Alves (May 2020)
- Simulating IoT Events with ZIO Streams by Tim Pigden (November 2019)
ZIO Service Pattern
- Example of ZLayers being used in combination by Tim Pigden (March 2020)
- From idea to product with ZLayer by Pavels Sisojevs (March 2020)
- What are the benefits of the ZIO modules with ZLayers by Pascal Mengelt (March 2020)
- Decouple the Program from its Implementation with ZIO modules. by Pascal Mengelt (December 2019)
- Functional dependency injection in Scala using ZIO environments by Chiel van de Steeg (October 2019)
ZIO Use Cases
- Spring to ZIO 101 - ZIO CRUD by Adrian Filip (March 2020)
- Implement your future with ZIO by Pavels Sisojevs (December 2019)
- How to write a command line application with ZIO? by Piotr Gołębiewski (November 2019)
- Hacker News API Part 5 by Justin Heyes-Jones (April 2019)
- Building the Hangman Game using ScalaZ ZIO by Abhishek Srivastava (November 2018)
- Elevator Control System using ZIO by Wiem Zine El Abidine (September 2018)
Integration with Other Libraries
- Streaming microservices with ZIO and Kafka by Aleksandar Skrbic (February 2021)
- uzhttp + sttp for light-weight http and websockets updated for 1.0.1 by Tim Pigden (August 2020)
- Streaming all the way with ZIO, Doobie, Quill, http4s and fs2 by Juliano Alves (June 2020)
- Building a cool CLI with Decline for my ZIO App by Pascal Mengelt (May 2020)
- ZIO with http4s, Auth, Codecs and zio-tests (RC18) by Tim Pigden (April 2020)
- An Introduction to ZIO Kafka by Ziverge (April 2020)
- ZIO + Http4s: a simple API client by Juliano Alves (April 2020)
- What can ZIO do for me? A Long Polling example with sttp. by Pascal Mengelt (November 2019)
- Making ZIO, Akka and Slick play together nicely by Jakub Czuchnowski (August 2019)
- Combining ZIO and Akka to enable distributed FP in Scala by Pierre Ricadat (July 2019)
- tAPIr’s Endpoint meets ZIO’s IO by Adam Warski (July 2019)
- ZIO with http4s and doobie by Wiem Zine El Abidine (June 2019)
- Using 47 Degree's Fetch library with ZIO by Justin Heyes-Jones (May 2019)
Contribution
- Lessons Learned From Being a ZIO Contributor by Salar Rahmanian (September 2020)
Benchmarking and Comparison
- Benchmarking Functional Error Handling in Scala by Marcin Rzeźnicki (April 2020)
- Scalaz 8 IO vs Akka (typed) Actors vs Monix (part 1) + part 2 + part 3 by Adam Warski (June 2018)