Advanced
Most applications only need the model in Dependencies. These topics cover publishing services for other applications and enforcing effect boundaries.
In this section
- Providing services from a package: authoring a library whose callers you will never see, and the contract shape that makes it composable.
- Tutorial: Creating reusable services: define your own named service contract, the way the built-in services are defined, instead of tying a dependency to one record field name.
- Write an effect-boundary analyzer: detect direct access to an effect behind your service contract and run the check from a consumer's build.

