Angualr 20 upgrade of frontend code is completed, working on supporting elements.
- Convert GoLang backend (Jetstream) to use Cloud Foundry V3 API and remove V2 API calls
- Convert Frontend to call either Jetstream API or V3 API directly. V3 API calls can require more roundtrips than the V2 APIs they replace.
(Please note: The official repository is at cloudfoundry/stratos and the cloudfoundry-community/stratos will track this but may be used for some testing purposes)
Stratos is an Open Source Web-based UI (Console) for managing Cloud Foundry. It allows users and administrators to both manage applications running in the Cloud Foundry cluster and perform cluster management tasks.
Please visit our new documentation site. There you can discover (* This is currently being updated from the 4.4.0 docs)
- Our introduction, including quick start, contributing and troubleshooting guides.
- How to deploy Stratos in a number of environments.
- Cloud Foundry, as an application. (Recommended)
- Kubernetes, using a Helm chart.
- Docker, as a single container deploying all components.
- Configuring advanced features such a Single Sign On and Cloud Foundry 'invite to org'.
- Guides for developers.
- How to extend Stratos functionality and apply a custom theme.
- Node.js 24+ - Required for build system
- Bun - Package manager (installation guide)
- Go 1.21+ - For backend development
On a fresh checkout, run the bootstrap script once to initialize the development environment:
git clone https://github.com/cloudfoundry/stratos.git
cd stratos
# One-time bootstrap (builds required infrastructure)
./bootstrap
# OR
make bootstrap
# OR
bun run bootstrap
# Install dependencies
bun install
# Start development server
make dev-frontendWhat bootstrap does:
- Verifies prerequisites (Node.js, Bun, Go)
- Builds the devkit package (required by Angular CLI)
- Generates extension module imports
- Creates development proxy configuration
- Cleans up workspace
Troubleshooting:
- If
bun installfails with missing files: Runmake bootstrapfirst - If builds fail with "File not found" errors: Run
make bootstrap - Bootstrap only needs to run once per checkout
# Frontend development server (https://127.0.0.1:5440)
make dev-frontend
# OR
bun run start
# Build for production
make build # Both frontend and backend
make build-frontend # Frontend only
make build-backend # Backend only
# Testing
bun test # All frontend tests
bun run test-frontend:core
bun run test-frontend:cloud-foundry
bun run test-backend # Backend tests
bun run e2e # End-to-end tests
# Linting
bun run lintRun these in separate terminals:
# Terminal 1: Frontend (port 5440)
make dev-frontend
# Terminal 2: Backend API (port 5443)
make dev-backend
# Access at: https://127.0.0.1:5440For more detailed information, see CLAUDE.md.
Tested with Browserstack
This feature helps in pre-building the Stratos web application so that it can be deployed faster in Cloud Foundry, or be run offline.
You can find pre-built versions of Stratos UI in the releases of this repository.
To run those .zip packages inside Cloud Foundry, unzip it, write a manifest,
and cf push it.
You are not required to have stratos-buildpack, you can use binary buildpack.
Here is an example app manifest that worked for us:
applications:
- name: console
memory: 128M
disk_quota: 192M
host: console
timeout: 180
buildpack: binary_buildpack
health-check-type: portFor best results rather than pushing manually instead use within the (Genesis CF Kit)[https://github.com/genesis-community/cf-genesis-kit] like so:
genesis <env-name> do stratos sgs
Note: sgs creates security groups the first time, upgrades do not use sgs.
Golang is required, and version 1.21 is recommended as this is the version used by the Stratos build system.
When you want to build the 4.8.1 tag in
Stratos UI releases,
run this command:
./bin/packageOR to package a specific tag
TAG="4.8.1" ./bin/packageThe original code for this feature can be found in the Orange Cloud foundry Github Repository. Many thanks to Benjamin & Arthur, we appreciate you both!
The work done has been re-licensed under MIT License. The license file can be found here.
