Example project for a Bazel dev environment and IDE support.
There is a minimal devcontainer available providing a minimal set of dependencies such as git, bazel, direnv, pre-commit, and python (for running Python packages outside of Bazel) as well as a few configuration steps executed when the container is created.
This set of minimal dependencies and the few configuration steps should be all you need for a local setup outside of the devcontainer.
All other dependencies are managed by Bazel and bazel_env.bzl.
To get started, run the following command:
direnv allow .envrc
bazel run //tools:bazel_envNow you should see a list of tools available in your PATH.
//tools:bazel_env installs the multitool companion tool which can be used to update the lockfile.
multitool --lockfile multitool.lock.json updateThere are language specific examples for IDE support based on existing rules and tools managed by bazel_env.bzl.
Some useful resources used for this project: