effect is the missing standard library for TypeScript. effect provides everything that you need to build type-safe production typescript applications.
Course content
This course will guide you from 0 knowledge of effect to build your first API with Runtime, Layer, Config and more. It shows you how to implement a single API request using effect.
This may sound simple, but in reality you need to account for a lot of configurations and possible errors. effect makes everything type-safe, maintainable, testable:
- Error handling
- Configuration (environmental variables)
- Mocking and testing (dependency injection)
- Organizing and composing services
How the course is organized
The course is organized in small self-contained lessons. Each lesson introduces 1 single new concept.
We will explore why using plain fetch and Promise is not enough. For each problem we explore the solution offered by effect, how it works, why it's needed, and how it integrates with the other modules to build a complete app.
Course outline
These are some of the concepts you will learn:
- Creating and running effects (
Effecttype) - Type safe error handling
- How to use
pipeandgento compose effects - How to use
Schemato parse request responses - Manage environmental variables with the
Configmodule - Testing and mocking using dependency injection
- Composing services using
ContextandLayer - How to build your custom runtime using
ManagedRuntime
We will learn this step by step. Every new module or API will be introduced only when required, specifically when implementing a missing feature of solving a problem with the app.
