Skip to main content
ZIO

Type-safe, composable asynchronous and concurrent programming for Scala

Get Started

Features

High-performance

Build scalable applications with minimal runtime overhead

Type-safe

Use the full power of the Scala compiler to catch bugs at compile time

Concurrent

Easily build concurrent apps without deadlocks, race conditions, or complexity

Asynchronous

Write sequential code that looks the same whether it’s asynchronous or synchronous

Resource-safe

Build apps that never leak resources (including threads!), even when they fail

Testable

Inject test services into your app for fast, deterministic, and type-safe testing

Resilient

Build apps that never lose errors, and which respond to failure locally and flexibly

Functional

Rapidly compose solutions to complex problems from simple building blocks

Ecosystem

A rich ecosystem of libraries built on ZIO to solve real-world problems

🌐

ZIO HTTP

Type-safe, purely functional HTTP library for building high-performance web applications and APIs

  • High-performance server based on Netty
  • Type-safe and type-driven endpoints
  • Support for both imperative and declarative endpoints
  • Designed for cloud-native environments
  • Support for both server and client applications
  • WebSocket support for real-time applications
  • Middleware system for cross-cutting concerns
  • Integration with ZIO Schema for automatic codecs
  • Built-in support for streaming responses
πŸ”—

ZIO Streams

Powerful, composable, and type-safe streaming library for working with large or infinite data

  • Process infinite streams with finite memory resource
  • Automatic backpressure handling
  • Rich set of stream combinators
  • Non-blocking and asynchronous processing
βœ…

ZIO Test

Feature-rich testing framework with powerful assertions and property-based testing

  • Property-based testing out of the box
  • Deterministic testing of concurrent code
  • Test aspects for reusable configurations
  • Integration with JUnit and other frameworks
πŸ”’

ZIO STM

Software Transactional Memory for safe, composable concurrent programming

  • Atomic, isolated transactions
  • Composable concurrent operations
  • No deadlocks or race conditions
  • Automatic retry of interrupted transactions
🧬

ZIO Schema

Declarative schema definitions for data structures with automatic derivation

  • Reification of data structures
  • Manual and automatic schema derivation
  • Built-in codecs for JSON, Protobuf, Avro, and Thrift
  • Schema transformations and migrations
βš™οΈ

ZIO Config

Type-safe, composable configuration management with automatic documentation

  • Type-safe configuration descriptions
  • Multiple source support (files, env vars)
  • Automatic documentation generation
  • Validation with detailed error reporting
πŸ“

ZIO Logging

High-performance, structured logging with contextual information

  • Structured logging for ZIO applications
  • Multiple backend support (SLF4J, JPL, Console)
  • Context-aware logging with MDC support
  • Log correlation across async boundaries

Learn ZIO with Zionomicon

The comprehensive guide to building scalable applications with ZIO

Zionomicon stands as the comprehensive guide to mastering ZIOβ€”the game-changing library that's revolutionizing how developers build robust Scala applications. It takes you from the fundamentals to advanced topics, teaching you how to build concurrent, resilient, and testable applications.

In Zionomicon, you'll master:

  • Modeling complex business logic using ZIO's effect system
  • Error handling and resource management with ZIO
  • Concurrent and asynchronous programming patterns
  • Building predictable and testable applications
  • Structured dependency injection using ZIO's layer system
  • And much more to explore!
Zionomicon Book Cover

Our Sponsors

ZivergeBrilliant solutions for innovative companies
Septimal MindInventing productivity