VirtusLab

Bazel Knowledge Hub

A place to learn Bazel. Backed by 15+ years of experience, 100 projects delivered.

Voxel-style illustration of learning and building with Bazel

The Bazel Book

The industry's challenge is not a lack of commitment to this promise, but the reality that business growth has consistently outpaced the systems and operating models needed to deliver it at scale.

Who this is for

You have written software before, in some language, with some build tool. You do not need prior Bazel experience. If you already run bazel build daily, skim the early levels and slow down where the mental model bites.

Different readers enter at different doors:

Want a full, agent-ready version?

Sign up to get access to complete, AI-readable content and repos.

Contact us

How the book is organized

The spine is a progressive path. Read it in order, because later levels build on earlier ones:

BASICS

What Bazel is, how to read a repo, how to run it, how it thinks.

ADVANCED

Configuring and extending Bazel.

EXPERT

Debugging and operating Bazel at scale through Levels 5–6.

Around the spine sit reference guides you look up as needed, not front to back: Handbooks, Language Guides, Migration Paths, and Domain Topics. The Monorepo Handbook is a build-tool-neutral repository-engineering reference: Bazel appears where it is relevant, not as the assumed answer to every problem.

Two kinds of articles

  1. 1

    Concept articles teach one idea and the model behind it. Most of the book.

  2. 2

    Walkthrough articles build one complete thing end to end - a real ruleset, a maintainable workspace - applying concepts you have already met. They are the payoff chapters; you leave with something that runs.

How to read it

Read the spine in order. Jump freely inside the references. There is no wrong way to read this — if a section confuses you, an earlier one probably holds the missing piece, so follow the links back.

Concepts are introduced shallow-but-correct first and revisited with depth later. When an article says "for now you only need to know X," take it at its word and keep moving.

Reading aids

Focus dots - they mark how much each topic matters at this level:

  • CORE - must-know at this level
  • RECOMMENDED - most will need it
  • EXTRA - niche, safe to skip

If you are short on time, read the core path first; come back for recommended and extra material when the problem in front of you asks for it.

Callouts - they highlight structure: a key takeaway, a "think it through" pause, or deferrable detail.

Inline links - rendered as small chips they allow a jump to related topics.

Runnable examples - many articles link to a small snippet or a complete example project you can build or run yourself, to reproduce a behavior or an error firsthand.

Quizzes - at the end of many articles check the article's core points, not trivia.

How we teach errors

Bazel's errors are famously terse, so reading them is a skill this book teaches directly. Where it matters, we show the real error output, explain how to read it (which phase failed and why), then give you a way to reproduce it. Code that is intentionally broken or is an old, discouraged pattern is marked so you never copy it by accident.