OrbitDesktop is a C++ Windows prototype for launching short-lived preview environments from a developer workstation. The app models a platform workflow where a developer selects a repository, branch, infrastructure template, and TTL, then dispatches a CI/CD pipeline that builds, provisions, deploys, monitors, and destroys the environment.
The current desktop app uses simulated providers so it can run locally without cloud credentials. The repository includes GitHub Actions, Terraform, Kubernetes, Docker, security, and FinOps examples to show how the simulation maps to a real platform engineering implementation.
- C++ desktop application architecture
- Developer Experience tooling
- GitHub Actions
repository_dispatch - Docker image build and push flow
- Terraform plan/apply/destroy lifecycle
- Kubernetes namespace, deployment, service, ingress, and secret patterns
- Preview environments per branch
- TTL-based cleanup
- Cost visibility and FinOps controls
- Security considerations for tokens and temporary credentials
- The developer opens OrbitDesktop.
- The app authenticates with a Git provider token.
- The developer searches repositories and selects a branch.
- The developer chooses an infrastructure template and TTL.
- OrbitDesktop dispatches the environment workflow.
- GitHub Actions builds, provisions, and deploys the branch.
- OrbitDesktop shows logs, URL, database credentials, expiration, and estimated cost.
- The developer clicks Nuke when testing is finished.
flowchart LR
Desktop[OrbitDesktop C++ App] -->|repository_dispatch| Actions[GitHub Actions]
Actions --> Docker[Docker Build]
Actions --> Terraform[Terraform]
Terraform --> K8s[Kubernetes Namespace]
Terraform --> DB[Temporary Database]
Actions --> Manifests[kubectl apply]
Manifests --> App[Preview App URL]
Desktop -->|poll workflow/logs| Actions
Desktop -->|destroy event| Actions
DevEx/ Visual Studio C++ project
.github/workflows/ CI/CD workflow examples
infra/terraform/ Terraform preview environment example
infra/k8s/ Kubernetes manifests
examples/sample-app/ Minimal containerized app
docs/ Architecture, security, FinOps, roadmap
Open DevEx.slnx in Visual Studio and build the Debug|x64 configuration.
From a Developer PowerShell with MSBuild available:
msbuild DevEx.slnx /p:Configuration=Debug /p:Platform=x64This prototype accepts any token with at least 12 characters.
- Include
adminin the token text to simulate an admin role. - Include
maintainerin the token text to simulate a maintainer role. - Any other valid token becomes a developer role.
The C++ app is already shaped around provider/orchestrator interfaces. A production implementation would replace the simulated classes with:
- GitHub OAuth or GitHub App authentication
- REST calls to list repositories and branches
repository_dispatchcalls to trigger workflows- workflow run polling or WebSocket/SSE log streaming from a backend
- encrypted storage through Windows Credential Manager