Skip to main content

Service

Services are the operational layer of the project.

Why services exist

They provide the intended way to interact with a system or concept.

Instead of letting every part of the code or tooling manipulate raw data directly, services expose the approved behavior for that domain area.

What makes a service different

Compared with data or repositories, services are responsible for doing work.

They often:

  • enforce rules
  • coordinate scene interactions
  • expose higher-level operations
  • hide internal implementation details behind interfaces

Why this helps users and integrators

When responsibilities are clear, it becomes easier to answer questions like:

  • which system owns this behavior?
  • which object should I inspect first?
  • where should a new integration point live?

Practical rule of thumb

If you are trying to understand how a feature behaves, the service layer is usually the right place to look after you understand the data it works with.