Overview
It’s difficult to structure, maintain, and work in large JavaScript codebases.
Modern monorepo tooling has unlocked the ability to reach enterprise scale, but scaling an equally amazing developer experience can be hard.
We want to change that.
Get started in seconds with our quickstart guide.
Features
Commonality is an open-source tool to help you structure your codebase for enterprise scale.
The most flexible monorepo linter
Scale a consistently amazing developer experience with a monorepo linter that can be customized to your standards and existing tools.
The easiest way to organize your dependency graph
Structure a dependency graph that’s easy to reason about no matter how many packages are in your project.
Commonality Studio
View any JavaScript project in Commonality Studio by running the command below:
With Commonality Studio you can visualize your project’s dependency graph and any constraints you may have created.
You can also view the tags and codeowners for any package in your project. Get a holistic view of overall conformance health and view the status of checks run on your packages.
What makes us different?
Zero lock-in
Commonality helps you scale your existing workflows, not replace them. Choose whatever tools work best for you and we’ll help you get the most out of them.
We will never wrap your tools or lock you in to ours. You’ll be able to delete Commonality from your project at any point without ever affecting any of your existing tools.
Strongly opinionated about anything
We make no assumptions about how your monorepo should be structured, which rules should be enforced, or the tools you should use.
Instead, we make it easy to create your own best practices and help you scale them across your project or organization. You’ll always have full control over how strongly rules are enforced.
Opt-in by default
Every feature in Commonality is designed to be adopted incrementally. You can start using it with a single package and scale it to an entire organization.
Selectively apply checks and constraints to groups of packages at your own pace. Adopt our rules or incrementally enforce your own best practices as you create them.
Was this page helpful?