{"id":17892449,"url":"https://github.com/simonmichael/metapong","last_synced_at":"2025-04-03T03:41:09.784Z","repository":{"id":138801964,"uuid":"222481030","full_name":"simonmichael/metapong","owner":"simonmichael","description":"Experimental haskell pong-like game collaborative project.","archived":false,"fork":false,"pushed_at":"2023-02-09T01:38:43.000Z","size":37,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-02-08T17:41:56.374Z","etag":null,"topics":["game","gamedev","haskell","haskell-game","nomic","pong-game"],"latest_commit_sha":null,"homepage":"","language":"Haskell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simonmichael.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGES.md","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,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-11-18T15:26:39.000Z","updated_at":"2023-02-25T17:16:21.000Z","dependencies_parsed_at":null,"dependency_job_id":"ff8e4db9-d2ec-424c-86d2-d330e002fa68","html_url":"https://github.com/simonmichael/metapong","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonmichael%2Fmetapong","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonmichael%2Fmetapong/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonmichael%2Fmetapong/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simonmichael%2Fmetapong/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simonmichael","download_url":"https://codeload.github.com/simonmichael/metapong/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246933356,"owners_count":20857052,"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","gamedev","haskell","haskell-game","nomic","pong-game"],"created_at":"2024-10-28T14:37:52.045Z","updated_at":"2025-04-03T03:41:09.751Z","avatar_url":"https://github.com/simonmichael.png","language":"Haskell","funding_links":[],"categories":[],"sub_categories":[],"readme":"     __  __ _____ _____  _       ____   ___  _   _  ____ \n    |  \\/  | ____|_   _|/ \\     |  _ \\ / _ \\| \\ | |/ ___|\n    | |\\/| |  _|   | | / _ \\    | |_) | | | |  \\| | |  _ \n    | |  | | |___  | |/ ___ \\   |  __/| |_| | |\\  | |_| |\n    |_|  |_|_____| |_/_/   \\_\\  |_|    \\___/|_| \\_|\\____|\n\n\n*I didn't have time to build a decent pong game, so I started building a pong game building machine.*\n\u003c!-- *No-one has time to build a decent pong game, so let's build a pong game building machine.* --\u003e\n\n## Introduction to Meta Pong\n\nMeta Pong is a pong-like video game, built with Haskell,\nand an experiment in efficient free software development.\nIt is owned and directed by its Player-Contributors,\nwith an ever-evolving Process.\n\nThe game was declared open on the 18th of November 2019,\nand new Player-Contributors are welcome!\nWould you like to get involved right now ?\nYou can play at any of these levels:\n\n- **[Gamer](#gamers-how-to-install-and-play)** - \nInstall and enjoy the game.\n\n- **[Playtester](#playtesters-how-to-playtest)** - \nPlay alternate versions of the game, vote on them, provide testing \u0026 feedback.\n\n- **[Developer](#developers-how-to-develop)** - \nImprove the game, propose new versions of the game.\n\n- **[Haskeller](#haskellers-how-to-grow-the-ecosystem)** - \nImprove the haskell games ecosystem and state of the art (in ways relating to this project).\n\n- **[Maintainer](#maintainers-how-to-maintain)** - \nPackage and deliver the game, maintain the project, define/improve the Process.\n\n- **Emperor** -\nHa! Ha! Only the Emperor can be the Emperor, naturally.\nThe Emperor provides infrastructure, guidance and judgements.\n\n**Meta Pong's goals include:**\n\n- rapid production and delivery of wholesome Fun\n- and some Knowhow and Education\n- efficient collaboration, decision making, and onboarding/uplevelling\n- minimisation of toil, single-developer burnout and unhelpful Stress\n- advancement of the Haskell games scene\n\n**Our techniques/principles include:**\n\n- crowd-sourced playtesting and maintenance\n- evolutionary product and process development\n- Nomic style meta-gaming\n- Fun, Respect, Persistence and Restraint.\n\n**The Process:**\n\n- This document defines our Process.\n- The Process serves as the Rules of Play, which we strive to follow.\n- Its purpose is to maximise Fun, the prime directive of this project.\n- It may at times seem arbitrary or irritating, but the Process helps us to be effective and avoid timewasting.\n- The Process evolves.\n\n**The scope of this project is limited to:**\n\n- \"pong-like games\". There shall be a bouncing ball.\n\n**The scope for 201911 is strictly limited to:**\n\n- a TUI approximation of classic pong.\n\n**We discuss and co-ordinate at:**\n\n- the [#haskell-game](https://kiwiirc.com/nextclient/#ircs://irc.freenode.net/#haskell-game) channel on Freenode\n  ([#freenode_#haskell-game:matrix.org](https://matrix.to/#/#freenode_#haskell-game:matrix.org) on Matrix)\n\n\nThe Emperor, of course, is\n\n\u003e Simon Michael, \u003csimon@joyful.com\u003e, simonmic:matrix.org, sm@libera.chat\n\u003e\n\u003e      _____                                              __ \n\u003e     | ____|_ __ ___  _ __   ___ _ __ ___  _ __    ___  / _|\n\u003e     |  _| | '_ ` _ \\| '_ \\ / _ \\ '__/ _ \\| '__|  / _ \\| |_ \n\u003e     | |___| | | | | | |_) |  __/ | | (_) | |    | (_) |  _|\n\u003e     |_____|_| |_| |_| .__/ \\___|_|  \\___/|_|     \\___/|_|  \n\u003e                     |_|                                    \n\u003e          __  __      _          ____                   \n\u003e         |  \\/  | ___| |_ __ _  |  _ \\ ___  _ __   __ _ \n\u003e         | |\\/| |/ _ \\ __/ _` | | |_) / _ \\| '_ \\ / _` |\n\u003e         | |  | |  __/ || (_| | |  __/ (_) | | | | (_| |\n\u003e         |_|  |_|\\___|\\__\\__,_| |_|   \\___/|_| |_|\\__, |\n\u003e                                                  |___/ \n\n*(unless deposed.. but how?..)*\n \n## Gamers: How to install and play\n\n```\ngit clone https://github.com/simonmichael/metapong.git\ncd metapong\nstack update; stack run\n```\nor\n```\ncabal update; cabal run metapong\n```\n\n## Playtesters: How to playtest\n\nInstall as above. \nTest what can be tested (docs, installation, game..)\n\nJoin #haskell-game on Freenode, give feedback.\n\n## Developers: How to develop\n\nUse #haskell-game for help and coordination.\n\nFork the repo on github. Clone to your local machine. \n\n`make rerun` to install deps and run repeatedly (press q to rebuild).\n\nMake changes to \nsource files (metapong.hs..),\npackaging files (package.yaml, stack.yaml..),\nor game docs (README.md..).\n\nCommit changes in the style of past changes.\n(Small, atomic, a clear sentence describing the change..)\n\nPush changes to your repo. Submit a pull request. Follow up until the PR is resolved.\n\n## Haskellers: How to grow the ecosystem\n\nUse #haskell-game to coordinate.\n\nLook for opportunities to import code, tools and techniques from the Haskell ecosystem to this project,\nand vice versa.\n\n\n## Maintainers: How to maintain\n\nUse #haskell-game to coordinate.\n\nGet some PRs accepted as a developer.\n\nSend PRs changing process docs (README.md..).\nHelp out with maintainer tasks (changelogs, packaging, install testing, support..).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonmichael%2Fmetapong","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimonmichael%2Fmetapong","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimonmichael%2Fmetapong/lists"}