This guide covers running the platform in development mode, building for production, and the available Makefile targets.Documentation Index
Fetch the complete documentation index at: https://dorguai.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Development mode
Run the backend and frontend in separate terminals for hot reload on both:Start the backend
Start the frontend
/api/*) and WebSocket (/ws) are proxied to the backend on port 8080.Open in browser
Open http://localhost:5173 for the development server with hot reload.
In development mode, use port 5173 (Vite) for the frontend. Port 8080 (Go) serves the API but won’t have the latest frontend changes unless you rebuild.
Makefile targets
| Target | Description |
|---|---|
make frontend | Build the React app (web/dist) |
make build | Build Go binary with embedded frontend |
make run | Run the Go backend in development mode |
make test | Run Go tests with coverage |
make lint | Run linters |
make clean | Remove build artifacts |
Production build
Build a single binary with the frontend embedded:- Builds the React app to
web/dist - Copies
web/disttopkg/server/static - Compiles the Go binary with
//go:embed static
./bin/server contains everything — no external files needed.
Project dependencies
Backend
| Dependency | Version | Purpose |
|---|---|---|
k8s.io/client-go | v0.29.0 | Kubernetes client |
k8s.io/apimachinery | v0.29.0 | Kubernetes API types |
github.com/gorilla/mux | v1.8.1 | HTTP router |
github.com/gorilla/websocket | v1.5.3 | WebSocket protocol |
Frontend
| Dependency | Version | Purpose |
|---|---|---|
react | v19.2 | UI framework |
react-router-dom | v7.13 | Client-side routing |
@tanstack/react-query | v5.91 | Server state management |
axios | v1.13 | HTTP client |
tailwindcss | v3.4 | Utility-first CSS |
lucide-react | v0.577 | Icons |
vite | v8.0 | Build tool |
Adding a new API endpoint
- Add the handler function in
pkg/api/clusters.go(or create a new file) - Register the route in
pkg/server/server.goinsetupRoutes() - Add tests in
pkg/api/*_test.go - Run
make test
Adding a new frontend component
- Create the component in
web/src/components/ - Create a React Query hook in
web/src/hooks/if data fetching is needed - Add the TypeScript interface in
web/src/lib/api.ts - Import and use in the relevant page
- Test in dev mode:
npm run dev
Testing
Architecture
How the platform is structured
Installation
Production deployment options