ai-skills/skills/valdi-bazel/skill.md
Applies to: BUILD.bazel, *.bzl files in /bzl/, WORKSPACE, MODULE.bazel
Valdi uses Bazel as its build system. Bazel provides reproducible, incremental builds across all platforms.
# Build everything
bazel build //...
# Build specific target
bazel build //apps/helloworld:helloworld
# Run tests
bazel test //...
# Clean (use sparingly - cache is valuable!)
bazel clean
bazel for all build commandsvaldi commands use bazel under the hoodbazel clean unless necessary/bzl/valdi/ - Valdi build rules and macros# Valdi application
valdi_application(
name = "my_app",
root_component_path = "App@my_app/src/MyApp",
title = "My App",
version = "1.0.0",
deps = ["//apps/my_app/src/valdi/my_app"],
)
# Valdi module
valdi_module(
name = "my_module",
srcs = glob(["src/**/*.ts", "src/**/*.tsx"]),
deps = [
"//src/valdi_modules/src/valdi/valdi_core",
],
)
BUILD.bazel not BUILD (explicit extension).bzl for Starlark macros and rules# Build and install iOS app
valdi install ios
# Build and install Android app
valdi install android
# Or use bazel directly with configs
bazel build //apps/helloworld:hello_world --config=ios
bazel build //apps/helloworld:hello_world --config=android
.bazelrc - Build flags and configurationsMODULE.bazel - Bazel module dependenciesWORKSPACE - Legacy workspace configuration (being migrated to MODULE.bazel)deps in BUILD.bazelbazel clean --expunge (last resort)# Run all tests
bazel test //...
# Run specific test
bazel test //valdi/test:renderer_test
# Run with coverage
bazel coverage //...
/bzl/valdi/README.md/AGENTS.md