Skip to main content
Aspect maintains a broad portfolio of open-source Bazel rulesets, tools, and examples. Most repositories live in the aspect-build GitHub org; some have been donated to the bazel-contrib org for community co-maintenance. See Contributing for our contribution philosophy and prioritization framework.

Python

RepositoryDescription
rules_pyHigh-performance Python rules with native uv integration, strict hermeticity, and optimized OCI image layer support. Drop-in replacements for py_binary, py_library, and py_test.

JavaScript and TypeScript

RepositoryDescription
rules_jsHigh-performance Bazel rules for JavaScript and Node.js using a pnpm-based package layout. The foundation of Aspect’s JS ecosystem.
rules_tsCanonical Bazel rules for TypeScript, built on rules_js. Provides ts_project for transpilation and type-checking.
rules_swcBazel rules for the SWC Rust-based JavaScript compiler — Babel-compatible transformations at ~20× the speed.
rules_esbuildBazel rules for the esbuild bundler with a hermetic toolchain — no npm install required.
rules_webpackBazel rules for Webpack, for teams migrating from existing Webpack builds.
rules_rollupPure-Starlark Bazel rules for the Rollup bundler, compatible with the rules_js ecosystem.
rules_terserBazel rules for the Terser JavaScript minifier.
rules_jestBazel rules to run tests with the Jest test runner.
rules_jasmineBazel rules to run tests with the Jasmine test framework.
rules_cypressBazel rules to run end-to-end tests with Cypress.
rules_nodejsBazel rules for fetching the Node.js binary and @bazel/runfiles. Long-term maintained by Aspect under bazel-contrib.

Build File Generation

RepositoryDescription
aspect-gazellePre-compiled Gazelle binaries bundling BUILD file generators for Python, JavaScript & TypeScript, Go, Protobuf, C/C++, and Starlark, the Orion host for AXL-based custom generators, plus gitignore support, file-based caching, and Watchman-powered watch mode. See How to extend Gazelle.

Linting and Formatting

RepositoryDescription
rules_lintRuns linters and formatters as standard Bazel actions across 20+ tools (ESLint, Prettier, Ruff, gofmt, and more), with Remote Execution and Remote Cache support. See Linting & Formatting.

Images and Containers

RepositoryDescription
rules_ociBazel rules for building OCI container images without Docker. Built by Aspect under bazel-contrib in collaboration with Google.

Examples and Templates

RepositoryDescription
bazel-examplesA polyglot reference monorepo demonstrating Bazel at scale across Go, Python, Java, JavaScript, Rust, Ruby, and more. Also the live test bed for Aspect’s CI integrations.
aspect-workflows-templateScaffold template for bootstrapping an Aspect Workflows project.
bazel-startersStarter template repositories for common languages to get up and running with Bazel quickly.

Aspect CLI

RepositoryDescription
aspect-cliA programmable task runner built on top of Bazel. Supports custom tasks via the Aspect Extension Language (AXL) — a Starlark dialect.

Utilities and Libraries

RepositoryDescription
toml.bzlA small Bazel library for consuming TOML files in repository rules, following the API convention of Bazel’s built-in json module.

Under bazel-contrib

Projects Aspect authors or maintains under the community bazel-contrib org:
RepositoryDescription
bazel-libCommon utility rules and functions for writing Bazel rules in Starlark. Originally authored by Aspect; donated to bazel-contrib.
publish-to-bcrAutomation for publishing Bazel module releases to the Bazel Central Registry. Originally built by Aspect; donated to bazel-contrib.

Contracted Maintenance

Projects owned by third parties that Aspect maintains under contract:
RepositoryOwnerDescription
rules_apkoChainguardBazel rules for apko — builds OCI images from APK packages without a Dockerfile.