{"id":27761003,"url":"https://github.com/tsoding/koil","last_synced_at":"2025-05-16T11:06:58.560Z","repository":{"id":245165075,"uuid":"817389711","full_name":"tsoding/koil","owner":"tsoding","description":"Online Multiplayer Browser Game with Old-School Raycasting Graphics.","archived":false,"fork":false,"pushed_at":"2025-05-11T03:06:45.000Z","size":10537,"stargazers_count":363,"open_issues_count":16,"forks_count":42,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-05-11T03:28:15.456Z","etag":null,"topics":["doom","game","multiplayer-game","raycasting","typescript","vanilla-js"],"latest_commit_sha":null,"homepage":"https://tsoding.github.io/koil","language":"C++","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/tsoding.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-06-19T15:47:13.000Z","updated_at":"2025-05-11T03:06:49.000Z","dependencies_parsed_at":"2024-06-20T07:42:16.475Z","dependency_job_id":"eb3815cb-bca1-4975-a5bd-b12b6e6e41e0","html_url":"https://github.com/tsoding/koil","commit_stats":null,"previous_names":["tsoding/raycasting","tsoding/koil"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fkoil","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fkoil/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fkoil/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tsoding%2Fkoil/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tsoding","download_url":"https://codeload.github.com/tsoding/koil/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254518383,"owners_count":22084374,"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":["doom","game","multiplayer-game","raycasting","typescript","vanilla-js"],"created_at":"2025-04-29T12:14:37.807Z","updated_at":"2025-05-16T11:06:53.552Z","avatar_url":"https://github.com/tsoding.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Koil\n\n\u003e [!WARNING]\n\u003e This Game is a work In Progress! Anything can change at any moment without any notice! Use this Game at your own risk!\n\nOnline Multiplayer Browser Game with Old-School Raycasting Graphics.\n\n![screenshot](./screenshot.png)\n\nOffline version available on GitHub Pages: https://tsoding.github.io/koil/\n\n\u003e [!WARNING]\n\u003e We are intentionally rendering on HTML 2D Canvas without employing any hardware acceleration to see how much we can push the boundaries of the software rendering in browsers. So the renderer may run unexpectedly slow on some machines and browsers, but we are working it.\n\n## Quick Start\n\nDependencies\n- Build from scratch commit [855be928](https://github.com/c3lang/c3c/tree/855be9288121d0f7a67d277f7bbbbf57fbfa2597) of [C3 compiler](https://github.com/c3lang/c3c). This commit is pinned and will not be updated.\n- Clang (18.1.8+)\n- Node (v20.9.0+)\n\n*We are working on reducing the amount of dependencies, please, bear with us.*\n\n```console\n$ npm install\n$ node run build\n$ npm run serve\n$ \u003cbrowser\u003e https://localhost:6969/\n```\n\nThis script starts up http-server at http://localhost:6969/ to serve the content of the current folder and the server of the game. See [serve.js](./serve.js) for more details.\n\n## References\n\n- Renderer implementation is heavily inspired by https://lodev.org/cgtutor/raycasting.html\n- The Networking is Based on https://github.com/tsoding/multiplayer-game-prototype\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsoding%2Fkoil","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftsoding%2Fkoil","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftsoding%2Fkoil/lists"}