OrbitDeck is a modern, full-stack PaaS-like platform that enables seamless deployment, management, and analytics of containerized applications using Kubernetes, Helm, Go, Spring Boot, React, and Redis. It is fully modular — each service is independently deployable and testable.
- Features
- Architecture Overview
- Technology Stack
- Monorepo Structure
- Local Development
- Deployment via Terraform on Azure
- API Services
- Frontend Highlights
- Modularity & Extensibility
- Screenshots
- License
- ⚙️ Multi-Component Kubernetes Deployments via Helm
- 🛠 Asynchronous Task Execution using Asynq (Go + Redis)
- 📊 Centralized Analytics & Logging (Java Spring Boot + PostgreSQL)
- 🔐 Authentication with JWT + Cookies (Go)
- 🧠 Live Deployment Status with polling and event-driven updates
- 🌐 Dynamic Ingress Rule Mapping for each deployed component
- 📈 User Analytics: Top used repositories, error tracking, component usage
- 🧪 Modular Services: Each service is testable and deployable independently
- ☁️ Infrastructure-as-Code using Terraform to provision Azure AKS, VNet, Subnets, AAD
- Go (Gin, Asynq) – Task management, core deployment APIs
- Spring Boot (Java) – Analytics + Logging
- Redis – Queueing (Asynq) + Pub/Sub Events
- PostgreSQL – Primary database
- React.js – Dashboard, forms, analytics, live status
- Styled Components – Theming and modern UI
- Docker + Skaffold – Containerization + local dev sync
- Helm – Kubernetes deployment automation
- Terraform – Provisioning AKS, AAD, VNet on Azure
- NGINX Ingress Controller – API Gateway routing
.
├── client/ # React Frontend
├── server/
│ ├── auth/ # Go Auth Service
│ ├── core/ # Go Deployment Service
│ └── analytics/ # Java Spring Boot Analytics
├── infra/
│ └── resources/ # Azure AKS, PostgreSQL, Redis, VNet Terraform Code
│ └── helm/ # Helm Charts
│ └── skaffold # Local Dev Config
# Backend (Go services)
cd server/auth
make server name=server
cd server/core
make server name=server // core service
make server name=generate // generate queue
make server name=uninstall // uninstall queue
# Analytics Service
cd server/analytics
./mvnw spring-boot:run
# Frontend
cd client
./run.sh
Or use Skaffold for live sync:
skaffold dev -p dev
- Set up Terraform:
terraform init
terraform plan
terraform apply
- This will provision:
- AKS Cluster with RBAC
- Azure VNet, Subnet
- PostgreSQL + Redis
- Azure AD Group for Admin Access
- Configure
kubeconfig
:
az aks get-credentials --resource-group <rg-name> --name <cluster-name>
- Deploy services via Helm:
helm upgrade --install orbitdeck charts/orbitdeck/ -n orbitdeck
POST /users
– RegisterPOST /users/login
– Login (PASETO Token + Cookie)GET /me
– Get Current UserPOST /users/logout
– Logout
POST /deployment/add
– Create New DeploymentGET /deployment/:id
– Get Deployment DetailsDELETE /deployment/:id
– Uninstall DeploymentGET /deployment/:id/status
– Live Status (Asynq Task)
GET /events/recent
– Get Recent EventsGET /events/stats
– Summary of deploymentsGET /events/component/usage
– Top used componentsGET /events/timeline?interval=day|hour
– Timeline analyticsGET /events/errors
– Crash logs and failure insights
- Modern Dashboard – List + manage all deployments
- Deployment Wizard – Add components, resource limits, env vars, ingress
- Live Polling – Track deployment status in real time
- User Profile Page – Top used repos, active installs, analytics
- Confetti Success Feedback – Post successful deployment 🎉
Each service is self-contained and:
- Has its own Dockerfile
- Exposes only relevant routes
- Can be deployed/tested independently
- Communicates via Redis queues or events
This makes OrbitDeck easy to extend , scale, or rewire into different infrastructure setups.
Coming Soon — add UI snapshots or animations here for visual flair
MIT License © 2025 Rishabh Kanojiya
Made with ❤️ by Rishabh Kanojiya