(internal description)
- Top level page OR Dropdown
- Inner Page (if dropdown)
- Headings on Inner Page
- Inner Page (if dropdown)
(new devs start here, introduces the what and why)
- Introduction
- Why Effect?
- Guiding (Principals?)
- Immutability
- Dependency Injection
- Quickstart
(the super “core” stuff, explains Effect
and basic usage. Would ideally be read by a new dev in its entirety, in order)
- The Effect Data Type
- Constructing Effects
- Running Effects
- Building Pipelines
- Providing Context With Services
(now that we understand the basics, the reader can start branching out here. This section should answer the reader’s next questions: “how do log?” there’s a section for that, “how do I build complex dependency graphs?” there’s a section for that, etc…)
- Escaping Callback Hell
- Generators + Do Notation
- Error Handling
- Two Types of Errors
- Expected Errors
- Building Errors
- Handling Errors
- Unexpected Errors
- Retrying
- Managing Complex Dependency Graphs
- Layers
- Resource Management
- Scope
- Pool
- Observability
- Logging
- Tracing
- Configuration
- Interruption Model
- …
- Concurrency
- Queue
- Hub
- Testing
- Batching & Caching
- Scheduling
- …
(I think of these more like one-off “articles” related to Effect that don’t introduce any new code)
- Writing ‘idiomatic’ Effect
- Integrating Effect With Existing Code
- Integrations
- React
- Express
- …
(All of the other stuff in the Effect ecosystem that is “high level’ and regularly useful)
- Libraries?
- Runtime Type Validation
- Schema
- Pattern Matching
- Match
- Duration
- Runtime Type Validation
- Types
- Option
- Either
- Data Structures
- HashMap
- HashSet
- Chunk
- ...
(Lower level features, put this lower so newer devs don’t get bogged down in it)
- Fiber
- …
(Walkthrough building simple projects in Effect)
- …
(Other stuff)
- FAQ
- Coming From ZIO
- Glossary