Files
compute/README.md
zeekay dcf8290c03 Consolidate the Casvisor fork: adopt visor's working content under the vm name
vm and visor were the same Casvisor-lineage app forked twice. visor is the
complete, correct fork — finished @hanzo/iam migration, cloud-provider
integrations (DigitalOcean, DOKS, Hetzner, Lightsail), volumes, node pools,
billing, autoscaler, whitelabel, multi-tenant context filter — and builds
clean. vm carried a broken, incomplete IAM migration that did not compile at
any iam version. This adopts visor's content under vm's name and module path
(github.com/hanzoai/vm), pinning the live hanzoai/iam v1.28.12 (the pinned
pseudo-version 86e34e93edf3 was force-pushed away upstream). visor is archived.

go build ./... and go test ./... green.
2026-06-28 21:00:36 -07:00

1.7 KiB

visor

Hanzo Visor

Cloud operating-system management platform (Go + React).

Architecture

Hanzo Visor has two parts:

Name Description Language Source code
Frontend Web UI JavaScript + React https://github.com/hanzoai/visor/tree/main/web
Backend RESTful API + Beego Go + Beego + Postgres https://github.com/hanzoai/visor

Installation

Hanzo Visor uses Hanzo IAM as the authentication system. Create an organization and an application for Visor in your IAM instance, then wire it via app.conf.

Necessary configuration

Get the code

git clone https://github.com/hanzoai/iam
git clone https://github.com/hanzoai/visor

Setup database

Visor stores users, nodes, and resource information in a Postgres database named visor (auto-created). The DB connection string is configured in conf/app.conf:

dataSourceName = postgres://user:pass@localhost:5432/visor

Configure IAM

After creating an organization and an application in Hanzo IAM, update clientID, clientSecret, iamOrganization, and iamApplication in app.conf.

Run

go run main.go

Open browser: http://localhost:16001/

Optional

RDP

Run guacd for RDP connections:

docker run --name guacd -d -p 4822:4822 guacamole/guacd

License

Apache-2.0