Central Bazel-based monorepo with Rust backend services and Angular frontend applications. This root README.md focuses on shared workflows. Project-specific details live in their own guides.
- Nicknamer Server:
nicknamer/README.md - Angular Apps:
angular/AGENTS.md - Monorepo Overview:
AGENTS.md
Install Bazelisk (manages Bazel versions):
Linux:
sudo wget -O /usr/local/bin/bazel https://github.com/bazelbuild/bazelisk/releases/latest/download/bazelisk-linux-amd64
sudo chmod +x /usr/local/bin/bazelmacOS:
brew install bazeliskWindows (PowerShell):
choco install bazeliskNode.js, PNPM, Rust and other toolchains are provisioned via Bazel under tools/; do not install them manually.
git clone https://github.com/LowkeyLab/bazel-repo.git
cd bazel-repo
# (Optional) install NPM deps when touching frontend code
bazel run @pnpm -- --dir $PWD install
# Build everything
aspect build //...
# Run all tests
aspect test //...# Build everything
aspect build //...
# Run all tests
aspect test //...
# Format code (Rust, BUILD files, etc.)
format
# Lint (Aspect CLI)
aspect lint
# Format only BUILD files
bazel run //tools:buildifier
# Keep going on failures for investigation
aspect build //... --keep_going
# Run arbitrary pnpm command
bazel run @pnpm -- <args>- Centralized toolchain definitions under
tools/(Rust, Node.js/PNPM, Angular CLI wrappers, formatters, linters). - Bazel manages reproducible builds and dependency pinning.
- Use
MODULE.bazel/Cargo.tomledits followed by repin steps for dependency changes (see project guides).
# Clean build cache
bazel clean
# Repin Rust dependencies
CARGO_BAZEL_REPIN=1 bazel sync --only=crate_index
# Reinstall NPM dependencies
bazel run @pnpm -- --dir $PWD install
# Verbose failure output
aspect build //... --verbose_failuresFor service-specific environment variables, runtime instructions, or database setup, consult the respective project guide listed above.
GNU Affero General Public License v3.0 (AGPLv3). See LICENSE.
- Monorepo reference:
AGENTS.md - Nicknamer service details:
nicknamer/README.md - Angular workflows:
angular/AGENTS.md