Building a great web application development experience with Bazel
summary
Bazel JSON trace profiling identifies the slowest actions, leading to a Roadrunner toolchain that moves transpile/type work into Bazel with TS project + SWC, swaps Webpack loaders, and replaces ts-jest with swc-jest to cut builds ~50% and tests ~70%. iBazel plus Vite enables hot module replacement for fast iteration loops, Aspect.build rule repos (rules_nodejs, rules_webpack, rules_js) supply Bazel-friendly targets, and a custom repository rule parses package.json (with Gazelle + pnpm integration) to keep dependency management simple and consistent.
AI-written summary · about
chapters (11)
- 0:00Introduction
- 3:50Bazel for JavaScript
- 7:43Build performance
- 10:11Roadrunner toolchain
- 12:16Faster builds
- 16:56Webpack and SWC
- 19:05Faster tests with SWC
- 20:53Simplifying Bazel
- 23:44Dependency management
- 25:49Balancing simplicity
- 26:10Q&A
related talks
37mSupercharge Your Builds with Bazel
11mPerformant Bazel Builds for Web Monorepos at Scale
20mThe Inner Workings of Vite Build
25mThe Eternal Sunshine of the Zero Build Pipeline
15mVite: The next generation frontend tooling
30mExcuse Me, I Have to Assemble the Frontend
26mThe Future of Front End Tooling Is Here
39mMicro Modular Architecture with Bazel
