The Stakeout UI is web-based frontend for Stakeout Server, and requires an instance of the server to be used.
The UI provides an unauthenticated viewer interface for monitoring realtime service status and screenshots, interactive editor mode for administrators, and native browser support for light and dark themes.


This project uses Angular 22, Bootstrap for layout, and SCSS for CSS. Toast notifications use ng-angular-popup. npm is the package manager. Use Node 26 (see the Dockerfile).
Assuming you already have Node installed via nvm or similar, set the following environment variables and run npm run start. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.
export STAKEOUT_UI_SERVER_URL=http://localhost:3000
export STAKEOUT_UI_TITLE="My Stakeout"
npm ci
npm run start
| Command | Description |
|---|---|
npm run start | Dev server |
npm run build | Production build |
npm test | Unit tests (Vitest via @angular/build:unit-test) |
To build with Docker and nginx, use the included Dockerfile, such as:
docker build --platform linux/amd64 -t p3000/stakeout-ui:latest .
# or cross-platform
docker buildx build --platform linux/arm64/v8,linux/amd64 -t p3000/stakeout-ui:latest . --push
In your container hosting environment, point an instance at your Stakeout Server installation:
docker run -d -p 9000:80 --restart unless-stopped \
-e "STAKEOUT_UI_SERVER_URL=http://localhost:3000" \
-e "STAKEOUT_UI_TITLE=My Stakeout" \
p3000/stakeout-ui:latest
Copyright © 2011-2026 Preston Lee. All rights reserved.
Provided under the Apache 2.0 license.
Content type
Image
Digest
sha256:90a33324c…
Size
26.2 MB
Last updated
2 months ago
docker pull p3000/stakeout-ui