Software Alternatives, Accelerators & Startups

Bazel

Bazel is a tool that automates software builds and tests.

Bazel

Bazel Reviews and Details

This page is designed to help you find out whether Bazel is good and if it is the right choice for you.

Screenshots and images

  • Bazel Landing page
    Landing page //
    2024-07-17

Features & Specs

  1. High Scalability

    Bazel is designed to handle large codebases and complex dependency graphs efficiently, which makes it suitable for projects with millions of lines of code.

  2. Incremental Builds

    Bazel supports incremental builds by only rebuilding parts of the project that have changed, thus saving time and computational resources.

  3. Cross-Platform Support

    Bazel supports different platforms including Linux, MacOS, and Windows, enabling consistent build processes across diverse development environments.

  4. Reproducible Builds

    It ensures that the same source code will yield identical build outputs, which is beneficial for debugging and ensuring consistency across different environments.

  5. Extensibility

    Bazel is highly extensible, allowing developers to define custom build rules and macros to fit their specific needs.

  6. Wide Language Support

    Out of the box, Bazel supports many programming languages such as Java, C++, Python, and Go, with the ability to extend to other languages.

Badges & Trophies

Promote Bazel. You can add any of these badges on your website.

SaaSHub badge
Show embed code
SaaSHub badge
Show embed code

Videos

Kebenaran dari Powerbank Bazel 450 Series

BazelCon 2019 Day 2: Half-Day Bazel Bootcamp (Part 1)

What's new in Bazel build and Gerrit Code Review

Social recommendations and mentions

