ระบบนิเวศ Bazel มีชุดกฎที่เพิ่มขึ้นและพัฒนาอย่างต่อเนื่องเพื่อรองรับภาษาและแพ็กเกจยอดนิยม ความแข็งแกร่งของ Bazel ส่วนใหญ่มาจากความสามารถในการกำหนดกฎใหม่ที่ผู้อื่นสามารถใช้ได้
หน้านี้จะอธิบายกฎ Bazel ที่แนะนํา เนทีฟ และที่ไม่ใช่เนทีฟ
กฎที่แนะนำ
ตัวอย่างกฎที่แนะนำมีดังนี้
- Android
 - C / C++
 - Docker/OCI
 - Go
 - Haskell
 - Java
 - JavaScript / NodeJS
 - Kubernetes
 - การจัดการการขึ้นต่อกันของ Maven
 - Objective-C
 - การสร้างแพ็กเกจ
 - บัฟเฟอร์โปรโตคอล
 - Python
 - Scala
 - Shell
 - Webtesting (Webdriver)
 
ที่เก็บ Skylib มี ฟังก์ชันเพิ่มเติมซึ่งอาจเป็นประโยชน์เมื่อเขียนกฎและมาโครใหม่
กฎข้างต้นได้รับการตรวจสอบและเป็นไปตามข้อกำหนดสำหรับกฎที่แนะนำ โปรดติดต่อผู้ดูแลชุดกฎที่เกี่ยวข้องหากมีปัญหาและคำขอฟีเจอร์
หากต้องการค้นหากฎ Bazel เพิ่มเติม ให้ใช้เครื่องมือค้นหา ดูที่ awesomebazel.com หรือค้นหาใน GitHub
กฎเนทีฟที่ไม่มีผลกับภาษาโปรแกรมที่เฉพาะเจาะจง
กฎดั้งเดิมจะมาพร้อมกับไบนารีของ Bazel และพร้อมใช้งานเสมอในไฟล์ BUILD โดยไม่ต้องมีคำสั่ง load
- การดำเนินการเพิ่มเติม
 - ทั่วไป
 - แพลตฟอร์ม
 - Workspace
 
กฎที่ไม่ใช่กฎดั้งเดิมที่ฝังไว้
นอกจากนี้ Bazel ยังฝังกฎเพิ่มเติมที่เขียนใน Starlark ด้วย ซึ่งโหลดได้จาก
@bazel_toolsที่เก็บข้อมูลภายนอกในตัว