HelloGitHub: 126 Issues, 10 Years, None Skipped
The Chinese open-source monthly HelloGitHub says it has published on the 28th for ten years. I checked the commits and counted all 126 issues.
My August headline was “This open-source monthly has not missed an issue in ten years”. The text said it publishes punctually on the 28th of every month and has never broken the run.
I wrote that from the site’s own description. The site says it updates on the 28th of each month, so I wrote that it updates on the 28th of each month. I did not check.
“Ten years without a break” is a claim that can be verified. Each issue of the monthly is a file in a GitHub repository, and each release is a commit with a timestamp. So this time I checked.
The result: the claim basically holds, and the checking turned up a few numbers I find more interesting than “never missed”.
What is HelloGitHub?
Figure: HelloGitHub’s GitHub repository, captured October 2026 (source: github.com)
It is a monthly in Chinese about open-source projects. The repository description is one sentence: “Share interesting, entry-level open source projects on GitHub.”
Each issue is a list, sorted by programming language, with a sentence or two of plain description for each project and sometimes a screenshot. The maintainer’s GitHub account is 521xueweihan.
The problem it solves is concrete. There are more projects on GitHub than anyone can look through, and search results are often filled by the few with the most stars. What HelloGitHub does is selection by hand: someone has already gone through a round and picked out what he finds interesting and what a beginner can follow.
You can read it in two places. In the content directory of the GitHub repository, each issue is a Markdown file. The site hellogithub.com has a better-laid-out version, plus rankings and search.
Has it really not missed in ten years?
Figure: HelloGitHub’s basic numbers (counted for this article from the GitHub API and the 126 files in the repository’s content directory, queried 2026-10-13)
I did three things.
First, I asked the GitHub API for the repository’s basic data. It was created on May 4, 2016. When I queried, it had 181,768 stars and 12,993 forks. The last push was on September 28, 2026.
Second, I listed every issue file in the content directory. The file names run from HelloGitHub01.md to HelloGitHub126.md. I extracted the numbers, sorted them, and checked for gaps between 1 and 126.
There are none. 126 files, 126 consecutive numbers.
Third, I looked up when each issue was released. The repository’s commit messages follow a fixed format announcing the release of each numbered issue. I pulled all the commits and picked out the ones whose message announces an issue.
This step has a limit. I found 95 commits matching that format, covering issues 32 to 126. For the 31 earlier issues the commit messages are written differently, and I could not match dates the same way.
For the 95 I could match, the timing is this: issue 32 is November 2018 and issue 126 is September 2026. That is 94 months apart and exactly 94 issues. One a month, with no month skipped.
So what I can confirm is: from November 2018 to now, nearly eight years, there has been an issue every month. For the two and a half years before that, the numbering is consecutive, but I did not verify the month of each release.
The repository was created in May 2016. To September 2026 that is 125 months, yet there are 126 issues. Whether the extra one comes from two releases in some early month, or from issue 1 being counted before the repository was created, I cannot tell from the commit history.
Is it the 28th every month?
Figure: The day of the month on which release commits fall (counted for this article from the times of GitHub commits announcing an issue, converted to Beijing time)
Not exactly, but very nearly.
I converted the times of those 95 release commits to Beijing time and looked at which day they fall on.
- 28th: 52 issues
- 27th: 32 issues
- 26th: 5 issues
- 29th: 5 issues
- 25th: 1 issue
A little over half are on the 28th itself. A third are on the 27th. The two 27th commits I looked at were at half past ten and after eleven at night. That is, the files were pushed the evening before.
The earliest is the 25th and the latest the 29th. In 95 months, not once does it fall outside those five days.
The latest issues are very regular. The commit times for issues 124, 125 and 126, converted to Beijing time, are all a little after eight in the morning on the 28th, within ten minutes of one another. The one before, June 2026, was on the morning of the 29th.
The August piece said “punctually on the 28th of every month”. The more precise statement is that there is always one between the 25th and the 29th of each month, and more than half land exactly on the 28th. For something one person has maintained for ten years, I find that record remarkable.
How many projects in ten years?
I downloaded all 126 files and counted the project entries in each. The format is very regular: each project is a line of “number, name: description”, which can be matched by a rule.
The total is 4,222. An average of 33.5 an issue.
The smallest issue has 9 entries and the largest 46.
The size has grown gradually. The first 12 issues averaged 15.6 entries each, and the latest 12 average 39.8. An issue today is about two and a half times the size of an early one.
One thing to note about this number: it counts entries, not distinct projects. The same project may have been featured in different issues. I did not deduplicate.
Figure: How many of the 126 issues each category appears in (counted for this article from the category headings in each issue file)
Categories can be counted too. Each issue is divided by headings such as “Python projects” and “Go projects”. I counted how many issues each category appears in.
Python and JavaScript are the only two languages present in every issue. All 126, without a gap.
Go first appears in issue 3 and has been absent only twice since.
The “artificial intelligence” category has existed since issue 9 and appears in 107 issues in all. Issue 9 dates from around the end of 2016, many years before the current wave.
Rust first appears only in issue 26, and in 64 issues since. That roughly matches when Rust became popular among developers.
A monthly’s table of categories turns out to be a ten-year record of what was fashionable in technology.
How do issue 1 and issue 126 differ?
Figure: HelloGitHub issue 126, published 2026-09-28 (source: hellogithub.com)
Issue 1 has 17 projects. I listed the names: typo.css, ant-design, VeryNginx, tushare, python3-cookbook, design_patterns. A front-end framework, Chinese typography, Python tutorials, design patterns. Very much 2016.
Issue 126 has 39 projects. In the contents on the right there is a category that issue 1 certainly did not have: Skills.
That category first appears in issue 121 and has been in all six issues since. It collects “skill packs” for AI coding agents. Issue 126 has four of them, such as an image-generation skill pack with 278 hand-drawn styles, and a skill that has an AI generate 3D traditional buildings assembled layer by layer.
It is not only the Skills category. I went through the description text of every entry in issue 126, and 17 of the 39 mention AI, models, agents, Claude or Codex. More than 40%.
A few examples:
ccstatusline: a status line for Claude Code showing the current model, Git branch and similar details.orca: a tool that has several AI coding agents develop in parallel.skills-manager: central management for AI skills scattered across different tools.ego-lite: a browser shared by people and AI agents without getting in each other’s way.TencentDB-Agent-Memory: a system for several agents to share team memory.
Ten years ago this monthly was introducing how to learn Python. Now nearly half of it introduces how to get AI to write code for you. What a coding agent is can be found in the glossary.
The other half still tastes as it always did. The same issue has a Windows tool that previews a file when you press the space bar, a calculator that converts physical units automatically, a quadcopter built on an ESP32, and a picture frame that identifies birds from their song and shows them on an e-ink screen.
I went and read the description of that last one. It uses a Raspberry Pi and a microphone to pick up birdsong nearby, identifies the species, and displays it in the style of a classical illustration. Something like this will never appear on any “most popular” list, but it is the reason I think the monthly is worth subscribing to.
Who is this monthly for?
This is how I would use it.
If you have just started programming, go straight to the category for the language you are learning. Pick one or two projects per issue, download the source and read it. The monthly selects entry-level projects, which are usually not large.
If you are an experienced developer, I suggest starting with “others” and “artificial intelligence”. You probably already know what is new in your own language’s circle. The surprises are usually in the categories you do not know well.
If you only want to know what is in fashion, the category list of the last three issues is enough. The appearance of the Skills category is more direct than any trend analysis.
One caution. The monthly is written in Simplified Chinese with mainland usage, so the terms for “agent” and “large language model”, for example, are the mainland ones. It reads without difficulty, but when you search you need to use its words.
Another point is that the selection reflects the maintainer’s taste. It leans towards tools, towards the practical, and towards small things made by individual developers. Large frameworks from large companies are fewer. That is no fault, but you should know it is not the whole picture.
How do I see it?
The August piece concluded that this model of “hand-edited, monthly, the same for ten years” is unusual in an age of information overload. I still agree, and now there are numbers to support it.
What I want to add is something the checking made me realize. With a claim like “ten years without a break”, in most cases you can only believe it or not. But this monthly keeps its entire history in a public version-controlled repository. When each issue was released and what was changed, anyone can look up. Its credibility does not come from how it describes itself. It comes from letting you verify it yourself.
This site has been rewriting its old articles lately, and the cause was finding that many of the statements written at the time had not been checked. This one too. I wrote “the 28th of every month” from the official tagline, and this time a few lines of commands were enough to find the actual distribution. That effort should have been made in the first place.
What would change my view? If the release records of those 31 early issues showed that some months were in fact empty and filled in later, “ten years without a break” would have to be discounted. I did not check that finely this time. What is certain is the most recent near-eight years.
There is one more question I have no answer to. One person has maintained this for ten years, choosing thirty or forty projects a month. A large share of the open-source projects added every day now are produced by AI, and there are far more of them than ten years ago. How long hand selection can keep up, or whether it becomes more valuable than before, I do not know. The birdsong picture frame in issue 126 inclines me to the latter.
What this rewrite corrected
- The original said it publishes punctually on the 28th of every month and has never broken the run, based on the site’s own description. This version checks the commit history: issues 32 to 126 are monthly without a break, with release dates between the 25th and the 29th and 55% on the 28th. The months of issues 1 to 31 were not verified one by one.
- The original’s star count (172,100), fork count and latest issue (No. 124) were August figures. They are now 181,768 stars, 12,993 forks and issue 126.
- The original said 617 issues had been opened in total, that the license was CC BY-NC-ND 4.0, and that sponsors included UCloud and OpenIM. These were not re-verified this time and are removed.
- The original listed the projects of issue 124 in detail. This version uses the latest, issue 126, as the example and adds a comparison with issue 1.
- The original contained no statistics. This version adds the total number of entries across 126 issues, the average per issue and the distribution of categories.



