9 ms·
Show HN: Find alternatives to almost any popular GitHub repo
Several months ago, I built a "stealth" feature that I could use. It hasn't been advertised, and I've been the only user. As I find it useful for myself, I believe others (software developers) may like it too. So, this is the first public post about it, and if it gets any positive feedback, I may put some time into promoting it more.
In essence, given that you've opened a GitHub repo (there are ~225k of the more popular ones indexed as of now), you can replace "github" with "libhunt" within the URL, and you will find the top alternatives and related projects.
For example, here are three popular repos:
- https://github.com/rails/rails https://github.com/rails/rails
- https://github.com/vercel/next.js https://github.com/vercel/next.js
- https://github.com/kovidgoyal/calibre https://github.com/kovidgoyal/calibre
To test it out, open any of the examples above and replace "github" with "libhunt" within the browser URL. You can also try with any other repository as long as it's a bit popular.
I'd be more than happy to answer any questions and receive some feedback. Thanks!
- bot41 5y agoNice one. The rails comparison is missing the JS version of Rails: RedwoodJS. How do you find the matches/similar repos?
- stanislavb 5y agoThanks! I track all repos mentioned on Reddit, Hacker News and Dev.to (almost in real-time). Then, the ones that are commonly mentioned are considered alternatives/similar. I also use some signals from LibHunt itself - what people are comparing and manually suggesting as alternatives.
- stanislavb 5y agoFor example, my example above is spoiling this logic a bit :D. I've mentioned three projects that are neither alternatives nor similar ones. However, their mentions have been tracked and used as a signal. Yes, it's imperfect, but it works "good enough" in most cases.
- jspann 5y agoWorks for me! Cool project! I really like the "Comparisons" page with brief info about the repos. Does it crawl all of GitHub to find repos with similar names or only stick to the popular repos that were already indexed? Also how does it rank the alternatives that it finds? For example on https://www.libhunt.com/bitcoin/bitcoin https://www.libhunt.com/bitcoin/bitcoin , why is umbrel above dogecoin or bitcoin book?
- stanislavb 5y agoThanks, mate! It crawls only projects mentioned on Reddit, Hacker News and Dev.to.
- ronyfadel 5y agoCrawling noob here: what's a good strategy to crawl these websites? Reddit is huge, how does one efficiently crawl it? Search API for Github links?
- stanislavb 5y agoI've built a custom engine to achieve that (Elixir/Phoenix). It uses a simplified version of the Aho–Corasick algorithm https://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_algorithm https://en.wikipedia.org/wiki/Aho%E2%80%93Corasick_algorithm to match all mentions of subscribed keywords/URLs. I use the same engine for SaaSHub, too.
- jspann 5y agoI see. Nice work!
- stanislavb 5y agoCheers! Work appreciation here on HN is highly appreciated. (as that could be a rare beast)
- markdown 5y agoThe top alternatives for next.js were rails and tailwindcss. Tailwind is css, and is no replacement for next.js OR rails.
- stanislavb 5y agoYeah, I know. That's a good example that the list includes both Alternatives and Similar projects. It's definitely imperfect in that direction as of now. That's something I'd like to improve in the future. I guess incorporating some on page user feedback like "Is it an alternative - Yes / No" could do the job...
- nyanpasu64 5y agoThe automated suggestion finding alternative seems poorly done and stuffed with ads: - https://www.libhunt.com/posts/564420-lifetimes-clones-and-closures-explaining-the-glib-clone-macro https://www.libhunt.com/posts/564420-lifetimes-clones-and-cl... (what's a post?) - https://www.libhunt.com/r/owning-ref-rs https://www.libhunt.com/r/owning-ref-rs (Tokio is unrelated to owning-ref, fluent.js isn't even the same language, and Scout APM is a stealth ad, not an alternative, and "fortify" wasn't even mentioned). - https://www.libhunt.com/libretro/RetroArch https://www.libhunt.com/libretro/RetroArch (351ELEC doesn't run on the same hardware as RetroArch, aliaspider/pcsx2 is an outdated fork of the actual PCSX2, and SonarQube is a stealth ad). In fact for the first two URLs, I think I found libhunt.com in Google search results, and they were entirely useless. To me it's worthless SEO spam like Pinterest.
- abathur 5y agoI don't like to fling poo at anything people are putting their heart into, but... I've been wondering who to be annoyed at about this. libhunt (along with joyk, giters, pythonissues, libreddit, teddit, opensourceagenda, githubmemory, maybe some I'm forgetting?), is on the list of content-repackagey sites regularly eating up slots in the top 2 pages of search results for the exact name of my wee attention-starved project on ALL of google, ddg, and bing (it even eats 2 of the 5 paltry entries bing bothers to show on the first page of results!) And, of course, none of the comparisons are relevant. Constructively: it would be great if the developer would, at minimum, figure out where the roll-off point for not-popular-enough-to-get-decent-results is, and discourage search engines from indexing pages under the threshold.
- omnicognate 5y ago> I've been wondering who to be annoyed at about this. I suggest being annoyed at Google.
- abathur 5y agoI can chew two sticks of gum at once.
- toastal 5y agoWill give recommendations from other Git forges too?
- Crazyontap 5y agoCool project. In a related note, sometime back I used to use cdnjs a lot to find the best js libraries and related projects too. So let's say you're looking for the best carousel library, just type carousel in their search and it will show you all the popular carousel libraries sorted by github stars.
- etewiah 5y agoThis is awesome! Awesome enough that I actually don't mind that it has ads. I checked out my project (https://www.libhunt.com/etewiah/property_web_builder https://www.libhunt.com/etewiah/property_web_builder ) and even though the alternatives were not bang-on, there is a button to suggest alternatives so the results can be improved. What I really like though are the mentions. I'll keep coming back to that page if only to keep an eye on where my project is getting mentioned.
- stanislavb 5y agoHah, the engine that tracks mentions was a separate product. It was built to track brand mentions on social networks. i.e. the reason you'd be coming back to this page. However, as I couldn't market it, I repurposed the whole project to be used as a back-end engine only.
- culi 5y agoHey I've actually come across this tool before, so you must've gotten something right with the SEO. Also wanted to plug AlternativeTo[0] which I'm constantly shocked by how little known it can be even amongst people who work in tech. [0] https://alternativeto.net/ https://alternativeto.net/
- stanislavb 5y agoThanks! Another product that I've built, SaaSHub https://www.saashub.com https://www.saashub.com, is an alternative to alternativeto.net :D
- culi 5y agoHey this looks great! This next sentence is gonna be a mouthful, but the alternatives to SaaSHub listed on SaaSHub seem much better than the alternatives to alternativeto listed on alternativeto. Interestingly, SaasHub doesn't show up as one of the top alternatives to alternativeto on alternativeto
- danuker 5y agoThank you! This looks nice. The one I've been using so far seems to glitch sometimes: http://www.yasiv.com/github/ http://www.yasiv.com/github/
- iFire 5y agoAny idea why it says https://www.libhunt.com/godotengine/godot https://www.libhunt.com/godotengine/godot is GPL3 and not MIT license?
- stanislavb 5y agoOutdated data... also, the license seems to have been modified recently.
- sjml 5y agoBeen MIT at least since their 1.0 release 7+ years ago... https://github.com/godotengine/godot/tree/1.0-stable https://github.com/godotengine/godot/tree/1.0-stable
- Doctor_Fegg 5y agoThere seems to be something wrong with the licence parsing: https://www.libhunt.com/r/tilemaker https://www.libhunt.com/r/tilemaker also wrongly claims GPL 3.
- deleted 5y ago[deleted]
- svnpenn 5y agoI suggested an alternate to something, and it said it was approved. However I dont see the suggestion if I refresh the page. So are the suggestions just meaningless, or whats the deal?
- stanislavb 5y agoOnly the top 21 alternatives/relevant repos are listed. If your suggestion didn't cross the "threshold", that's the reason it wasn't listed immediately. In most cases, if another user suggests it, it may pop up. Also, this is a known "issue"/confusion! I will add a section with the most recent suggestions. That should regard this case. At least for the time being. p.s. thanks for trying LibHunt and your feedback.
- madeofpalk 5y agoResults for your examples don't seem too great to be honest. https://www.libhunt.com/vercel/next.js https://www.libhunt.com/vercel/next.js gives: - React (Next.js is a framework on top of react) - Tailwind (is a CSS framework, not a website framework) - [a sponsored result that is not an alternative] - Gatsby - An alternative! - Typescript (is a language) - Express - (is a server, stretch to call it an alternative) - Nuxt.js - an alternative!!
- jacobmischka 5y agoAgreed. I actually spent about an hour on Tuesday looking for alternatives to outdated JS libraries, and every one of these "alternatives" sites listed mostly tangentially related libraries and very few actual alternatives. I imagine they're mostly generated by user behavior somehow, but something could use tweaking for sure.
- addandsubtract 5y agoI'm surprised no one has mentioned it here, but I'm a fan of npmtrends[0]. You can search for npm libraries that you know, and it will recommend related searches for you. Then it'll compare them based on downloads over time and show their github activity at the bottom. I use this every time I need to find a new library. [0] https://www.npmtrends.com/ https://www.npmtrends.com/
- jacobmischka 5y agoThanks for the link, bookmarked!
- culi 5y agoOn that note, another slept-on website is OpenBase[0] which allows you to find and rate alternatives to different packages/libraries and gives you information like weekly downloads, github stars, last commit, etc. It really makes a big difference in comparing different options [0] https://openbase.com/ https://openbase.com/
- syntaxfree 5y agoI tried a couple of projects that are way too small to get alternatives listed. I got 404s, I expected a page with the libhunt design with some basic metadata and a vague assertion that they will be checked out. Also: you should be logging those misses.
- stanislavb 5y agoThat's a good call. I will definitely implement it. Thanks!
- junon 5y agoYour URL thing doesn't accept https://GitHub.com https://GitHub.com but does accept https://github.com https://github.com. They are the same URI, though.
- ayewo 5y agoWith respect to your demo using 3 popular repos, it would have been nicer if you put the corresponding libhunt link next to each GitHub link, especially for those of us on mobile.
- showbufire 5y agothis is really cool
- mro_name 5y agoWonderful! Have you considered a machine readable DOAP access?
- mro_name 5y agowould be cool if the german non-profit forge https://codeberg.org https://codeberg.org were allowed. Edit: And Drew DeVault's https://git.sr.ht/ https://git.sr.ht/ Edit 2: And this gitlab project https://www.libhunt.com/r/geohash https://www.libhunt.com/r/geohash has github icons all over the place.
- spookyuser 5y agoThis is really cool, just found something I'm going to use in a project because of this!
- yakshaving_jgt 5y agoI didn’t find any alternatives, but I did find that my library has brought joy to the world. https://www.libhunt.com/jezen/is-thirteen https://www.libhunt.com/jezen/is-thirteen
- michidk 5y agoNot very accurate https://www.libhunt.com/funtoo/keychain https://www.libhunt.com/funtoo/keychain
- stanislavb 5y agoYou could also contribute and suggest some better options...
- incognos 5y agowhy be part of the solution? This is great work, much nicer than the so many predatory sites that claim to list alternatives only to pump up some trek they built and try to charge for.... Keep up the good work!!
- thatguyagain 5y agoCool idea for sure, but as others have pointed out, it's not great yet. How would this work though? Wouldn't you need to have some meta data about the base lib, like for example "web framework", so that you can search for other libs using the same language (if that's even relevant) that also has been tagged as "web framework"? Seems tricky to me, but I don't know.
- vaughan 5y agoThe key is manual curation. Once you need to find a library, you do a bit of Googling/Reditting, and after 30mins you have the full low down on what are the actual alternatives and the differences. All the automated library tools don’t work.
- teodorlu 5y agoAgreed - this is a subjective value judgment, hard / impossible to automate. As a list of links to check out, sure. As an automated conclusion? No thanks. Someone is going to have to make a judgment call. If curation isn't built into the service, the user must spend more effort.