This guide is targetted at developers willing to get involved in the development of RackPeek.
Please review all commands in this guide carefully before execution and ensure you understand the implications of each step.
This guide is by no means exhaustive, so please feel free to contribute back to it if you have any additional information or tips.
[!TIP] This repository contains a devcontainer that can be used to standup an environment with one-click. If you use the devcontainer all dependencies and prerequisties are already installed in the container, except for VHS.
This project leverages the brew package manager for installation of dependencies on MacOS/Linux
Please follow the installation instructions for Brew as found here
This project makes use of the Just tool for streamlining development and developer productivity.
If using Homebrew, installation is as simple as:
brew install just
Please follow your preferred installation method for Just as found here if not using brew.
This project makes use of the VHS tool for recording and creating GIFs of the CLI for documentation purposes.
If using Homebrew, installation is as simple as:
brew install vhs
Please follow your preferred installation method for VHS as found here if not using brew.
For those looking for a quick start for getting setup with dotnet for development on RackPeek, please follow the instructions below.
Setup the development environment on Ubuntu Linux.
sudo apt update
sudo apt install -y wget apt-transport-https software-properties-common
Find linux distribution version:
export RACKPEEK_KERNEL_VERSION=$(dpkg -l | grep linux-image | grep ii | head -1 | awk '{print $3}' | sed 's/.*~\([0-9]*\.[0-9]*\)\..*/\1/')
Ensure the correct kernel version was found (example: 22.04, 24.04, etc.):
echo "KERNEL_VERSION: ${RACKPEEK_KERNEL_VERSION}"
Download and register the Microsoft package repository:
wget https://packages.microsoft.com/config/ubuntu/${RACKPEEK_KERNEL_VERSION}/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
rm packages-microsoft-prod.deb
Update package lists:
sudo apt update
sudo apt install -y dotnet-sdk-10.0
dotnet --version
Setup tested on macOS (Apple Silicon and Intel). All dependencies install via Homebrew.
brew install --cask dotnet-sdk
Verify:
dotnet --version
If dotnet --version reports a version below 10.0.x, install the SDK explicitly:
brew install --cask dotnet-sdk@10
Needed for running the Web UI locally (just run-docker) and for the E2E test suite (which builds the rackpeek:ci image via Testcontainers):
brew install --cask docker
open -a Docker # start the daemon; wait until the whale icon settles
Verify:
docker info
The first time you run E2E tests:
just e2e-setup
This installs the Microsoft.Playwright.CLI global tool and downloads the Chromium build pinned to the current Playwright NuGet version. Re-run it whenever the Microsoft.Playwright package is bumped — each Playwright version pins a specific Chromium build and stale caches cause every test to fail with PlaywrightException : Executable doesn't exist at .../chromium_headless_shell-NNNN.
🏗️ Help wanted for guide on Windows development environment setup.