Define services using `Effect.Service` with accessors and dependencies.
Implement error handling with `Schema.TaggedError` and `catchTag`/`catchTags`.
Brand entity IDs using `Schema.UUID.pipe(Schema.brand(...))`.
Use `Effect.fn` for service methods to enable automatic tracing.
Compose layers with `Layer.mergeAll` and declare dependencies in the service.
Handle `Option` types explicitly with `Option.match` or `Option.getOrElse`.
Manage frontend state with Effect Atom, using `Atom.make` and React hooks.