Skip to main content
Version: ZIO 1.x


The ZIO library lets you easily solve problems in a variety of areas, including:

  • Asynchronous Programming — Write asynchronous code as easily as synchronous code, handling all errors and never leaking resources.
  • Concurrent Programming — Write concurrent code that scales easily, without locks or deadlocks, with maximal laziness and resource safety.
  • Parallelism — Trivially partition work among many parallel fibers to make short work of CPU-intensive processing.
  • Queueing — Build work processing flows and ration scarce resources with powerful asynchronous queues.
  • Retrying — Create and test robust retry strategies that make your application resilient to transient failures.
  • Scheduling — Schedule repeating work, like report generation or email notifications, using flexible, composable schedules.
  • Streaming — Handle huge or infinite amounts of data in constant heap space with efficient, lazy, concurrent streams.
  • Testing - Easily test effectual programs with powerful combinators, built-in property based testing, and seamless mocking capabilities.

Explore the pages above and learn how the simple, powerful building blocks in ZIO help you solve problems in these critical areas.