lucavallin
Published on

Meet verto.sh: Your Gateway to Open-Source Collaboration.

avatar
Name
Luca Cavallin

About a year ago I started verto.sh, a website that helps you find a project for your next open-source contribution. I've been working (and other contributors!) on it in my spare time and I'm excited to share it with you.

What is verto.sh?

verto.sh is a website that helps you find a project for your next open-source contribution. It's a simple website that shows you a list of projects on GitHub that have open issues labelled as good first issue or help wanted (configurable in the source code). You can filter repositories by programming language or tag and sort by stars. verto.sh is free and open-source, inspired by DeepSourceCorp/good-first-issue, which is now unmaintained and outdated. I wanted to create a similar project, but with a few differences:

  • Stricter criteria for adding a repository to the website

  • More filters and sorting options

  • A better user experience

  • Low operational costs to keep the project running for a long time on its own

How does it work?

verto.sh is a static website that is generated using Next.js (and therefore React.js), TypeScript and TailwindCSS. The source code is available on GitHub:

The data/get.ts script fetches data for the repositories from the GitHub API and it has recently been updated to use the GraphQL API for performance and rate-limiting reasons. Once the data is fetched, the script generates a JSON file that is used by the website to display the repositories. The static website is then deployed to GitHub Pages every 24 hours using GitHub Actions.

How can I contribute?

There are many ways to contribute to verto.sh: for example, there are a few open issues in need of a contributor and we are always open to feedback and feature requests. The repository contains a detailed guide on how to contribute to the project, but here's a quick summary:

  • Fork the repository, clone it locally and ensure you have a recent version of Node.js installed

  • Use the included data/data.json file to test the website locally

  • Install the dependencies with npm install

  • Run the development server with npm run dev

Furthermore, the repository contains configuration for Prettier and ESLint to ensure code quality and consistency (on top of what TypeScript already provides). You can run npm run lint to check for any issues, or let the pre-commit hook take care of it for you. In the CI pipeline, similar checks are run again.

If software development is not your thing, you can still contribute to the project by helping us grow the community and spread the word about verto.sh. You can do so by starring the repository, sharing it with your friends and colleagues, or by adding your repository to the website.

How can I add my repository to the website?

If you have a repository on GitHub that you want to add to verto.sh, you can do so by opening a pull request to the repository, and adding your repository to the config.json file. To maintain the quality of projects in verto.sh, we have a few criteria that your repository must meet:

  • It has at least three issues with the good-first-issue label or other labels defined in config.json (see labels at the end)

  • It has at least 10 contributors

  • It has at least 1000 stars

  • It contains a README.md file with detailed setup instructions for the project, and a CONTRIBUTING.md file with guidelines for new contributors

  • It is actively maintained (last update less than 1 month ago)

I'm looking forward to seeing your pull request!

First Issue

What's next?

verto.sh is a young project and many things can be improved. Here are some of the things that 17+ contributors and I are working on:

  • Support for GitLab repositories

  • Sorting by number of forks and open issues

  • A search page

  • A redesign of the website

  • Several other improvements and bug fixes around performance and usability

Feel free to contribute to any of these issues or open a new one if you have an idea for a new feature or improvement!

Summary

verto.sh is a website that helps you find a project for your next open-source contribution, it is free and open-source, built by and for the community. You can contribute to the project in several ways - and I encourage you to do so. If you have any questions or feedback, feel free to reach out to me!