We’re delighted to announce that for the first time, we’re taking part in Hacktoberfest!
While our project has been publicly available on Github for anyone to contribute to for more than a year, we’re taking it up a notch this month!
What exactly is Hacktober fest?
For those who don’t know, during October, a considerable part of the software development community comes together to help and contribute to Open Source projects.
All developers (actually, the first 40,000 devs) who take part in this global event will receive as a prize, either a tree planted in their name, or an official Hactoberfest 2022 t-shirt.
You can learn more about it on the official site of Hacktoberfest.
How can you contribute to OpenReplay?
Well, honestly? Any type of contribution will be more than welcome (as usual)!
That said, we’re trying to help new and seasoned developers to log their first PR.
The very first thing you might want to look into is our list of open issues. While all of them are valid issues, we’ve reviewed the list and tagged the ones we think are great starting places.
So look for issues tagged as “good-first-issue”:
Again, any issue will count towards your PR-count, but what if you’re looking for a bigger challenge?
Taking the cue from Hacktoberfest, we’re taking the opportunity to open the door for community-built content to interact with OpenReplay, more specifically: custom plugins and heuristcs!
Win extra prizes during October 🚀
As part of the Hactoberfest, we’re adding three new prizes for the Top 3 contributors who send a Pull Request in two specific categories: Plugins and Custom Heuristics.
By the end of October, our team will evaluate the contributions received to both categories and announce the winners of a $50 Amazon Card each (there will be a total of 3 winners between both categories).
Now, what exactly do you have to do?
Create new plugins
In a nutshell, the plugins category involves creating new Tracker plugins. So far, all plugins have been developed by our team and we’re looking to open the door for the community to start integrating with platforms and libraries they need without having to write an issue and wait for us to do it.
The current list of supported plugins are listed on the official docs.
You can learn how to create your own plugins following this tutorial, right here. Otherwise, you can review the code and follow the same pattern.
In case you’re out of ideas for this one, here are a few things you can do:
- Splitting the VueX and Pinia plugins into 2 different packages.
- Improving our existing GraphQL plugin adding support for Apollo or Relay
- There are other state managers you could tackle, like Recoil, PullState and more, maybe add plugins for those?
Create new custom heuristics
If the front-end is not your cup of tea, maybe you’d be interested in creating custom heuristics. These services allow you to detect patterns and issues inside session replays. We use them for detection of Click Rages and other types of problems in user sessions.
We already have some material in our documentation site that you can use to start crancking at it. But we’ll also add more tutorials in the future weeks.
For this category, you’ll need to code in Go, so if you haven’t yet, it might be a good opportunity to start reading up on it!
To make sure we’re all on the same page, all contributions (either to global issues or specifically for the special categories) will have to comply with the following points:
- All PR’s must be merged by November 2022.
- All contributions must follow all official rules from Hacktoberfest 2022.
- Any external service or plugin presented as part of the must be properly documented to understand how to run and test it.
We’ll help you through the process
Helping with a project for the first time can be scary and it can feel like you don’t know where to start. Don’t worry, we got you covered!
The first thing to do, is to join our Slack community. Our developers can help you if you get stuck; and if they can’t, other developers from our community will. So stop by and say hi!
We’ll also be publishing interviews on our YouTube channel, with some of our developers covering more details about both, custom heuristics and plugins so you know how to get started. Make sure you subscribe to get notified when those videos go live!
Finally, you can always ask for help directly on the issues section of our project, that is also a great way to connect with us.
If you have any further questions, reach out to us on Slack and in the mean time: Happy hacking!