Project: /_project.yaml
Book: /_book.yaml

# Getting Help

{% include "_buttons.html" %}

This page lists Bazel resources beyond the documentation and covers how to get
support from the Bazel team and community.

## Search existing material {:#search-material}

In addition to the documentation, you can find helpful information by searching:

* [Bazel user group](https://groups.google.com/g/bazel-discuss){: .external}
* [Bazel GitHub Discussions](https://github.com/bazelbuild/bazel/discussions){: .external}
* [Bazel blog](https://blog.bazel.build/)
* [Stack Overflow](https://stackoverflow.com/questions/tagged/bazel){: .external}
* [`awesome-bazel` resources](https://github.com/jin/awesome-bazel){: .external}

{% dynamic if request.tld != 'cn' %}
## Watch videos {:#videos}

There are recordings of Bazel talks at various conferences, such as:

* Bazel’s annual conference, BazelCon:
  * [BazelCon 2022](https://youtube.com/playlist?list=PLxNYxgaZ8RsdH4GCIZ69dzxQCOPyuNlpF){: .external}
  * [BazelCon 2021](https://www.youtube.com/playlist?list=PLxNYxgaZ8Rsc3auKhtfIB4qXAYf7whEux){: .external}
  * [BazelCon 2020](https://www.youtube.com/playlist?list=PLxNYxgaZ8RseRybXNbopHRv6-wGmFr04n){: .external}
  * [BazelCon 2019](https://youtu.be/eymphDN7No4?t=PLxNYxgaZ8Rsf-7g43Z8LyXct9ax6egdSj){: .external}
  * [BazelCon 2018](https://youtu.be/DVYRg6b2UBo?t=PLxNYxgaZ8Rsd3Nmvl1W1B4I6nK1674ezp){: .external}
  * [BazelCon 2017](https://youtu.be/3eFllvz8_0k?t=PLxNYxgaZ8RseY0KmkXQSt0StE71E7yizG){: .external}
* Bazel day on [Google Open Source Live](https://opensourcelive.withgoogle.com/events/bazel){: .external}

{% dynamic endif %}

## Ask the Bazel community {:#community}

If there are no existing answers, you can ask the community by:

* Emailing the [Bazel user group](https://groups.google.com/g/bazel-discuss){: .external}
* Starting a discussion on [GitHub](https://github.com/bazelbuild/bazel/discussions){: .external}
* Asking a question on [Stack Overflow](https://stackoverflow.com/questions/tagged/bazel){: .external}
* Chatting with other Bazel contributors on [Slack](https://slack.bazel.build/)
* Consulting a [Bazel community expert](/community/experts)

## Understand Bazel's support level {:#support-level}

Please read the [release page](/release) to understand Bazel's release model and
what level of support Bazel provides.

## File a bug {:#file-bug}

If you encounter a bug or want to request a feature, file a [GitHub
Issue](https://github.com/bazelbuild/bazel/issues){: .external}.
