{"id":19030664,"url":"https://github.com/hackclub/arcade-constitution","last_synced_at":"2026-03-07T09:33:12.425Z","repository":{"id":247824663,"uuid":"822683533","full_name":"hackclub/arcade-constitution","owner":"hackclub","description":"Arcade. What is it? Why is it? Where is it going? Let's find out.","archived":false,"fork":false,"pushed_at":"2024-08-16T13:09:23.000Z","size":23,"stargazers_count":35,"open_issues_count":5,"forks_count":9,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-10-04T22:31:59.993Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":null,"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/hackclub.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-07-01T15:50:13.000Z","updated_at":"2025-07-19T13:09:01.000Z","dependencies_parsed_at":"2024-07-10T21:28:03.001Z","dependency_job_id":"97f0e26c-ae5f-4eb6-8a50-9413b694ab94","html_url":"https://github.com/hackclub/arcade-constitution","commit_stats":null,"previous_names":["hackclub/arcade-constitution"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hackclub/arcade-constitution","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hackclub%2Farcade-constitution","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hackclub%2Farcade-constitution/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hackclub%2Farcade-constitution/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hackclub%2Farcade-constitution/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hackclub","download_url":"https://codeload.github.com/hackclub/arcade-constitution/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hackclub%2Farcade-constitution/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30210852,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-07T09:02:10.694Z","status":"ssl_error","status_checked_at":"2026-03-07T09:02:08.429Z","response_time":53,"last_error":"SSL_read: 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":[],"created_at":"2024-11-08T21:19:02.708Z","updated_at":"2026-03-07T09:33:12.408Z","avatar_url":"https://github.com/hackclub.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# 𝒯𝒽𝑒 𝒜𝓇𝒸𝒶𝒹𝑒 𝒞𝑜𝓃𝓈𝓉𝒾𝓉𝓊𝓉𝒾𝑜𝓃\n\nArcade is a game where you get prizes for building, documenting, and shipping projects.\n\nThe spirit of Arcade is for you to build stuff in a hacker mindset. Start a project, push it to an MVP as fast as possible, publish it, then iterate quickly. We have rules and standards for review, but the ultimate thing those rules are trying to get at is \"are you doing real work on personal projects in a hacker mindset\".\n\nThis is the first draft of a living document defines \"what counts\" for the Hack Club Arcade. It should be a short and sweet reference for Arcade players and reviewers alike. Comments, pull requests, and questions are welcome.\n\n## The Essential Phases\n\nArcade has three essential phases:\n\n1. **Build** projects and log your hours with `/arcade`\n2. **Document** progress in a git-based versioning system\n3. **Ship** a shareable version in #scrapbook when it's ready\n\nAfter you ship, you'll get a ticket for every hour that passes review. Spend these tickets with `/shop`\n\n### What counts as a \"Project\"?\n\nA project is a self-directed creative effort toward an output that other people can meaningfully experience.\n\n\u003cdetails\u003e\n\u003csummary\u003eFine Print\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eleetcode or similar challenges do not count\u003c/li\u003e\n\u003cli\u003eHomework or work done for a job/commission are not self-directed and therefore don't count\u003c/li\u003e\n\u003cli\u003eProjects started (but not finished) before Arcade are okay, but only the work done during Arcade can be logged\u003c/li\u003e\n\u003cli\u003eTutorial projects that are 1:1 copies of the tutorial do not count. If you're doing a tutorial, you need to \"make it your own\" in some way\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- \u003cdetails\u003e\n\u003csummary\u003eExamples\u003c/summary\u003e\n❌ Homework (not self-directed, usually no output that someone else can experience)\n✅ Personal projects\n\n❌ A drawing of a circuit (cannot meaningfully experience)\n✅ A manufactured circuit\n\n❌ Cooking a meal (insufficiently meaningful output)\n✅ Publishing a recipe you developed over multiple iterations\n\n❌ Completing the donut Blender tutorial (not self-directed)\n✅ Modeling something you dreamed up and sketched\n\n❌ Messing with Unity's particle system (no specific output)\n✅ Publishing a playable game or demo online\n\n❌ Watching a video on how to knit\n✅ Knitting a sweater\n\n\u003c/details\u003e --\u003e\n\n### What counts as \"Documenting progress\"?\n\nThe journey of each project must be shared in a public git repository, with at least one update committed per hour logged.\n\n\u003cdetails\u003e\n\u003csummary\u003eFine Print\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eEvery update needs a link to the git commit for that hour\u003c/li\u003e\n\u003cli\u003eFor code or other text-based content, put the actual code in the repo. For everything else, images or videos are fine—in the repo though!\u003c/li\u003e\n\u003cli\u003eAny git-based system is allowed, but GitHub is preferred. Many of our review automations are built around GitHub, so other systems may be more annoying for you to use.\u003c/li\u003e\n\u003cli\u003eWhen submitting a single session scrapbook, you are required to include 2 mini-scraps throughout the session to help our reviewers clearly understand your progress. It is a progress update (not necessarily a git-commit) showing your progress through this part of the session. This could be screenshots of art or CAD or product of your code, or git commits, multiple times throughout your session and sent in the thread.\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\n\u003c!-- \u003cdetails\u003e\n\u003csummary\u003eExamples\u003c/summary\u003e\n❌ Screenshots of your code\n✅ Links to commits on GitHub\n\n❌ A description of your latest game feature in Slack\n✅ A screenshot of your latest game feature on GitHub\n\nMore examples!!\n\n\u003c/details\u003e --\u003e\n\n### What counts as \"Shipped\"?\n\nA shipped project must be shared in a way that other people can experience to the greatest possible extent.\n\n\u003cdetails\u003e\n\u003csummary\u003eFine Print\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eYour repo needs a README\u003c/li\u003e\n\u003cli\u003eShips must be shared in the Hack Club Slack with a post in #scrapbook. They also need a screenshot or video or URL to experience the thing\u003c/li\u003e\n\u003cli\u003eThere must be a component of the ship that can be experienced by people in Slack\u003c/li\u003e\n\u003cli\u003eFor digital but non-code projects, a file—and, for some online tools, a link—of the \"most native\" type for the project must be included. STL and .blend for Blender, PNG and project link for Figma, Gerber file and CAD file for PCBs, STEP export and STL for CAD (with a link for OnShape projects), PNG for and source file (PSD, XCF, etc) for digital art…\u003c/li\u003e\n\u003c/ul\u003e\n\nSome examples of \"native\" websites diffferent types of projects are below. Keep in mind, this isn't an exhaustive list, but a big part of \"shipping\" a project is getting others to experience it \u0026 this is a good way to do that.\n\n- 3D printing files\n    - https://thingiverse.com\n    - https://printables.com\n    - https://makerworld.com\n- Blender files\n    - https://blendswap.com\n    - https://sketchfab.com\n- Games\n    - https://itch.io\n    - https://gamejolt.com\n- Web projects\n    - https://vercel.com (if a website)\n    - https://github.com (Using GitHub Pages)\n- Game mods (different for every game)\n    - https://www.spigotmc.org (for Minecraft mods)\n    - https://modrinth.com (for Minecraft mods)\n    - https://hangar.papermc.io (for Minecraft plugins)\n    - https://www.moddb.com/ (for source games)\n- Discord bots\n    - https://top.gg\n    - https://bots.ondiscord.xyz\n    - https://discord.bots.gg\n\n## Python Projects\n\nIn particular we find python projects are often the hardest to ship. A couple approaches you can take:\n\n- If you have a package, you can publish it to PyPi\n- If you make a game or executable, you can publish it with pygame or pyinstaller\n- If all else fails, you can publish it to GitHub and include a `requirements.txt` file \u0026 a `poetry.lock` file \u0026 cut a release\n\nMany python projects end up being just a `script.py` file in a repo, which isn't a real project because it may only work on your machine. Keep in mind that the goal is to make your project accessible to others \u0026 everyone has different versions of python and different dependencies installed.\n\n\u003c/details\u003e\n\n\u003c!-- \u003cdetails\u003e\n\u003csummary\u003eExamples\u003c/summary\u003e\n❌ A scrapbook post verbally describing your website\n✅ A link to a deployed version of the website\n\n❌ A picture of your robot just sitting there\n✅ A video of your robot completing its task\n\nMore examples!!\n\n\u003c/details\u003e --\u003e\n\n## The Essential Vibes\n\nThe gray areas of \"what counts\" are ultimately resolved with a vibe check. Here are some vibey questions we may ask ourselves when assessing whether something counts for Arcade:\n\n- **How technical is this project?**\n- **Is this person pushing themselves?**\n- **Does this project feel wholesome?**\n- **Is this a highly self-directed project?**\n- **Is this a good story?**\n- **Am I amazed?**\n\nThese are not criteria or requirements, they are just vibes. But when a project is in a gray zone, these vibes guide our decisions.\n\n## Other Rules\n\n\u003cul\u003e\n\u003cli\u003eThis is a living, changing document. Rules have changed and will continue changing. For practical reasons we have to enforce whatever the latest rules are, even for hours that were submitted before the change.\u003c/li\u003e\n\u003cli\u003eYou can't bank more than 25 hours at a time, because of arcane technical reasons, but also because you should be shipping and iterating on a loop tighter than 25 hours\u003c/li\u003e\n\u003cli\u003eIf you use an AI tool to generate code, explain broadly which tool and how you used it at the top of the file. Using AI is fine but we are going to make a judgment call on how much we consider it to be \"your work\". Undeclared AI is considered plagiarism, so please be honest\u003c/li\u003e\n\u003cli\u003eIf we think you have knowingly submitted something fradulent, we will either give you negative hours or just ban you outright\u003c/li\u003e\n\u003cli\u003eNothing that breaks the law or facilitates breaking of laws, please\u003c/li\u003e\n\u003c/ul\u003e\n\n## Happy Hacking!\n\nBuild stuff, get stuff, repeat. All summer. _(ends August 31st)_\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackclub%2Farcade-constitution","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhackclub%2Farcade-constitution","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhackclub%2Farcade-constitution/lists"}