Effect , Step by Step

61 lessons · 25 chapters · Free and in your browser

Learn Effect,
one passing test
at a time.

Effect, Step by Step is a 61-lesson course in your browser. Each lesson is a failing test in a real Monaco editor. Write the implementation until the test passes, then move on. Hover types come from the published effect package, so the editor shows the same signatures as your IDE.

Lessons
61
Chapters
25
Price
Free
License
MIT
02 / How it works

How the course works.

  1. 01

    Lessons are tests

    Each lesson opens with a failing test and a starting file. Write the implementation until the test passes. The test states what to build.

  2. 02

    Real types from the published package

    The editor is Monaco, configured with the typings from the published effect package. Hovering a function shows the same signature your IDE would.

    Effect<A, E, R>
  3. 03

    Lessons are self-contained

    Each lesson is independent. Jump to lesson 46 on Layer.scoped without reading the previous 45.

  4. 04

    Covers the production primitives

    Streams, fibers, scope, Semaphore, PubSub, TestClock, Cause, sandbox. The primitives most tutorials skip.

03 / Outline

From Effect.succeed to PubSub, ManagedRuntime, and Cause.sandbox.

  1. 01

    Foundations

    Why Effect Result Types & Errors Effect Basics

    6 lessons
  2. 02

    Working with Effects

    Generators Error Handling Composition Running Effects

    8 lessons
  3. 03

    Modeling Data & Errors

    Tagged Data Pattern Matching Schema

    6 lessons
  4. 04

    Services & Dependency Injection

    Context & Layers Service Patterns Config & Tracing

    7 lessons
  5. 05

    Testing

    Testing with Effect

    3 lessons
  6. 06

    Resilience & Streams

    Resilience Streams

    4 lessons
  7. 07

    Concurrency & State

    Fibers & Concurrency Mutable State Coordination Resources

    13 lessons
  8. 08

    Errors at Depth

    Cause & Sandbox

    1 lessons
  9. 09

    Real-World Capstones

    Case Studies

    3 lessons
  10. 10

    Production

    Project Setup Integration Runtime

    10 lessons
04 / Prerequisites

TypeScript familiarity. Nothing else.

Lessons run from 90 seconds to 30 minutes. Start at lesson 1, or jump to any topic and stop after any lesson.

Scope

Primitives, not a finished app.

The course covers Effect, Layer, Schema, Stream, and the concurrency model. Use them to build your own apps.

Start whenever

Lesson 1 takes about 90 seconds.

Start with Lesson 1