useful-forks / useful-forks.github.io

Improving GitHub's Forks list discoverability through automatic filtering. The project offers an online tool and a Chrome extension.
https://useful-forks.github.io/
MIT License
1.18k stars 61 forks source link

Bookmarklet usage #54

Closed iboB closed 1 year ago

iboB commented 1 year ago

Suggests usage as a bookmarklet in the docs

iboB commented 1 year ago

Cool. I'm glad you like it. Nice catch on the regex

Bookmarklets are pretty neat and I'd take a bookmarklet over an extension any day. In many cases the features are identical. They do seem to be fading into obscurity for some reason, but they were very popular before 2010... Yeah, I'm old.

Anyway, the exclamation mark (not) in this case is just a minification trick for cases where you don't care about the return value. Without it the function definition would have to be wrapped in parens like; (function(){ ... })(). With ! you save one byte. Yay!

payne911 commented 1 year ago

the exclamation mark (not) in this case is just a minification trick [...]

Ah, interesting! All examples I was seeing online used that (function(){ ... })() approach, and I couldn't find much info on your trick. Thanks for sharing.

By the way, if you also think it's a bit unfortunate that this trick requires some "bookmark real estate", I think this idea would be great to implement.

I think either of these two approaches would be totally fine:

  1. Since clicking on GitHub's "Fork" button doesn't bring us to the list of forks anymore, but instead proposes to create your own fork of a repository... it seems like the benefits of the useful-forks plugin are really far from users (i.e. multiple clicks away: clicking "Insights", and then "Forks"). I've always disliked how the plugin was essentially a duplicate of code, which thus makes things harder to maintain. It might be time to scrap the entire thing, and reimplement the plugin as a really thin piece of code that simply adds a quicklink button in the appropriate places (next to the "Fork" buttton and/or in that Insights sub-page).
  2. Making a PR for refined-github to actually have that feature as well.
iboB commented 1 year ago

IMO find this tool a bit more useful than github's Network UI. It saves me a lot (and in some cases A LOT) of panning or at least horizontal scrolling, and in many cases it's also much faster.

Something really useful though, would be a tool that can also find detached forks. For example RmlUI is a detached fork or libRocket: it has the exact same first 583 commits. To find it from libRocket though, it you would have to do considerably more digging than just looking at forks.

Really it should be GitHub that must implement something like this. I've seen at least three GitHub issues about this or something really similar but so far nothing seems to be going on in this direction

I've been thinking of whether something like this is possible to do externally and I have some ideas, but I guess the best way to do this would be to scrape GitHub itself to get something like a mirror of all relevant metadata and use it to find candidates. Sadly that's too much resources for an indie open source project.

As for the bookmark real estate, to me that's not an issue. I have (just checked) 1492 bookmarks and many (hundreds) of them are bookmarklets. Yes, some of them are unused or unusable but even after a cleanup I would likely still have hundreds. I just use a bookmark manager with fuzzy search and tags.

payne911 commented 1 year ago

@iboB FYI:

It might be time to scrap the entire thing, and reimplement the plugin as a really thin piece of code that simply adds a quicklink button in the appropriate places (next to the "Fork" buttton and/or in that Insights sub-page).

That's now a done deal (main code: https://github.com/useful-forks/useful-forks.github.io/commit/63b9a3c49dd1bce9e1daf93dd4ea90bda002594e). :D

https://chrome.google.com/webstore/detail/useful-forks/aflbdmaojedofngiigjpnlabhginodbf