{"id":13449070,"url":"https://github.com/spekt8/spekt8","last_synced_at":"2026-05-11T04:03:25.267Z","repository":{"id":41435444,"uuid":"155300456","full_name":"spekt8/spekt8","owner":"spekt8","description":"Visualize your Kubernetes cluster in real time","archived":false,"fork":false,"pushed_at":"2021-08-29T10:50:26.000Z","size":1301,"stargazers_count":730,"open_issues_count":16,"forks_count":105,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-03-28T11:11:35.615Z","etag":null,"topics":["docker","docker-container","docker-image","kubernetes","kubernetes-cluster","kubernetes-monitoring","visualization"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/spekt8.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-10-30T00:35:57.000Z","updated_at":"2025-03-28T10:07:05.000Z","dependencies_parsed_at":"2022-08-10T11:52:18.091Z","dependency_job_id":null,"html_url":"https://github.com/spekt8/spekt8","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spekt8%2Fspekt8","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spekt8%2Fspekt8/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spekt8%2Fspekt8/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/spekt8%2Fspekt8/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/spekt8","download_url":"https://codeload.github.com/spekt8/spekt8/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247174456,"owners_count":20896078,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["docker","docker-container","docker-image","kubernetes","kubernetes-cluster","kubernetes-monitoring","visualization"],"created_at":"2024-07-31T06:00:30.147Z","updated_at":"2026-05-11T04:03:25.262Z","avatar_url":"https://github.com/spekt8.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","docker","HarmonyOS","\u003ca name=\"JavaScript\"\u003e\u003c/a\u003eJavaScript"],"sub_categories":["Windows Manager"],"readme":"# SPEKT\u003cimg width=\"30\" alt=\"portfolio_view\" src=\"https://github.com/spekt8/spekt8/blob/master/dist/images/src/client/images/spekt8-logo-ecbc06d5.png\"\u003e\n\nSPEKT8 is a new visualization tool for your Kubernetes clusters. It automatically builds logical topologies of your application and infrastructure, which enable your SRE and Ops team to intuitively understand, monitor, and control your containerized, microservices based application. Simply deploy our containerized application directly into your Kubernetes cluster. \n\n\u003cimg src=\"https://github.com/spekt8/spekt8/blob/master/spekt8-preview.gif\" width=\"600\" height=\"300\" /\u003e\n\nWhen your app is running in Kubernetes, our visualization tool will display all the Pods, Services, and Ingresses that allow you to drill down on Kubernetes clusters. The information provided to you includes but is not limited to the following:\n* Indicates the status of pods (blue for running, yellow for pending)\n* Lists the specific container images running within pods\n* Provides information on ingresses and services (Nodeport, load balancer, cluster-ip, persistent volume claims, persistent volumes, etc.)\n\nWhile the current app does not directly visualize any controllers (such as Deployments, Daemon Sets, Replication Controllers) it does indirectly visualize them through their pods. We are continuously building more support for additional Kubernetes objects.\n\nIn addition to these views, nodes can be presented either in graphical or in table mode. The graphical mode is practical for obtaining a quick visual overview of your app, and its infrastructure and connections between all of the nodes. And when you switch to table mode, nodes are presented in a convenient list that displays the resources being consumed by processes, containers, and hosts.\n\n## Deployment\nThese instructions presume you have a Kubernetes cluster already running.\n\nA maintained multi-architecture image (`linux/amd64`, `linux/arm64`, `linux/arm/v7`) is published to Docker Hub at [`camillelambert/spekt8`](https://hub.docker.com/r/camillelambert/spekt8). It's automatically rebuilt and pushed on every commit to `master`. Tags include `:latest` and per-commit `:sha-*`.\n\nSPEKT8 needs read access to a few Kubernetes resources (pods, services, ingresses, deployments, daemonsets) in the `default` namespace. Apply the RBAC manifest first to create a dedicated ServiceAccount with least-privilege read-only access, then apply the Deployment:\n\n* kubectl apply -f [spekt8-rbac.yaml](https://raw.githubusercontent.com/spekt8/spekt8/master/spekt8-rbac.yaml)\n* kubectl apply -f [spekt8-deployment.yaml](https://raw.githubusercontent.com/spekt8/spekt8/master/spekt8-deployment.yaml)\n* kubectl port-forward deployment/spekt8 3000:3000\n\nThen, open your web browser to [http://localhost:3000](http://localhost:3000).\n\n\n## How to Use \n\n**Navigation**\n* Use arrow keys for movement\n* Use the ‘-’ or ‘+’ for zoom\n\n**Legend**\n* Use the switch icons next to the legend to filter based on Object Types\n\n**Graph**\n* Click on Pods/Services/Ingresses to see more detailed information about the selected Object\n\n**View**\n* Use the View dropdown to toggle between Graph and Table Views\n\n## Built With\n* [React](https://github.com/facebook/react) \n* [Redux](https://github.com/reduxjs/redux) \n* [React-Graph-Vis](https://github.com/crubier/react-graph-vis)\n* [Jest](https://github.com/facebook/jest/)\n\n\n## Authors\n* **[Elliot Kim](https://www.linkedin.com/in/elliotjykim/)** - [@elliotxkim](https://github.com/elliotxkim)\n* **[Edward Roh](https://www/linkedin.com/in/edwardroh)** - [@the3ddy](https://github.com/the3ddy)\n* **[Camille Lambert](https://www.linkedin.com/in/camillelambert/)** - [@syntheticproduct](https://github.com/syntheticproduct)\n* **[Miles Cole](https://www.linkedin.com/in/colemiles/)** - [@milescole](https://github.com/milescole)\n\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE.md](https://github.com/spekt8/spekt8/blob/master/LICENSE) file for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspekt8%2Fspekt8","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fspekt8%2Fspekt8","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fspekt8%2Fspekt8/lists"}