Project: /_project.yaml Book: /_book.yaml
First, thank you for contributing to the Bazel ecosystem! Please reach out to the Bazel community on the bazel-discuss mailing list{: .external} to share your project and its suggested name.
If you are building a Bazel related tool or sharing your Skylark rules, we recommend following these guidelines for the name of your project:
See Deploying new Starlark rules in the docs.
This section applies if you are building a tool to enrich the Bazel ecosystem. For example, a new IDE plugin or a new build system migrator.
Picking a good name for your tool can be hard. If we’re not careful and use too many codenames, the Bazel ecosystem could become very difficult to understand for newcomers.
Follow these guidelines for naming Bazel tools:
Prefer not introducing a new brand name: “Bazel” is already a new brand for our users, we should avoid confusing them with too many new names.
Prefer using a name that includes “Bazel”: This helps to express that it is a Bazel related tool, it also helps people find it with a search engine.
Prefer using names that are descriptive about what the tool is doing: Ideally, the name should not need a subtitle for users to have a first good guess at what the tool does. Using english words separated by spaces is a good way to achieve this.
It is not a requirement to use a floral or food theme: Bazel evokes basil, the plant. You do not need to look for a name that is a plant, food or that relates to “basil.”
If your tool relates to another third party brand, use it only as a descriptor: For example, use “Bazel migrator for Cmake” instead of “Cmake Bazel migrator”.
These guidelines also apply to the GitHub repository URL. Reading the repository URL should help people understand what the tool does. Of course, the repository name can be shorter and must use dashes instead of spaces and lower case letters.
Examples of good names:
Examples of names to avoid:
Note that these recommendations are aligned with the guidelines{: .external} Google uses when open sourcing a project.