26 個 GitHub 儲存庫獲 98 顆星後,我發現工程投入與星數無關
98 stars across 26 repos taught me that engineering effort and GitHub stars are unrelated
一名開源工具維護者盤點其 26 個公開儲存庫,合共獲得 98 顆星和 28 個 Fork,發現工程投入與 GitHub 星數並無直接關係。花最少時間的儲存庫星數最高,而他最引以為傲的軟件只有該儲存庫三分之一的星數。清晰的授權、安裝方式、實際示範及離線測試,都是他觀察到有助降低使用門檻的做法。
I have been building open-source tools for Indian markets under
github.com/85599 since 2021. Last week I pulled the actual numbers instead of the
impression I had in my head:
- 26 public repos, 98 stars, 28 forks, 21 followers
- 21 of 26 had a description; 21 had a license; 16 had topics, 10 had none
- CI runs on 4 of my 6 flagship repos. Two do not.
And the ranking was a slap:
| Repo | Stars | Forks | What it is |
|---|---|---|---|
| BankNIFTY-Golden-Ratio-Strategy | 18 | 12 | a ~10-line README describing one rule |
| KJStockScreener | 10 | 4 | Streamlit screener, live on Streamlit Cloud |
| pinesprout | 8 | 3 | a Pine Script CLI toolkit with its own lexer, parser, formatter, linter, v4→v6 upgrader, on PyPI |
| Strike & Hedge | 6 | 0 | NSE+BSE chains, Greeks, PCR, max pain, rule engine, optional multi-agent desk |
| Research-Copilot-Pro | 6 | 2 | analyst → bull/bear → risk → PM agent pipeline for Indian equities |
The repo I spent the least time on has the most stars, and the one I am proudest of as software has a third
of them. Here is what I think that actually means, plus the levers that did work.
Lesson 1: a rule stated plainly beats a tool nobody can evaluate in 10 seconds
BankNIFTY-Golden-Ratio-Strategy is this, nearly verbatim: golden number = ((prev high - prev low) + first, buy above prev close + that, sell below prev close - that, 0.5% stop, 2%
10-minute opening range) * 61.8%
target. Its own README says "Its a bad but popular strategy that makes decent returns."
I wrote that line honestly and it is the reason people trust the rest. That repo has 12 forks against 18
stars - an absurd ratio, and it means people are taking the rule and coding it themselves rather than
starring and leaving. The engineering-heavy repos get stars from people who want the binary; the one-paragraph
repo gets forks from people who want the idea.
If you only maintain one thing, consider maintaining the idea in a form someone can copy in ten seconds.
Lesson 2: my topics were noise, not search terms
Here is a nice way to check whether your own metadata is doing anything: ask what someone would type into
GitHub search to find your repo, and compare it to the tags you actually set.
pinesprout - a command-line linter, formatter and v4-to-v6 upgrader for Pine Script - was tagged
tensorflow, deep-learning, machine-learning, nlp, data-science. It does not use TensorFlow. It does
not use a model for the linting, formatting or upgrading at all; those are a hand-written lexer and a rule
engine. Meanwhile cli, linter, static-analysis and code-formatter - the four words someone searching
for exactly this tool would type - were missing.
So those are set now, along with open-interest, max-pain and llm-agents on the options desk, and
computer-vision on the chart reader. Three things I learned doing it:
-
GitHub caps you at 20 topics per repo.
nifty-deskwas already sitting at 20 (and its 20 are genuinely good ones -ocr,openpyxl,payoff,risk-management), so there was nothing to add. The cap was the problem, not the tags. -
PATCH /repos/{owner}/{repo}silently ignores thetopicsfield. My first script "succeeded" on all six repos and changed nothing, because topics live at their own endpoint (PUT /repos/{owner}/{repo}/topics, which replaces the whole list - read it first and merge, or you will delete everything that was there). A 200 response is not a confirmation; read the value back. -
Topics and stars are independent.
Trading-Viewhas 5 stars and zero topics.Strike & Hedgehas 6 stars and 20 topics. Tagging a repo is writing a search term for a stranger; it says nothing about whether anyone wanted the thing.
Lesson 3: what actually moved stars was removing friction
The pattern across every repo that grew:
- MIT, stated in the badge. The 2021 ones without a license file read as "all rights reserved" and get skipped. No license does not mean "free to use", it means "legally unclear", and a careful evaluator will close the tab rather than guess.
-
"No API key needed" in the first sentence. That is a data-source claim, not a feature, and for anyone
evaluating a finance tool at 11pm it is the whole decision. Both
Strike & Hedgeandoptionchainpro-terminallead with it. -
A binary for people who do not have Python.
nifty-deskships a Windows exe (NiftyDesk-win64-v1.0.4.zip) precisely because the traders who wanted it were the least likely to runpip install. The install path that reaches the most people is usually not the one engineers prefer. - A GIF of the real flow, and real generated output. No mockups. The Excel screenshot in that README is an actual workbook the tool wrote. This is the only "marketing" skill I have, and it does more than any feature list.
-
Tests that run offline. 45 tests in
Strike & Hedge, 58 inMarketMitra-AI, no network, no keys - so a reviewer can prove the thing works without becoming a trader.python -m pytest tests -qbeing a green 30-second experiment is worth more than a paragraph of claims. -
Honest caveats. The
Strike & HedgeREADME has a table of every public data source it could not find - no intraday FINNIFTY, no futures quotes, BSE not publishing delta-OI intraday - and a Known Limits section saying what the tool refuses to score. Every issue I got after adding it was a feature request instead of a "this is broken" report.
Lesson 4: the graveyard is instructive too
Ten of 26 repos still have zero topics, and the list decomposes cleanly once you look at it:
-
Seven 2021 relics -
85599.codebook.io,flames.github.io,real-time-chat(all January 2021),Remoting-CMD(February),85599.github.ioandDjango-based-stock-trading-platform(March),Thar(also 2021). -
Two forks (
AI-Trader,nofx), which inherit no topics by design, so they are a non-issue. -
One genuine oversight:
Trading-View, a 2026 repo of my own with 5 stars and no topics at all.
Those 2021 repos are not embarrassing - 2021 me was learning to push code at all. But they drag on the
profile: a visitor who lands on the repo list sees the last rows of a table of silence.
The rot clustered, but not perfectly - which is the more honest finding. Of those ten topic-less repos, five
had no description and two had no license GitHub could detect. Those two lists overlapped without being the
same list, so "fix the plumbing" turned out to be per-repo work rather than one bulk operation.
And one finding genuinely stung: the repo with the most stars - 18, plus those 12 forks - had no LICENSE
file. Which means, legally, it was all-rights-reserved, even though I wrote it to be copied. Twelve people
forked a strategy they could not safely reuse. If you publish anything, put the license in before you tell
anyone about it; MIT takes ten seconds and its absence quietly suppresses exactly the reuse you wanted.
The worst one, though, was Thar - a 2021 Java repo that GitHub has had blocked for sensitive_data since
August 2021. No description, no license, and the file view returns a block notice. I genuinely do not
remember what is in it. Whatever it was, it has been sitting there flagged for four years while I worried
about whether my Pine Script linter had enough topics. Check your blocked and flagged repos first; that is the
metadata that matters.
What I fixed, and what is still broken
Done, last week:
- Real search-term topics merged into the flagship repos (read-then-merge, because that endpoint replaces).
- Descriptions added to the four old repos that had none, and MIT files on
BankNIFTY-Golden-Ratio-Strategy,Django-based-stock-trading-platformandreal-time-chat, credited to the GitHub handle rather than a personal email. That is 24 of 26 licensed; the two that are not are a fork (which is not mine to license) and the blocked repo below. - A dev.to link in the profile README and in three flagship READMEs, so the write-ups and the code point at each other.
Still broken, and I am saying so rather than editing this post later:
-
Tharstays blocked until I decide to delete it - which is irreversible, so it waits for a clear head. Twenty-four of 26 repos licensed is fine; one repo I cannot open is not something a badge can hide. - CI on
Research-Copilot-Proandtradingview-chartsense. Four of six flagship repos have it; two do not. - A hosted demo path for the repos that need one, longer READMEs for the strategy repos, and a decision on whether each 2021 relic is archived or actually maintained.
If you maintain open source in a niche where the users are not developers - finance, design, ops, healthcare -
what has actually moved your stars? I am specifically looking for the ones that were not "write a better
README". And if any of this is useful to you,
the profile is here; every repo I own and can open is MIT, so forks, issues and
"this exe does not run on my machine" reports are all equally welcome.
來源:DEV Community · dev.to