{"id":24552720,"url":"https://github.com/jaredponn/fly-plane-fly","last_synced_at":"2025-04-15T23:16:41.821Z","repository":{"id":181309925,"uuid":"132981217","full_name":"jaredponn/Fly-Plane-Fly","owner":"jaredponn","description":"A Flappy Bird Spin Off written in Haskell using SDL2.","archived":false,"fork":false,"pushed_at":"2018-09-26T02:23:25.000Z","size":117799,"stargazers_count":9,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-04-15T23:16:06.652Z","etag":null,"topics":["haskell-application","school-project","simple-game"],"latest_commit_sha":null,"homepage":"","language":"Haskell","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/jaredponn.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,"governance":null}},"created_at":"2018-05-11T02:54:56.000Z","updated_at":"2023-12-26T00:26:21.000Z","dependencies_parsed_at":"2023-07-14T22:36:13.644Z","dependency_job_id":null,"html_url":"https://github.com/jaredponn/Fly-Plane-Fly","commit_stats":null,"previous_names":["jaredponn/fly-plane-fly"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaredponn%2FFly-Plane-Fly","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaredponn%2FFly-Plane-Fly/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaredponn%2FFly-Plane-Fly/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jaredponn%2FFly-Plane-Fly/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jaredponn","download_url":"https://codeload.github.com/jaredponn/Fly-Plane-Fly/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":249167456,"owners_count":21223508,"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":["haskell-application","school-project","simple-game"],"created_at":"2025-01-23T01:32:47.654Z","updated_at":"2025-04-15T23:16:41.794Z","avatar_url":"https://github.com/jaredponn.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Fly Plane Fly - A Flappy Bird Spin Off\nThis is a spin off of Flappy Bird written in Haskell.\n\n## Gameplay\n![gameplay.gif](https://github.com/jaredponn/Fly-Plane-Fly/blob/master/gameplay.gif)\n\n## Installation\n\n### Prerequisites\n#### Installing Stack\nThis project uses Stack. If you have Stack installed already skip to the next section. \n\nRun:\n```\ncurl -sSL https://get.haskellstack.org/ | sh\n```\nor\n```\nwget -qO- https://get.haskellstack.org/ | sh\n```\nto install Stack.\n\nRefer to the Stack's [readme](https://docs.haskellstack.org/en/stable/README/) for more details\n\n#### Installing the SDL2 Libraries\nIn addition, this game requires the following SDL2 libraries:\n* SDL2\n* SDL2 image\n* SDL2 mixer\n* SDL2 ttf\n\nInstallation of these libraries depends on the Linux distribution. In Void Linux, for example, they would be installed by running:\n```\nsudo xbps-install -S SDL2 SDL2-devel SDL2_image SDL2_image-devel SDL2_mixer SDL2_mixer-devel SDL2_ttf SDL2_ttf-devel \n```\nBe sure to download the developer libraries as well.\n\n### Installing the game\nTo build the project, issue the following commands\n```\ngit clone https://github.com/jaredponn/Fly-Plane-Fly.git\ncd Fly-Plane-Fly\nstack build\n```\nThat will build the project. \n\nWhile you are in the Fly-Plane-Fly folder, run the following command to start playing:\n```\nstack exec fly-plane-fly\n```\nAnd you should be playing the game.\n\n## Implementation details\nPlease refer to the blog post for an in-depth analysis of the architecture.\n\n[Read it here](https://jaredponn.github.io/posts/2018-06-07-Write-Me-A-FlappyBird-In-Haskell.html).\n\n## Project\nThis project was a high-school project for the Pre-Engineering class. Students may choose to work individually or in groups. Some other projects include Rube Goldberg machines, Quad-copters, and Pancake cookers.\n\n## Issues\n~~The CPU usage is a ridiculously high. On my computer, it takes up more than 50% CPU while running. If you can find the shortcomings in the system that leads to this issue, I would be happy to hear about it.~~\n\nGood news! I reduced it down to 20%-30% usage which is still bad, but much better than it was before. Refer to the blog post for more details.\n\n## Acknowledgments\nAll the images came from the following sources and were marked free to share use and modify:\n\n * https://commons.wikimedia.org/wiki/File:P47M_Gerippe.jpg\n\n * https://www.pexels.com/photo/grey-white-clouds-158163/\n\n * https://www.publicdomainpictures.net/en/view-image.php?image=111328\u0026picture=large-cumulus-clouds-1\n\nThe font [FFFForward](http://www.1001fonts.com/fff-forward-font.html) was used.\n\nThe sound effects are from various authors from [freesound](https://freesound.org/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaredponn%2Ffly-plane-fly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjaredponn%2Ffly-plane-fly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjaredponn%2Ffly-plane-fly/lists"}