{"id":23163106,"url":"https://github.com/playfab/thundernetes","last_synced_at":"2025-05-15T23:05:13.868Z","repository":{"id":37024262,"uuid":"220582422","full_name":"PlayFab/thundernetes","owner":"PlayFab","description":"Thundernetes makes it easy to run your game servers on Kubernetes","archived":false,"fork":false,"pushed_at":"2025-05-09T02:04:44.000Z","size":5491,"stargazers_count":325,"open_issues_count":22,"forks_count":51,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-05-09T03:23:32.400Z","etag":null,"topics":["game","game-development","gameservers","hacktoberfest","kubernetes","kubernetes-controller","multiplayer","servers"],"latest_commit_sha":null,"homepage":"https://playfab.github.io/thundernetes","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PlayFab.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-11-09T02:51:51.000Z","updated_at":"2025-05-09T02:04:46.000Z","dependencies_parsed_at":"2024-02-29T02:32:17.954Z","dependency_job_id":"93d9d3b4-937c-4296-80c3-ad42124b56e7","html_url":"https://github.com/PlayFab/thundernetes","commit_stats":{"total_commits":278,"total_committers":18,"mean_commits":"15.444444444444445","dds":"0.32014388489208634","last_synced_commit":"e58be8602731d91fff652113559ee995230dadfd"},"previous_names":["dgkanatsios/thundernetes"],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlayFab%2Fthundernetes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlayFab%2Fthundernetes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlayFab%2Fthundernetes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PlayFab%2Fthundernetes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PlayFab","download_url":"https://codeload.github.com/PlayFab/thundernetes/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254436944,"owners_count":22070946,"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":["game","game-development","gameservers","hacktoberfest","kubernetes","kubernetes-controller","multiplayer","servers"],"created_at":"2024-12-18T00:16:20.578Z","updated_at":"2025-05-15T23:05:13.825Z","avatar_url":"https://github.com/PlayFab.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![e2e](https://github.com/PlayFab/thundernetes/actions/workflows/e2e.yml/badge.svg)](https://github.com/PlayFab/thundernetes/actions/workflows/e2e.yml)\r\n[![unit-tests](https://github.com/PlayFab/thundernetes/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/PlayFab/thundernetes/actions/workflows/unit-tests.yml)\r\n[![Software License](https://img.shields.io/badge/license-Apache-brightgreen.svg?style=flat-square)](LICENSE)\r\n[![GitHub release](https://img.shields.io/github/release/playfab/thundernetes.svg)](https://github.com/playfab/thundernetes/releases)\r\n![](https://img.shields.io/badge/status-beta-lightgreen.svg)\r\n[![CodeQL](https://github.com/PlayFab/thundernetes/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/PlayFab/thundernetes/actions/workflows/codeql-analysis.yml)\r\n\r\n# Thundernetes\r\n\r\nThundernetes makes it easy to run your game servers on Kubernetes.\r\n\r\n## ℹ️ Description\r\n\r\nThundernetes is a project originating from the [Azure PlayFab Multiplayer Servers](https://docs.microsoft.com/gaming/playfab/features/multiplayer/servers/) team and other teams in Azure/XBOX that enables you to run both Windows and Linux game servers on your Kubernetes cluster. Thundernetes can be useful in the following scenarios:\r\n\r\n- host your game servers on a Kubernetes cluster, either on a public cloud provider or on-premise and allow your users to connect from everywhere\r\n- pre-warm game servers so that they are ready to accept players within seconds, when the game is about to start\r\n- as part of your iterative development process, you can use Thundernetes locally to test your game server code\r\n\r\nIMPORTANT: Thundernetes should be seen as more of an experiment and not supported for production environments.\r\n\r\nThundernetes offers:\r\n\r\n- game server auto-scaling, based on [requested standingBy levels](https://playfab.github.io/thundernetes/gameserverbuild.html)\r\n- a [latency server](https://playfab.github.io/thundernetes/howtos/latencyserver.html) to test client connection to multiple Kubernetes cluster and determine the best cluster to connect to\r\n- a [Game Server SDK](https://playfab.github.io/thundernetes/gsdk/README.html) in multiple languages/environments (Unity, Unreal, C#, C++, Java, Go) and a [local utility](https://playfab.github.io/thundernetes/gsdk/runlocalmultiplayeragent.html) to test your game server integration locally\r\n- a [web-based User Interface](https://playfab.github.io/thundernetes/thundernetesui/README.html) to manage Thundernetes deployments in multiple clusters. This component utilizes a [REST API](https://playfab.github.io/thundernetes/gameserverapi/README.html) which you can use to manage your game servers\r\n- an experimental [intelligent standingBy server count forecaster](https://playfab.github.io/thundernetes/howtos/intelligentscaling.html) that utilizes various algorithms to predict the number of game servers that will be needed\r\n- [game server related Prometheus metrics and Grafana charts](https://playfab.github.io/thundernetes/howtos/monitoring.html)\r\n\r\n## 📚 Documentation\r\n\r\nCheck 🔥[our website](https://playfab.github.io/thundernetes)🔥 for more information.\r\n\r\n## 📦 Video presentation\r\n\r\nCheck out our video presentation for GDC 2022!\r\n\r\n[![What is Project Thundernetes? How Kubernetes Helps Games Scale](https://img.youtube.com/vi/zwnUfq1ygic/0.jpg)](https://www.youtube.com/watch?v=zwnUfq1ygic)\r\n\r\n## 💬❓Feedback - Community \r\n\r\nAs mentioned, Thundernetes is in beta stage. If you find a bug or have a feature request, please file an issue [here](https://github.com/PlayFab/thundernetes/issues) and we will try to get back to you as soon as possible. You can also reach us directly on [Game Dev server on Discord](https://aka.ms/msftgamedevdiscord).\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplayfab%2Fthundernetes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplayfab%2Fthundernetes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplayfab%2Fthundernetes/lists"}