Prerequisites
What you need
Section titled “What you need”| Requirement | Version | Why |
|---|---|---|
| Java | 21 | Primary language for the libraries and the proxy |
| Go | 1.26 | lega-commander, mq-interceptor, cega-mock |
| Docker + Compose v2 | current | Orchestrating the local stack |
| Free disk space | at least 8 GiB | Images, volumes and test fixtures |
Docker is not required to build the monorepo, only to run the services. You can compile and test everything without it.
Always use docker compose (the v2 plugin), never the standalone docker-compose v1 binary.
Recommended, not required
Section titled “Recommended, not required”- Gradle CLI: the wrapper (
./gradlew) works without it, but a local CLI is convenient. - An IDE. IntelliJ is the common choice for the Java side, but VS Code, Emacs and Neovim all work. The Gradle wrapper makes the build identical regardless of editor, so this is purely personal preference.
Installing Java
Section titled “Installing Java”Linux. The project uses the Temurin distribution, though any vendor’s JDK 21 should behave identically. Follow the Temurin installation guide.
macOS. Most vendors ship an installer. With Homebrew:
brew install --cask temurinMacPorts or a direct download from a JDK vendor also work.
Windows. Download an installer from a vendor site. If you use WSL, follow the Linux instructions inside your WSL distribution instead.
If you juggle multiple Java versions, asdf and SDKMAN! both handle this well.
Installing Go
Section titled “Installing Go”Follow the official Go installation guide, which covers every operating system.
Installing Docker
Section titled “Installing Docker”Installation guides for every OS and architecture are in the Docker documentation.
With the toolchain in place, move on to the dev.sh workflow.
Built from f91944d