{"id":28664888,"url":"https://github.com/aochagavia/rocket","last_synced_at":"2025-07-16T11:39:42.823Z","repository":{"id":34884058,"uuid":"38901627","full_name":"aochagavia/rocket","owner":"aochagavia","description":"A toy game in Rust, using ggez","archived":false,"fork":false,"pushed_at":"2022-10-24T23:39:35.000Z","size":7598,"stargazers_count":365,"open_issues_count":0,"forks_count":37,"subscribers_count":11,"default_branch":"master","last_synced_at":"2023-11-07T16:16:31.837Z","etag":null,"topics":["game-2d","rust","tutorial-code"],"latest_commit_sha":null,"homepage":"","language":"Rust","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/aochagavia.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-07-10T20:53:09.000Z","updated_at":"2023-10-20T03:37:28.000Z","dependencies_parsed_at":"2023-01-15T09:55:17.537Z","dependency_job_id":null,"html_url":"https://github.com/aochagavia/rocket","commit_stats":null,"previous_names":[],"tags_count":0,"template":null,"template_full_name":null,"purl":"pkg:github/aochagavia/rocket","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aochagavia%2Frocket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aochagavia%2Frocket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aochagavia%2Frocket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aochagavia%2Frocket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/aochagavia","download_url":"https://codeload.github.com/aochagavia/rocket/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/aochagavia%2Frocket/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259651073,"owners_count":22890390,"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-2d","rust","tutorial-code"],"created_at":"2025-06-13T13:11:31.830Z","updated_at":"2025-06-13T13:11:47.589Z","avatar_url":"https://github.com/aochagavia.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"Rocket\n======\n\n\u003e Rocket is a toy game written in Rust, using the [`ggez`](https://github.com/ggez/ggez) library. The code is thoroughly\ncommented in order to help people to follow it easily.\n\n## Screenshots\n\n![Screenshot](screenshots/gameplay2.png)\n\nYou can find more screenshots in the [screenshots] directory.\n\n[screenshots]: screenshots/\n\n## How to play\n\nAs you can see in the screenshots below, you are the red rocket and have to save the world from\nthe yellow invaders. To do so, you can use the following controls:\n\nKeyboard                | Action\n----------------------- | ------------\n\u003ckbd\u003e\u0026uparrow;\u003c/kbd\u003e    | Boost\n\u003ckbd\u003e\u0026leftarrow;\u003c/kbd\u003e  | Rotate left\n\u003ckbd\u003e\u0026rightarrow;\u003c/kbd\u003e | Rotate right\n\u003ckbd\u003eSpace\u003c/kbd\u003e        | Shoot\n\n### Running Rocket\n\nUnless you are using Windows, you'll need to install SDL2 on your system. There are detailed instructions [here](https://github.com/Rust-SDL2/rust-sdl2). And as always, it is a real pleasure to work with Cargo. You only need the following:\n\n```\ncargo run --release\n```\n\n## Why?\n\nAfter having implemented some toy games in C++ using SDL and SFML, I thought it would be a\ngood idea to try the same in Rust. Additionally, I had written a similar game in Haskell and\nwanted to port it to see the similarities and differences between Haskell and Rust. Another\nreason to program this game was to have an easy to follow Rust project that could be useful\nfor people learning the language.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faochagavia%2Frocket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faochagavia%2Frocket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faochagavia%2Frocket/lists"}