We have tracked the following product recommendations or mentions on various public social media platforms and blogs. They can help you see what people think about Bazel and what they use it for.
  • Designing for Scale: Repository Structures that Boost Software Development Productivity
    The solution isn't always a knee-jerk switch to a polyrepo. As radwanalmsora highlighted in the discussion, more often it's about investing in robust tooling for your monorepo. Tools like Bazel, Nx, or Turborepo can build graphs to understand dependencies, ensuring CI only runs affected targets. Combined with CODEOWNERS files, these tools enable even massive monorepos (think Google or Meta scale) to function... - Source: dev.to / 2 months ago
  • Monorepo vs Multi-Repo: Why AI Agents Tip the Scale
    Monorepo gave you atomic cross-service changes, a single dependency graph, unified CI/CD, and zero version skew between internal libraries. The cost was large clone sizes, slower CI without build caching, complex permission models, and the need for specialized tooling like Bazel, Pants, Nx, or Buck2 to keep builds fast. - Source: dev.to / 2 months ago
  • Swift and Cute 2D Game Framework: Setting Up a Project with CMake
    I really recommend Bazel (https://bazel.build). - Source: Hacker News / about 1 year ago
  • Why Is This Site Built with C
    Agree regarding easiness of building rust (`cargo build`), extremely satisfying (git clone and cargo build...) Does anyone have any comments on Bazel[1] because I'm kind of settling on using it whenever it's appropriate (c/c++)?.. [1] https://bazel.build/. - Source: Hacker News / over 1 year ago
  • 7 Ways to Use the SLSA Framework to Secure the SDLC
    To achieve reproducibility, your build process must control for environmental differences like timestamps, file ordering, or machine-specific configurations. Tools like Bazel or Nixprovide deterministic build systems that lock down these variables. For instance, Bazel uses a content-addressable cache, meaning the same source code and dependencies always result in the same build outputs, even when run on different... - Source: dev.to / over 1 year ago
  • Contributing To Open Source - C++ Edition
    Despite following all the steps (on both Windows and Unix), I couldn't get the cmake build to succeed. After several hours of debugging, I decided to try another build method provided by the project, using bazel, which was much simpler. - Source: dev.to / almost 2 years ago
  • How to effectively work in big codebases
    Many big companies have built their own tools to reign in this complexity and make it easier and faster for developers to work on large, multi-language code bases. Meta has buck, Amazon has brazil, and Google has bazel. But from my experience, especially, with brazil, these tools also have some rough edges, so understanding how they work can go a long way. - Source: dev.to / almost 2 years ago
  • Ask HN: Compiler speed-up or Build Caching tool. Hard to find?
    Probably not what youโ€™re thinking of, but Bazel? https://bazel.build. - Source: Hacker News / about 2 years ago
  • Hello World
    Wow, if you curl it, there's a lot of boilerplate code there. Maybe built using Bazel? https://bazel.build. - Source: Hacker News / over 2 years ago
  • How to write unit tests in C++ relying on non-code files?
    This is a problem that Bazel (https://bazel.build) solves in a very convenient way. You can just keep using the paths relative to the repository root, and as long as you properly declare your test needs that file it will access it without problems. Or you can use the runfile libraries to access them too. - Source: Hacker News / over 2 years ago
  • My first Software Release using GitHub Release
    When doing research for this lab exercise I looked at both vcpkg and conan. Both are package managers that would automate the installation and configuration of my program with its dependencies. However, when it came to releasing and sharing my program my options were limited. For example, the central public registry for conan packages is conan-center, but these packages are curated and the process is very... - Source: dev.to / over 2 years ago
  • Declarative Gradle is a cool thing I am afraid of: Maven strikes back
    NOTE: I wonโ€™t mention SBT and Leiningen here because, with all due respect, they are niche build tools. I also wonโ€™t discuss Kobalt for the same reason (besides, itโ€™s no longer actively maintained). Additionally, I wonโ€™t touch upon Bazel and Buck in this context, mainly because Iโ€™m not very familiar with them. If you have insights or comments about these tools, please feel free to share them in the comments ๐Ÿ‘‡. - Source: dev.to / over 2 years ago
  • A Modern C Development Environment
    > None of this solves C's only REAL problem (in my opinion) which is the lack of dependency management. Bazel solves this really nicely, I know some people have strong opinions on it but I cannot recommend it enough https://bazel.build/. - Source: Hacker News / almost 3 years ago
  • Go Dependency management in large company projects - How do you do it?
    I know that some projects like cockroach use custom build tools like bazel. But we actually really like to use to be able to build our projects simply with the great go toolchain and don't really aim to dive deep into custom build solutions. Source: about 3 years ago
  • What was used to build C++ programs before Cmake?
    Not everyone uses CMake. In the past I've used bazel, make, premake, Unreal Build Tool, shell scripts, Visual Studio, FASTBuild and other tools. Source: about 3 years ago
  • What was used to build C++ programs before Cmake?
    Bazel is a Google project that showcases first-class support for the major languages Google uses (C++, Java, Go), and it'd probably have replaced CMake if it weren't written in Java, which brought a host of technical challenges. Then those challenges were fixed and Oracle threatened to bring legal challenges instead. Source: about 3 years ago
  • Is there anything similar to Yarn or NPM but for Gradle?
    There is something called Bazel, which is an alternative for Gradle. Https://bazel.build/. Source: about 3 years ago
  • Caching of GitLab CI is too slow for rust build.
    We have the same issue at work. Layer based caching wasn't viable for us. We've been working on switching to bazel. Source: about 3 years ago
  • Rust analyzer without cargo.toml in neovim Coc
    I assume they're referring to the Bazel build system. Source: about 3 years ago
  • Reason to use other Build Tool than Make?
    There're tools which do this, for example https://bazel.build/, and https://buck2.build/ However they have a learning curve, which might be steep for some folks. Source: about 3 years ago
  • Android Kernel Compiling From Source
    Since Android's official site says, Android 13 introduced building kernels with Bazel, replacing build/build.sh, can I still build kernel with old method? Source: over 3 years ago

Do you know an article comparing Bazel to other products?
Suggest a link to a post with product alternatives.

Suggest an article

Bazel discussion

Log in or Post with

Is Bazel good? This is an informative page that will help you find out. Moreover, you can review and discuss Bazel here. The primary details have not been verified within the last quarter, and they might be outdated. If you think we are missing something, please use the means on this page to comment or suggest changes. All reviews and comments are highly encouranged and appreciated as they help everyone in the community to make an informed choice. Please always be kind and objective when evaluating a product and sharing your opinion.