streamspace/
├── api/ # Control Plane API (Go)
├── agents/ # Execution Agents
│ └── k8s-agent/ # Kubernetes Agent (Go)
├── ui/ # Web UI (React)
├── manifests/ # Kubernetes manifests
├── chart/ # Helm chart
└── docs/ # Documentation
- Go 1.21+
- Node.js 18+
- Docker & Kubernetes (k3s recommended)
-
Clone the repo:
git clone https://github.com/streamspace-dev/streamspace.git cd streamspace -
Install Dependencies:
cd ui && npm install cd ../api && go mod download cd ../agents/k8s-agent && go mod download
-
Run Tests:
# API cd api && go test ./... # K8s Agent cd agents/k8s-agent && go test ./... # UI cd ui && npm test
- Follow Effective Go.
- Use
gofmtandgolint. - Architecture: Respect the Control Plane / Agent separation. Agents should be stateless executors.
- Use TypeScript.
- Follow Functional Component patterns.
- Use Material-UI for components.
- Unit Tests: Required for all new logic.
- Integration Tests: Run
./tests/scripts/run-integration-tests.shbefore submitting PRs. - Documentation: Update relevant docs in
docs/if architecture changes.
- Fork the repository.
- Create a feature branch (
feature/my-cool-feature). - Commit changes.
- Push to your fork.
- Open a Pull Request.
StreamSpace Contribution Guide