Boundaries are available on Enterprise plans
As codebases scale, managing the relationships between different packages and modules becomes increasingly difficult.
Boundaries solves that problem by empowering teams to define and enforce "boundaries" that control where specified code can be used.
For example, you could use Boundaries to:
- Restrict usage of a sensitive package, such as compliance or payments, to approved parts of the codebase. Teams wishing to use that package in other parts of the codebase would need to engage with the owners of the package before making use of it.
- Disallow your team to use a deprecated module. Boundaries won't allow new code to depend on the deprecated module and you can provide a message that explains what your team can use instead
Some of the unique features of Boundaries include:
- Colocated definitions: Boundaries can be defined alongside the packages, directories, and modules (files) that they apply to, so they're always up to date
- Flexible approaches: Define boundaries that apply to packages, directories, or even specific modules (files)
- Custom messages: Every definition supports optional messaging that can be used to communicate why a boundary exists, and where to find more information
To get started with Boundaries, follow the instructions on the Getting Started page.
Note: Boundaries is available for Enterprise teams. To add it to your contract or upgrade to Enterprise, contact us
At the core of Boundaries is the ability to define boundaries in your codebase.
You can learn more about defining boundaries on the Boundaries Definitions page.