Skip to main content

Where Next

You now know what ZIO Blocks is, how its blocks are designed, and the four blocks most applications start with. The rest of the documentation has four kinds of pages, each for a different moment.

How the Documentation Is Organized​

Each kind of page answers a different question:

Kind of pageRead it when you want to...
TutorialsLearn a block step by step, from nothing
How-to guidesSolve one specific task in a project
Migration guidesMove existing code from another Scala library
ReferenceLook up every type and method of a block

Pick a Tutorial by Goal​

The tutorials are the natural next step. Each one builds a small program from scratch, and they are listed here by what you want to do:

You want to...Start with
Read and write JSONYour First Schema: Round-Trip a Type Through JSON
Change a data type without breaking old dataEvolve Your Data
Close files and connections safelyCompile-Time Resource Safety with Scope
Load configuration into case classesBuild a Typed Configuration Loader
Run asynchronous code without blocking threadsGetting Started with Async
Process a large file piece by pieceYour First Streaming Pipeline
Store case classes in a databaseBuild Your First Database Repository on SQLite
Render a web pageRender Your First Server-Side HTML Page
Add logs, traces and metricsInstrument a Program with Logs, Traces and Metrics
Combine several blocks into one small serviceBuild a Small JSON Backend from Blocks

Get Help​

If something is unclear or does not work as described, ask on the ZIO Discord or open an issue in the GitHub repository. The API documentation lists every public type of every block.