Development Environment Setup
This guide provides detailed instructions for setting up the development environment required for the bootcamp. Depending on your operating system, follow the corresponding instructions.
Common Requirements
Regardless of the operating system, you will need to install:
- Java JDK 17 or higher
- Maven
- Node.js (version 18 or higher)
- Python (version 3.12 or higher)
- Docker and Docker Compose
- Git
- VS Code or IntelliJ IDEA
Installation by Operating System
Select your operating system to see the specific instructions:
Windows
Option 1: Manual Installation
-
Install WSL (Windows Subsystem for Linux):
- Open PowerShell as Administrator
- Run:
wsl --install - Restart your computer
- After restarting, Ubuntu will be installed automatically
-
Install Chocolatey:
- Open PowerShell as Administrator
- Run:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
-
Install the necessary tools:
choco install openjdk17 -y choco install maven -y choco install nodejs -y choco install python --version=3.12.0 -y -
Install Docker:
- In the Ubuntu WSL terminal, run:
sudo apt install -y apt-transport-https ca-certificates curl curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - echo "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list sudo apt update sudo apt install -y docker-ce
- In the Ubuntu WSL terminal, run:
-
Install Python tools:
pip install mkdocs poetry -
Install Jest:
npm install -g jest
Option 2: Automated Script
Alternatively, you can use the windows.bat script located in the install_scripts folder. This script assumes you have already installed Ubuntu WSL and are running it as an administrator.
Ubuntu/Linux
Option 1: Manual Installation
-
Update the package list:
sudo apt update -
Install the necessary tools:
sudo apt install -y git openjdk-17-jdk maven python3 python3-pip python3-poetry pipx nodejs npm apt-transport-https ca-certificates curl software-properties-common -
Add the Docker repository:
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" -
Update the package list again:
sudo apt update -
Install Docker:
sudo apt install -y docker-ce -
Install Jest:
npm install -g jest -
Install MkDocs:
pipx install mkdocs --include-deps pipx inject mkdocs mkdocs-material mkdocs-simple-plugin plantuml-markdown mkdocs-mermaid2-plugin mkdocs_puml --include-deps --force pipx ensurepath source ~/.bashrc
Option 2: Automated Script
Alternatively, you can use the ubuntu.sh script located in the project's install_scripts folder, which contains all the automated steps.
macOS
Option 1: Manual Installation
-
Install Homebrew (if not already installed):
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" -
Add Homebrew to your PATH:
echo 'export PATH="/opt/homebrew/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile -
Install the necessary tools:
brew install openjdk@17 brew install maven brew install python3 brew install node -
Install Rancher Desktop Installs Rancher Desktop, which provides access to Docker, Docker Compose, and a local Kubernetes instance with kubectl and helm.
brew install --cask rancher
-
Set up environment variables for Java:
echo 'export JAVA_HOME="$(brew --prefix openjdk@17)"' >> ~/.bash_profile echo 'export PATH="$JAVA_HOME/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile -
Install Jest:
npm install -g jest -
Install Poetry:
brew install pipx echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bash_profile source ~/.bash_profile pipx install poetry -
Initialize and start the Podman machine:
podman machine init podman machine start
Installation Verification
After installation, verify that everything was installed correctly:
java -version
mvn --version
node --version
npm --version
python3 --version
docker --version
git --version
mkdocs --version
poetry --version
VS Code Configuration
VS Code is the recommended editor for the bootcamp. Install the following extensions to improve your development experience:
For Java and JavaScript
- Extension Pack for Java
- Spring Boot Extension Pack
- Debugger for Java
- Maven for Java
- ESLint
- Prettier
- JavaScript and TypeScript Nightly
For Python
- Python
- Pylance
- Python Indent
- Python Docstring Generator
For Testing
- Test Explorer UI
- Java Test Runner
- Python Test Explorer
- Jest Test Explorer
Other Useful Extensions
- Docker
- Remote - WSL (for Windows users)
- GitLens
- Git Graph
- Material Icon Theme
- Markdown All in One
Docker Configuration
To ensure Docker is configured correctly:
-
Verify the installation:
docker --version docker-compose --version -
Start the Docker service (Linux):
sudo systemctl start docker sudo systemctl enable docker -
Add your user to the docker group (Linux):
sudo usermod -aG docker $USER newgrp docker
Next Steps
After setting up your development environment, you are ready to start working on the project. Refer to the specific documentation for each sprint for more details on tasks and requirements.