Introduction
- Before You Begin: Installation & Setup
Part I – Getting Ready: TypeScript and Async Basics
- Why another library? The problems we’re solving
- TypeScript fundamentals you’ll actually use in Effect
- Just enough FP vocabulary: pure vs impure, data vs behavior
- Async and errors in plain TypeScript
- Part I Exercises
Part II – First Steps with Effect
- Meet the Effect type
- Creating and running simple Effects
- Composing Effects instead of nesting async/await
- Typed errors that beginners can understand
- Part II Exercises
Part III – Dependencies, Services, and Real Programs
- Managing dependencies with services and layers (gentle)
- Talking to the outside world: Node platform basics
- Resource Safety:
acquireReleaseand Scopes - Your first CLI with
@effect/cli - Working with HTTP and JSON
- Part III Exercises
Part IV – Patterns You Can Apply at Work
- Structuring a small application
- Streams and background work (optional but approachable)
- Testing Effect code
- From scripts to services
- Structured Logging with Effect
- Part IV Exercises
Part V – Growing Beyond Beginner Level (Optional Advanced Chapters)
- Concurrency and fibers in practical terms
- Config, environment, and secrets
- Common Mistakes and How to Avoid Them
Quick Reference Cheat Sheet
- Core constructors
- Running effects
- Common combinators
- Error handling patterns
- Typed errors
- Services and layers
- References