lovely-forks

? ? Show notable forks of GitHub repositories under their names.

Github星跟蹤圖

Lovely forks logo

Lovely forks


An addon to help you notice notable forks of a GitHub project.

Sometimes on GitHub, projects are abandoned by the original authors and the
development continues on a fork. However, the original repository is seldom
updated to inform newcomers of that fact. I have often wasted effort on making
a pull-request or installing old buggy versions of projects when the community
had already moved to a fork.

To make matters worse, the old projects usually have higher search-engine
traffic and a lot more stars than the forks. This makes the forks even harder
to find. This addon tries to remedy that by adding a subscript under the name
of the repository on the GitHub page of the project with a link to the most
notable fork (i.e. the fork with the most stars and at least one star), if such
a fork exists.

Also, if the fork is more recent than the upstream, a flame icon is shown
next to it. These are called flamey forks
as suggested by Mottie.

Use cases

The tipsy plugin hasn't been updated since
2012 and there is a community supported
fork
which has merged in all the PRs.
However, the alternative only has 27 stars versus the 1,888 stars of the
original project (at the time of writing):

Similarly, the project slate was last
updated in 2013 and has about 5,000 stars. The currently active
fork
only has 185 stars (at the time of
writing):

In some cases, a new flavour of the project might become visible, like an
internationalized fork (Semantic-UI-pt-br
is Semantic-UI in a different
language):

Or provides new features (vim-fugitive
provides git integration for vim,
vim-mercenary provides Mercurial
integration):

Development

Please install the following before building the extension:

  • web-ext
  • jq Note: This is not the jq on NPM, which is a server-side jQuery replacement.

The project is supplied with a Makefile which can produce final files for both Firefox and Chrome.

make chrome
make firefox

The build is done by selectively copying parts of the source code to the folder ./.tmp and then archiving it again using either zip (for Chrome) or web-ext (for Firefox).
The final archives are kept in the ./build folder.

Testing

The xo style checker is used for setting the style guide
in the code.

For testing, the extension can be loaded into Chrome by going to chrome://extensions and clicking on the Load Unpacked Extension button.
Then navigate to the .tmp folder in the source code root which was created by running make chrome and load it. An alternate is to run make manifest in the root folder and then load the source code root as the unpacked extension. This will allow for a simpler edit-reload cycle, except while editing manifest.json.template.

For Firefox, the easiest way to test the packaged extension would be to download the unbranded build or the Developer Edition and loading the extension there. Otherwise, one would need to sign the extension via your account on their Addon server. Go to about:addons, to the Extensions Tab and click the Gear icon (Settings) on the top right to load the packed extension.

If the browser still complains that the package has not been signed, then go to about:config and set xpinstall.signatures.required to false. Note that this setting only takes effect on the Developer Edition and the Unbranded versions of the browser even though it shows up in about:config pages of the release channel versions as well.

Acknowledgements

This project uses icons made by
Freepik and
Dave Gandy from
www.flaticon.com is licensed by
CC BY 3.0.

bfred-it has contributed to improving the look
and feel of the extension considerably. He also brought the extension from the dark age into the space age of JavaScript.

izuzak from GitHub was instrumental in helping me
with bug fixing and suggesting compare API
for improving the heuristic to determine if a fork is more recent than the upstream
repository.

yfdyh000 added a userscript version and made the switch from Firefox Addon SDK to Web-extensions.

Jackymancs4 fixed a bug and re-enabled the settings page.

olso added an option to set how many days old the last commit on the current repository should be before the forks are shown.

主要指標

概覽
名稱與所有者musically-ut/lovely-forks
主編程語言JavaScript
編程語言JavaScript (語言數: 4)
平台
許可證Mozilla Public License 2.0
所有者活动
創建於2015-06-21 21:28:55
推送於2024-03-07 19:28:04
最后一次提交2023-11-04 15:20:07
發布數29
最新版本名稱3.7.2 (發布於 2021-07-04 11:49:48)
第一版名稱0.0.0 (發布於 2015-06-22 22:41:31)
用户参与
星數638
關注者數15
派生數38
提交數225
已啟用問題?
問題數45
打開的問題數14
拉請求數50
打開的拉請求數2
關閉的拉請求數7
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?