{"id":19012550,"url":"https://github.com/kennfatt/cursedsnake","last_synced_at":"2025-10-18T21:57:10.170Z","repository":{"id":133857502,"uuid":"249616261","full_name":"KennFatt/CursedSnake","owner":"KennFatt","description":"Snake game with ncurses (school assignment).","archived":false,"fork":false,"pushed_at":"2020-03-29T14:46:20.000Z","size":40,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-21T15:54:11.688Z","etag":null,"topics":["cli","cpp","ncurses","snake-game"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KennFatt.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2020-03-24T04:54:38.000Z","updated_at":"2020-03-29T14:46:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"b9c4f2da-bb42-4640-84af-045b539bd3fc","html_url":"https://github.com/KennFatt/CursedSnake","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/KennFatt/CursedSnake","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennFatt%2FCursedSnake","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennFatt%2FCursedSnake/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennFatt%2FCursedSnake/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennFatt%2FCursedSnake/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KennFatt","download_url":"https://codeload.github.com/KennFatt/CursedSnake/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennFatt%2FCursedSnake/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":260150553,"owners_count":22966337,"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":["cli","cpp","ncurses","snake-game"],"created_at":"2024-11-08T19:18:39.500Z","updated_at":"2025-10-18T21:57:05.116Z","avatar_url":"https://github.com/KennFatt.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CursedSnake\nA simple [Snake game](https://en.wikipedia.org/wiki/Snake_(video_game_genre)) implementation with C++ and library `ncurses` [[wiki](https://en.wikipedia.org/wiki/Ncurses)].  \n\n## Manual build\n### Requirements\nYou have to install `ncurses` to your computer before manually compile this repository.\n\n**Debian based distro**:\n```\nsudo apt install libncurses-dev\n```\n**Arch Linux**:\n```\nsudo pacman -S ncurses\n```\n**Mac**:\n```\nbrew install ncurses\n```\n**Windows**\nFor Windows users, you can build this project using [Cygwin](https://www.cygwin.com/).\nPackages:\n```\nncurses\nlibiconv\n```\n\n### Steps\n1. Clone this repository\n    ```\n    git clone https://github.com/KennFatt/CursedSnake.git\n    ```\n2. Change directory and run `make`\n    ```\n    cd CursedSnake\n    make\n    ```\n3. Executable file will be generated and located at `out/$FILE_NAME`\n\n## Background\nBefore we move our project with `ncurses`, we've been trying to render all to the default stream (`stdio`) and that's not possible to **handle keyboard signal simultaneously**.  \nEven that's still possible with **threading**, it would be more complicated things to do.\n\nTherefore, we choose and use `ncurses` as our main library for rendering system. This library would work fine with POSIX and need some port for Windows.\n\n## Authors\n* Kennan Fattahillah [@KennFatt](https://github.com/KennFatt)\n* Arvito Putra [@arvitoputra](https://github.com/arvitoputra)\n* Sahla Dzulfika","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennfatt%2Fcursedsnake","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkennfatt%2Fcursedsnake","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennfatt%2Fcursedsnake/lists"}