{"id":22213993,"url":"https://github.com/xmlking/kube-cockpit","last_synced_at":"2026-04-20T09:02:18.462Z","repository":{"id":38461935,"uuid":"137679440","full_name":"xmlking/kube-cockpit","owner":"xmlking","description":"Multitenant UI for kubernetes","archived":false,"fork":false,"pushed_at":"2023-03-04T01:19:32.000Z","size":17433,"stargazers_count":0,"open_issues_count":19,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-25T06:28:08.454Z","etag":null,"topics":["angular","kubernetes","nestjs"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xmlking.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2018-06-17T19:04:52.000Z","updated_at":"2021-03-01T15:37:49.000Z","dependencies_parsed_at":"2024-02-15T05:43:42.388Z","dependency_job_id":null,"html_url":"https://github.com/xmlking/kube-cockpit","commit_stats":null,"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/xmlking/kube-cockpit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlking%2Fkube-cockpit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlking%2Fkube-cockpit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlking%2Fkube-cockpit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlking%2Fkube-cockpit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xmlking","download_url":"https://codeload.github.com/xmlking/kube-cockpit/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xmlking%2Fkube-cockpit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32040353,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-20T00:18:06.643Z","status":"online","status_checked_at":"2026-04-20T02:00:06.527Z","response_time":94,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","kubernetes","nestjs"],"created_at":"2024-12-02T21:12:53.210Z","updated_at":"2026-04-20T09:02:18.438Z","avatar_url":"https://github.com/xmlking.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"Kubernetes Cockpit\n==================\nA Multi-tenant UI for kubernetes\n\n### Goals\n* Single sign-on, Single sign-out\n* Account Management\n  * Profile, Settings, Delegations \n\n#### Tenant Dashboard Goals\n* List/Create/Update/Delete kubernetes resources\n* Manage local [RBAC roles](https://github.com/kubernetes/dashboard/blob/master/docs/design/access-control.md)\n* Metering and Billing\n  * Usage Metrics / Reports\n* Helm Charts [AppStore](https://hub.kubeapps.com/)\n  * List, search charts\n  * Install charts to the cluster\n  * Add and manage chart repositories\n\n#### Admin Dashboard Goals\n* Provision Namespaces\n* User Provisioning with RBAC roles\n* Manage cluster and namespace level RBAC roles\n\n\n### Development\n\n#### Install\n\n```bash\ngit clone https://github.com/xmlking/kube-cockpit \ncd kube-cockpit\nnpm install \n```\n\n#### Run\n\nRun `npm run start` for a dev server. Navigate to `http://localhost:4200/`. The app will automatically reload if you change any of the source files.\n\nRun `npm run start:mock` for a mock server.\n\nExpose k8s API on localhost with [kubectl proxy](https://kubernetes-v1-4.github.io/docs/user-guide/kubectl/kubectl_proxy/)\n```bash\n# switch appropriate context \nkctx docker-for-desktop\n# run local proxy to your k8s API\nkubectl proxy --api-prefix=/k8s\n# test and make sure k8s proxy is working.\ncurl http://localhost:8001/k8s/api/v1/namespaces\ncurl http://localhost:8001/k8s/api/v1/namespaces/kube-system/pods\n```\nRun `npm run start -- --proxy-config proxy.conf.js` to start with proxy\n\n#### Generate\n\u003e scaffolding angular artifacts \u003cbr/\u003e\n\u003e For more details checkout [playbook](./PLAYBOOK.md)    \n\n```bash\n# check of nest installed\nng -v\n\n# generate components for `Breadcrumbs` Module\nng g lib Breadcrumbs --prefix=ngx --tags=public-module --publishable=true\nng g component breadcrumbs --project=breadcrumbs --module=breadcrumbs --flat --dry-run\nng g service  breadcrumbs --project=breadcrumbs --module=breadcrumbs --dry-run\n```\n\n#### Build\n\nRun `npm run build:prod` to build the project. The build artifacts will be stored in the `dist/` directory.\n\nTo serve built files and proxy k8s API together, run:\n```bash\nkubectl proxy --port=4200 --www=./dist/apps/webapp --www-prefix=/ --api-prefix=/k8s\n```\n\n#### Running unit tests\n\nRun `ng test` to execute the unit tests via [Karma](https://karma-runner.github.io).\n\n#### Running end-to-end tests\n\nRun `ng e2e` to execute the end-to-end tests via [Protractor](http://www.protractortest.org/).\nBefore running the tests make sure you are serving the app via `ng serve`.\n\n#### Docs\n\nRun `npm run doc:build` to build docs.\nRun `npm run doc:serve` to serve docs.\n\n#### Deploy\n\nRun `npm run deploy:mock` to deploy demo app to gp-pages.\n\nAnalyzing bundle size `npm run bundle-report`\n\n\n### Alternative Projects\n1. Kubernetes Operational View\n    * https://github.com/hjacobs/kube-ops-view  \n2. **Kubit** - Angular Material Electron based client for Kubernetes\n    * https://github.com/sandipchitale/kubit\n3. **Kuill** - A multitenant UI for kubernetes\n    * https://github.com/matt-deboer/kuill\n4. **Kubernetes Custom Dashboard**\n    * https://github.com/jdeskins/k8s-custom-dashboard\n5. **Fabric8 UI**\n    * https://github.com/fabric8-ui/fabric8-ui\n6. **ElasticKube** - open source management platform for Kubernetes\n    * https://github.com/ElasticBox/elastickube\n7. **gangway**\n    * https://github.com/heptiolabs/gangway\n8. **Helm Catalog**\n    * https://github.com/cnpst/zcp-catalog-ui\n    * https://github.com/kubernetes-helm/monocular\n    * https://github.com/kubeapps/hub https://hub.kubeapps.com/\n9. **hsd-devops** - kubernetes dashboard with angular\n    * https://github.com/getfirstcn/hsd-devops\n10. **CI/CD pipeline** \n    * https://github.com/banzaicloud/pipeline\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxmlking%2Fkube-cockpit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxmlking%2Fkube-cockpit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxmlking%2Fkube-cockpit/lists"}