{"id":15912894,"url":"https://github.com/abeidahmed/phaser-game-js","last_synced_at":"2026-05-12T23:03:55.577Z","repository":{"id":53579609,"uuid":"349625223","full_name":"abeidahmed/phaser-game-js","owner":"abeidahmed","description":"This game is a clone of the popular game called Flappy Bird.","archived":false,"fork":false,"pushed_at":"2021-03-23T09:48:57.000Z","size":16736,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"development","last_synced_at":"2025-02-24T06:44:32.515Z","etag":null,"topics":["game-development","phaser3"],"latest_commit_sha":null,"homepage":"https://abeidahmed.github.io/phaser-game-js/","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/abeidahmed.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":"2021-03-20T04:20:14.000Z","updated_at":"2021-03-24T16:38:22.000Z","dependencies_parsed_at":"2022-09-05T08:10:33.847Z","dependency_job_id":null,"html_url":"https://github.com/abeidahmed/phaser-game-js","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/abeidahmed/phaser-game-js","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abeidahmed%2Fphaser-game-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abeidahmed%2Fphaser-game-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abeidahmed%2Fphaser-game-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abeidahmed%2Fphaser-game-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/abeidahmed","download_url":"https://codeload.github.com/abeidahmed/phaser-game-js/tar.gz/refs/heads/development","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/abeidahmed%2Fphaser-game-js/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32960295,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-12T09:19:52.626Z","status":"ssl_error","status_checked_at":"2026-05-12T09:17:33.438Z","response_time":102,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["game-development","phaser3"],"created_at":"2024-10-06T16:21:39.956Z","updated_at":"2026-05-12T23:03:55.562Z","avatar_url":"https://github.com/abeidahmed.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Flappy Bird\n\nThis game is a clone of the popular flappy bird game which took the internet by storm\nand was later removed from all the mediums by the author.\n\nThe concept of the game is that the bird needs to fly as long as it can by\ndodging the obstacles.\n\n## Live demo\n\n[Click here](https://abeidahmed.github.io/phaser-game-js/)\n\n## Screenshots\n\n### Register yourself\n\n![register user](./dist/screenshots/register.png)\n\n### Gameplay\n\n![gameplay](./dist/screenshots/gameplay.png)\n\n### Leaderboard\n\n![leaderboard](./dist/screenshots/leaderboard.png)\n\n## How to play\n\nThe first scene is meant to collect your username, by which the scores are updated\non the server. After you enter your username and click on the \"Play game\" button,\nthe game will start.\n\nAt the start of the game, the bird is dropped from the sky and the player needs\nto control the bird and dodge all the obstacles. Use the \"up-arrow\" to make the\nbird fly upwards. The \"up-arrow\" key has no limitation, which means that you can\npress the key \"n\" number of times according to your needs.\n\nAfter you collide with an obstacle, you will be taken to the leaderboard scene,\nwhich shows the top 10 players ranked according to their scores. You can press the\n\"r\" key to restart the game.\n\n## Project objective at the end of Day 2\n\nSince the phaser library was new to me, my initial plan was to read the documentation\nas thoroughly as I could on Day 1. As I read the docs, I came to know that there\nhas been a significant change from v2 to v3 in the phaser library. I had to make\na decision and decided to implement the game on v3.\n\nThere were a few obstacles that I came through at first. For example, phaser 3\ndropped support for \"input\" elements and the only way to add them was by\nutilizing the HTML elements that we already know and love.\n\nMy first day was spent on making the decisions and the second day were spent\nimplementing the decisions that I made.\n\nThe second day was a smooth ride with the exception of a few bugs. One of\nthe bugs that I encountered was that, whenever I started the game with 0 points,\nthe server would throw an error. I couldn't find a way to solve this as my\ninitial guess would be that the API endpoint server does not accept falsy values,\nand in some programming languages, 0 is considered as a falsy value. So I decided\nto start the game with 1 point.\n\nThe second bug that I encountered was restarting the scene (Phaser calls them scenes).\nIt wasn't pleasant at all because I couldn't find any documentation regarding\nthat, and all the methods and examples that they provided did not work for me.\n\nI guess this is part of programming.\n\n## Built with\n\n- HTML\n- SCSS\n- Phaser\n\n## Running on your local machine\n\n- Clone the repo: `https://github.com/abeidahmed/phaser-game-js.git`\n- Install all the dependencies by running `npm install`\n- Run the tests to see if it is passing by `npm run test`\n- Start the server by running `npm run dev`\n- That's it. The server would usually start on `port:3000` if it isn't occupied\n\n## Contributing\n\n- Clone the repo by following the above steps\n- Create a separate branch `git checkout -b feature-branch`\n- Add all your changes and push it to your branch\n- After making your changes, make a pull request to the `developement` branch\n\n## Author\n\n### Abeid Ahmed\n\n- GitHub: [abeidahmed](https://github.com/abeidahmed)\n- Twitter: [iamhawaabi](https://twitter.com/iamhawaabi)\n- LinkedIn: [Abeid Ahmed](https://www.linkedin.com/in/abeidahmed)\n\n## Show your support\n\nGive a ⭐️ if you like\n\n## License\n\nThis project is MIT licensed.\n\n## Acknowledgement\n\nAssets used to build this game are all opensourced and can be found at\n[OpenGameArt](https://opengameart.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabeidahmed%2Fphaser-game-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fabeidahmed%2Fphaser-game-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fabeidahmed%2Fphaser-game-js/lists"}