Thank you for your interest in contributing code to Manyverse! Follow this guide to setup and get started with.

We use GitLab to collaborate on the code, so make sure you make an account there and familiarize yourself with it.

1 Find an issue

The best way to get started is to find an existing issue to work on. Our most important project management tool is this Kanban board on GitLab. Open it and explore the issues. Choose any issue you wish, but we recommend issues in the should column or could column, especially those that are marked with the label contribute!

2 Inform us

Please don't send a pull request without first talking with us. We don't want you to build something that won't match the project's needs or vision. To avoid disappointments, let us know that you want to contribute on something specific.

When you find an issue you want to work on, comment on it and volunteer to do it. This will let us know that you're about to make a pull request for this, and we can either guide you or come to the conclusion that the issue is deprecated.

If you opened your own issue on GitLab, also check with us whether your contribution would be welcomed. Since Manyverse has commitments to strong principles (e.g. no ads, no proprietary code, no trackers, and simple UI design), we cannot accept just any contribution. Communication is key!

3 Setup tools

This getting started document outlines everything you need to set up your computer for development.

4 Learn the codebase

This codebase overview outlines how our src is organized, and what are the biggest elements in the architecture.

5 Write code

Now is the moment you've been waiting for! Hopefully it won't be too difficult.

We use Zulip as our chat system, which supports separating topics. Please join us on Zulip and let's discuss there! Feel free to ask for help, or otherwise update us on how coding is going.

For code reviews and such, we prefer to use GitLab for that.

6 Commit and send pull request

When you're ready to submit your code changes as a pull request (or as GitLab puts it, "Merge Request"), please be mindful of our commit message format, explained in this document.

Next, we will review your code change, and we keep nitpicking to a minimum. We only want to know if the pull request solves the issue it targets and is consistent/coherent with existing code.

Thank you for your time!

This file comes from our Wiki page on GitLab. Last updated on 2024-05-13.