Open-source packages are inseparable from software development.
Developers use packages for date-pickers and charts, database and network access, time zones and currency conversions – just about anything.
And we research extensively to find the right open-source package. There are over 3 million open-source packages out there, with hundreds of new ones popping up every day, which makes it tedious to find the right open-source package.
Let’s say you’re looking to implement natural language processing. You start with Google, looking for leads to potential packages. You open links to registries like npm or PyPI, sift through the READMEs, look at version histories and download counts. You open links to GitHub repositories and look for indicators that the project is well maintained (When was the last commit? Does the package have enough maintainers and contributors? What does the issue backlog look like? Are PRs being merged?). You also consider how popular a project is (mostly evident by star count).
But popularity and other such metrics don’t tell you the full story, because they cannot convey the nuances of using a package, and they don’t tell you what the developer experience is like. To perform a more qualitative query, you ask friends and colleagues, and search for blog posts, roundups, developer forums, and even tweets.
At Openbase, we thought there must be a better way to search for open-source packages. So we built a platform that streamlines the process for developers, bringing the same indicators and resources to them in one single multi-faceted search interface. Our open-source search engine helps developers find the right package every time, without the hassle.
Given the critical nature of search to our product, we invested great amounts of time and energy to build the best search UI/UX. Luckily for us, Algolia, a leading site search SaaS provider, has offered us a substantial discount with unlimited space, usage, and features, and an ongoing partnership to help us continuously improve our product.
As a developer, you’re looking for a package to accomplish a specific task that has been accomplished countless times by others and you don’t want to reinvent the wheel.
So you start searching…
To help narrow your options, the Openbase team works continuously with the open-source community to curate thousands of categories for each task that comes to mind.
Let’s say you’re looking for a calendar component for your web application.
When you go to Openbase, you start by searching for “calendar” and then choosing the Calendar category from the search results.
Within the category, you could enjoy a hand-picked list of the best calendar libraries out there. While categories are useful, the real power comes from filtering the list down by framework (e.g., “React”) or other, more advanced filters based on your specific needs.
Openbase allows you to compare packages in terms of their star count, downloads, last commit, and user sentiment.
Typically, you’ll come up with a shortlist of a few promising packages that seem like a good fit.
You can then open the dedicated page for each package. We have found that most developers choose 2-4 packages at this stage.
On the package page, you can get all the data you need about a package in one place:
Equipped with all that knowledge, you can make a decision about the right package for you!
Here are some of the technologies we used in order to build Openbase:
Behind the scenes, Openbase is continuously pulling data from various data sources to keep data fresh:
We pull new versions, metadata, download counts, and more.
Finally, many of these packages are accompanied by a GitHub repo, so we have an additional service Crawling GitHub to gather metadata, as well as data about commits, issues, and PRs.
And we’ll continue to add new indicators to help you choose the right package.
Lior Grossman
Founder & CEO of OpenbasePowered by Algolia AI Recommendations
Gianluca Bargelli
Software Developer & Pizza Lover 🍕Catherine Dee
Search and Discovery writerElliott Gluck
Senior Product Marketing Manager