Tagged articles
13 articles
Page 1 of 1
Bilibili Tech
Bilibili Tech
Sep 12, 2025 · Mobile Development

How We Turned Kotlin/Native on iOS into a First-Class Development Experience

This article details a deep engineering effort that transforms Kotlin Multiplatform on iOS into a first‑class development environment, covering the current pain points, root causes, a redesigned Bazel‑based build pipeline, parallel compilation techniques, performance gains, and future roadmap for mobile developers.

BazelBuild OptimizationKotlin Multiplatform
0 likes · 24 min read
How We Turned Kotlin/Native on iOS into a First-Class Development Experience
Bilibili Tech
Bilibili Tech
Jun 13, 2025 · Mobile Development

How Bilibili Scaled Kotlin Multiplatform Across Android, iOS, and HarmonyOS

This article details Bilibili's practical experience with Kotlin Multiplatform (KMP), covering the choice of Bazel as a build system, multi‑language interop, dependency injection, modular export, state‑machine driven single‑direction data flow, and the successful deployment of shared logic and UI across Android, iOS, and HarmonyOS platforms.

BazelCompose UICross‑platform
0 likes · 20 min read
How Bilibili Scaled Kotlin Multiplatform Across Android, iOS, and HarmonyOS
Continuous Delivery 2.0
Continuous Delivery 2.0
Jul 8, 2024 · Operations

Reformatting 100k+ BUILD Files at Google: The Story of Buildifier

This article recounts how Google engineer Laurent Le Brun and the Bazel team designed, built, and rolled out Buildifier—a code‑formatting tool that automatically reformatted over one hundred thousand BUILD files—detailing the technical challenges, testing strategies, large‑scale deployment, and the resulting improvements in code consistency and developer productivity.

BazelBuildifierCode Formatting
0 likes · 8 min read
Reformatting 100k+ BUILD Files at Google: The Story of Buildifier
Bilibili Tech
Bilibili Tech
Jun 25, 2024 · Mobile Development

Kotlin Multiplatform: Language, Compilers, and Engineering Practices

The article examines Kotlin Multiplatform’s language design, its three dedicated compilers, artifact structure, and plugin ecosystem, critiques Gradle’s build‑system shortcomings, and details the team’s Bazel migration that delivers faster incremental builds while highlighting trade‑offs and future improvements for Kotlin‑Native, JS inter‑op, and tooling.

BazelCompiler PluginsGradle
0 likes · 33 min read
Kotlin Multiplatform: Language, Compilers, and Engineering Practices
Continuous Delivery 2.0
Continuous Delivery 2.0
Jun 13, 2024 · Backend Development

Comparison of Meson and Bazel Build Systems

Meson and Bazel are modern build systems with distinct design philosophies, target users, and features; Meson emphasizes simplicity, Python‑like DSL, and fast incremental builds for beginners, while Bazel, developed by Google, focuses on scalability, reproducibility, remote caching, and complex dependency management for large‑scale projects.

BazelBuild SystemComparison
0 likes · 4 min read
Comparison of Meson and Bazel Build Systems
Bilibili Tech
Bilibili Tech
Jul 14, 2023 · Mobile Development

Bazel Modules, rules_xcodeproj, and Fastbuild Rule for iOS Monorepo at Bilibili

Bilibili’s iOS team migrated from the cumbersome WORKSPACE model to Bazel Modules, adopted the community‑maintained rules_xcodeproj to replace Tulsi, and built a custom Fastbuild rule that hashes source files to reuse binaries, cutting incremental build times from dozens of minutes to under two.

BazelBuild SystemFastbuild
0 likes · 22 min read
Bazel Modules, rules_xcodeproj, and Fastbuild Rule for iOS Monorepo at Bilibili
ByteDance Terminal Technology
ByteDance Terminal Technology
Jul 6, 2023 · Mobile Development

In-depth Comparison of Bazel and Gradle Build Systems for Android

This article provides a comprehensive comparison of Bazel and Gradle build systems, examining their design philosophies, concurrency, incremental compilation, configuration phases, performance benchmarks, and ecosystem support, particularly in the context of large‑scale Android monorepo projects, to help developers choose the appropriate tool.

AndroidBazelBuild System
0 likes · 26 min read
In-depth Comparison of Bazel and Gradle Build Systems for Android
ByteDance Terminal Technology
ByteDance Terminal Technology
Jun 29, 2023 · Mobile Development

Migrating ByteDance's iOS Build System to Bazel: Challenges, Architecture, and Outcomes

The article details ByteDance's transition from CocoaPods‑based component management to a Bazel‑driven monorepo build system, describing the problems faced, the two‑stage migration process, the BitSky build service architecture, custom plugin mechanisms, and the performance gains achieved after the migration.

AutomationBazelBuild System
0 likes · 24 min read
Migrating ByteDance's iOS Build System to Bazel: Challenges, Architecture, and Outcomes
Bilibili Tech
Bilibili Tech
May 9, 2023 · Mobile Development

B站iOS开发工具链创新:VSCode + Bazel + AI辅助开发实践

Bilibili’s iOS development team replaced Xcode with a custom VSCode‑Bis workflow powered by Bazel and AI assistance, detailing the evaluation of Xcode’s strengths and alternatives, the integration of SourceKit‑LSP, vscode‑swift and simctl, and how Bazel’s aquery generates compile_commands.json for intelligent editing, debugging, and future enhancements.

?=AI辅助开发Bazel
0 likes · 17 min read
B站iOS开发工具链创新:VSCode + Bazel + AI辅助开发实践
ByteDance Terminal Technology
ByteDance Terminal Technology
Mar 30, 2023 · Mobile Development

Monorepo Full-Source Strategy for Mobile Development: Challenges, Solutions, and Practice

This article examines the drawbacks of multi‑repo development for large mobile apps, explains the concepts of monorepo and full‑source, and details ByteDance's BitSky implementation—including migration phases, Bazel build migration, dependency management, developer tools, and measurable efficiency gains.

BazelBuild SystemDevOps
0 likes · 17 min read
Monorepo Full-Source Strategy for Mobile Development: Challenges, Solutions, and Practice
Bilibili Tech
Bilibili Tech
Jun 21, 2022 · Mobile Development

Adopting Monorepo and Bazel for Bilibili iOS Development

Bilibili migrated its iOS codebase from a fragmented polyrepo to a unified monorepo and adopted Google‑backed Bazel, enabling clear BUILD files, atomic commits, fast parallel and cached builds, reliable dependency resolution, easy Xcode integration via Tulsi, and extensible custom rules for scalable, maintainable development.

BazelBuild SystemMobile Development
0 likes · 21 min read
Adopting Monorepo and Bazel for Bilibili iOS Development