Hack Club: a high school community whose open source repository holds its curriculum
🌎 Hack Club is a worldwide community of high school hackers. We make things. We help one another. We have fun.
At a glance
- What is it?
- The hackclub repository is not an application but a content store: self-led learn-to-code workshops, clubs and internal notes, under a split licence where text is CC BY-SA and code is MIT. That makes it useful to read and awkward to depend on.
- Who is it for?
- This repository is worth reading if you teach coding to teenagers or write self-directed tutorials, because the workshops are built for exactly that and the whole thing is permissively licensed for reuse. It is the wrong dependency for anything programmatic: there is no package to install, no API, and no code of any substance in the tree.
- Can I use it commercially?
- Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
- Is it still maintained?
- Yes. The repository last received commits 45 days ago.
- What is it written in?
- Mainly JavaScript, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Star history
- hackclub/hackclub2,636 ★ · +9
| Repository | 2026-10-08 | 2026-10-23 |
|---|---|---|
| hackclub/hackclub | 2.6k | 2.6k |
9 Stars in the last 15 days, measured from the daily GitHub snapshot. Compare with other projects
Editorial analysis
A repository of workshops, not a codebase
The first thing to clear up is what this repository is. The README says it plainly: this is where Hack Club stores its Workshops, which it defines as self-led learn-to-code tutorials, along with the Code of Conduct. The tree matches that description and is very short to read in full: `.gitignore`, `CC_BY-SA_LICENSE`, `CODE_OF_CONDUCT.md`, `CONTRIBUTING.md`, `LICENSE`, `MIT_LICENSE`, `README.md`, and three directories, `clubs/`, `internals/` and `workshops/`.
There is no package.json, no build system and no application code. If you arrived expecting software, this is not it. The declared language on the repository is JavaScript, which reflects markup and scripts inside workshop content rather than a project you could run.
The organisation behind it describes itself as a worldwide community of high school hackers: artists, writers, engineers, tinkerers, campers, filmmakers and volunteers, whose stated purpose is making things, helping one another and having fun. The audience is students, and that shapes the content far more than the tooling does.
Two numbers in the README describe the scale. The Slack is described as a Discord-style chatroom with 20K+ student members, and the whole organisation positions itself as open source down to the website and the finances. That claim is what makes the repository worth reading in full, since a curriculum you can reuse is the actual product here.
The licence is split, and that changes what you can do
The licence section is stated as a TL;DR and it is unusually important for a content repository. All content is released under Creative Commons Attribution-ShareAlike 4.0 International, and all code is released under the MIT License. The tree carries three files to support this: `LICENSE` for the full text and attributions, `MIT_LICENSE` for the code half, and `CC_BY-SA_LICENSE` for the content half. The repository's licence field shows no single assertion, which is the expected result of a dual-licence arrangement rather than a missing licence.
The distinction matters in a way that catches people out. CC BY-SA 4.0 on a workshop means attribution is required and derivatives must be shared under the same licence. MIT on code carries no such share-alike condition. So if you take a workshop, adapt its text and publish it, the share-alike obligation travels with the text. If you take a script from the same tree, it does not.
This is the one genuinely reusable thing in the repository for anyone outside Hack Club. A CC BY-SA tutorial collection with MIT-licensed code inside it is a workable arrangement for a school, a coding club or a documentation project, as long as you keep attribution and accept the share-alike term on the prose. Whether that suits a commercial training product is a question for your own counsel.
How the workshops are meant to be used
The README describes the workshop model in a single line, calling them self-led learn-to-code tutorials, and that adjective carries the design. The workshop site is hosted at workshops.hackclub.com, and the README offers a path into contributing one at a submit-a-workshop page. The phrasing in the getting-involved section is that a workshop is something to write for clubs and hackers to build from.
Self-led is the key word, and it implies no instructor in the room. A workshop has to work for a teenager working alone on a Tuesday night, which constrains the format heavily: short steps, something running early, and a finish line visible from the start. That is a different genre from a course with a syllabus, and it is the reason these files are worth studying even if you never join a Hack Club.
The surrounding infrastructure in the README suggests how a workshop gets used. Sprig is named as a place to create a game, and notably the project will ship you a console, with a hardware repository linked. Scrapbook is linked as the place members share what they are building. Both are separate projects rather than parts of this repository, so the direction of dependency runs outward from here.
For a teacher or a club leader, the practical workflow is: read the existing workshops, see how they are structured, then either adapt one or write your own and submit it. The submit page is the entry point, and the contribution guidelines live in `CONTRIBUTING.md`.
Ways to contribute that have nothing to do with this repository
The contributing section is a list of adjacent projects, and it is worth reading carefully because most of them are not this repository. Writing a Hack Club workshop goes to the workshop site. Drawing a dinosaur and submitting a pull request goes to `hackclub/dinosaurs`. Creating a game goes to Sprig. Translating the site goes to the global repository's issue tracker. The README also points at `contribute.hackclub.com` for a list of more active repositories and a guide to contributing.
That last pointer is the honest answer for anyone looking for where to contribute code. This repository's own contribution surface is content, and the active development happens elsewhere, in the site, the tools and the Slack integrations.
The other contribution route named in the README is organisational rather than technical: starting a Hack Club at your high school, joining the Slack, attending or running a high school hackathon, or making a project a 501(c)(3) nonprofit with HCB, which is the banking arrangement the organisation offers. The hackathon link goes to hackathons.hackclub.com and club applications to apply.hackclub.com.
So the repository serves two audiences at once: students looking for something to build, and anyone curious about how a large teen community organises itself in public.
Nine years of release notes for a content repository
The releases here are an artefact worth noting rather than a signal about maintenance. There are three recorded, all from 2017, tagged v1.5.0 on 2017-10-10, v1.4.0 on 2017-09-26 and v1.3.0 on 2017-09-20, and their bodies are weekly community updates rather than change logs.
They read like a small operations newsletter. The v1.5.0 update reports that 34 clubs met with 511 members across meetings, 3 clubs onboarded and 2 clubs had their first meeting, mentions that the global HQ team was expanding, and signs off with a Slack link. The v1.4.0 update describes club leaders being able to generate their own Slack invite forms with an `@orpheus` command, and mentions a domain spelled backwards as a workaround for school networks that block sites with hack in the name. The v1.3.0 update announces that the Slack bot Hackbot was renamed to Orpheus, that `#meta` became `#hq` and `#random` became `#lounge`, and that the bot now greets new members.
None of that has anything to do with the current content of the repository, and the tags have no relationship to the workshops today. Meanwhile the last push was on 2026-09-08, so the repository is being maintained. The lesson is that release tags on a community repository can be a historical footnote rather than a release channel, so read the commit history instead.
Where this repository is the wrong tool
The obvious wrong case is trying to use it as a library or framework. There is nothing to install, no documented API and no automation surface. A workshop is Markdown prose with whatever assets a specific tutorial needs, and the workshops site renders them.
The second wrong case is assuming the workshops are a course. They are self-led tutorials for a specific audience with a specific age range and a specific context, and a workshop that assumes a fifteen-year-old's prior knowledge will not transfer cleanly to a corporate training programme without real rewriting. There is no stated compatibility target for other curricula.
The third is using the content commercially without reading the split licence. Share-alike on adapted text is a genuine constraint for a paid product, and the README's TL;DR summary is the only place it is stated. Read `LICENSE` and `CC_BY-SA_LICENSE` before assuming a workshop is free to republish in a paid course.
One more practical note for anyone planning to build tooling around this: the three recorded releases are nine years old and the release notes describe Slack bots and channels that no longer exist. Anything reading releases to determine what is current will draw the wrong conclusion. The `workshops/` directory and recent commits are the reliable signal, and the workshop site itself is the canonical copy.
Editorial conclusion
This repository is worth reading if you teach coding to teenagers or write self-directed tutorials, because the workshops are built for exactly that and the whole thing is permissively licensed for reuse. It is the wrong dependency for anything programmatic: there is no package to install, no API, and no code of any substance in the tree. What to check first is the licence split, since workshops are CC BY-SA 4.0 and code is MIT, and those carry different obligations when you redistribute. Then look at the `workshops/` directory layout to see whether the format matches the tutorial structure you already use.
Frequently asked questions
What is in the Hack Club GitHub repository?
Self-led learn-to-code workshops, the Code of Conduct, and three directories: `workshops/`, `clubs/` and `internals/`. The README states the repository is where Hack Club stores its workshops, which it describes as self-led learn-to-code tutorials. There is no application code and nothing to install; the workshops are rendered on the separate workshops site.
Can I reuse Hack Club workshop content?
The licence section states that all content is under Creative Commons Attribution-ShareAlike 4.0 International and all code is under the MIT License, with the three licence files in the repository root. Attribution is required, and adapted text stays under the same share-alike terms, so read `LICENSE` and `CC_BY-SA_LICENSE` before republishing it commercially.
How do I contribute code to Hack Club?
Most code contributions go to other repositories rather than this one. The README points at `contribute.hackclub.com` for a list of more active repositories and a contributing guide. The routes named there include writing a workshop, drawing a dinosaur for the `hackclub/dinosaurs` repository, building a game in Sprig, and translating the site through the global repository.
Is the Hack Club repository still maintained?
The repository is not archived and the last push was on 2026-09-08. The release tags are misleading as a signal: the three recorded releases are weekly community updates from September and October 2017 describing Slack bots and channel renames, not releases of the current content. Commit history and the `workshops/` directory are the reliable indicators.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/hackclub-hackclub)Star history chart for your README
[](https://hysenlabs.com/projects/hackclub-hackclub)Was this useful?