If you landed on this article, we believe you are interested in contributing to Mautic, the number one open source marketing automation platform!
But before discussing how to contribute, let us briefly talk about Mauticians. You’ll often hear this term as you get involved in our community. Mauticians are the backbone of our community. They’re amazing volunteers who contribute their time and skills to improve Mautic. They come from diverse backgrounds and skill levels, united by a common goal: to improve Mautic.
However, this article will focus on how you, as a developer, can engage and contribute to Mautic through code contributions and pull request testers.
Whether you’re a seasoned developer or just starting out, we offer opportunities for everyone. By contributing to Mautic, you’ll help shape our platform’s future and connect with a global community of passionate individuals.
Now, how can you get started contributing to Mautic?
Familiarize Yourself with GitHub
Our project lives on GitHub, and we assume you already have an account there. If not, go to their official website and create one.
Then, try to understand the GitHub basics. Learn essential concepts like repositories, branches, commits, and pull requests. Afterward, explore advanced features such as forking, merging, and resolving merge conflicts. At this point, it’s also important to learn the basic Git command to help you later with code contribution.
We won’t discuss these concepts in this article. However, you can read the official GitHub documentation to familiarize yourself with GitHub and the Git Guide to learn about basic Git commands.
Explore Mautic Issues and Pull Requests
Once you understand the basics of Git and GitHub, the next step is to explore issues and pull requests in our repository.
If you’re familiar with the tech stack we use at Mautic and want to contribute right away, you can explore the open issues available in our repository. You must search for those that are not assigned to anyone. Look at the “Assignee” tab to see which are still available. When it’s still empty, it’s still available to work on.
Tip: Leave a comment to ask to be assigned to an issue. Only claim another issue after you finish the one assigned to you so you don’t get overwhelmed.
As we said, there’s always opportunity for everyone, regardless of skill level. So, if you’re unsure and want to learn Mautic’s codebase and how things work, one of the best ways is to help us review and test the open pull requests. Head to the “Pull requests” tab and look for a pull request you want to test.
Depending on your skill level and familiarity with our project, we provide labels to help you choose which issue you can work on or pull requests you can review and test.
Understand Issues and Pull Requests Labeling System
Whether you are a new developer or new to Mautic, our labeling system will help you find and decide which issue or pull request to test or work on. So, what labels are they?
T1
If you’re a beginner or someone new to Mautic, we recommend you search for an issue or a pull request with this label. It requires minimal coding experience and takes a relatively short time to test. This label usually concerns small changes such as typo fixing, small bug fixes, translation changes, minor UI improvements, or minor enhancements.
T2
The T2 label indicates issues and pull requests that are more complex than the T1. It requires more time, intermediate coding skills, and problem-solving abilities. Issues and pull requests with this label may require you to create an external services (e.g., Salesforce/HubSpot) account for testing.
T3
Issues and pull requests with this label are the most complex, demanding advanced coding knowledge and experience. They might touch multiple parts of Mautic, change large amounts of code, or completely change how some aspects of the code work.
Other Labels
There are other labels besides what is mentioned above to give you information on what type of issue or pull requests they are. To understand their meaning, hover over each label to see the information.
Search Issues and Pull Requests with Specific Labels on GitHub
You can use the filter options to locate specific labels. This will give you a list of issues or pull requests with the labels. You can filter and search one or multiple labels. Here is the way to do that:
1. Search One Label
To search one particular label, once you’re in the “Issues” or “Pull requests” tab, click the “Label” dropdown at the top. Scroll down or type the label you want to search in the input, then click the label name.
2. Search Multiple Labels
If you want to search more than one label, you can type them in the search input right on top of the issues or pull requests list. For example, `is:open is:issue label:bug label:T1`. This means you want to find open issues with “bug” and “T1” labels.
Start Contributing and Be a Mautician!
Now, you have the knowledge to start contributing to Mautic and join our community.
If you’re ready to contribute, you can find more detailed information in our Contributing to Mautic Guide for Developer and Code governance pages. Take your time to read them before contributing.
Lastly, we are excited to welcome you as a fellow Mautician!