Getting Started
Pencil2D is proud to participate actively in Digital Ocean’s Hacktoberfest event, during which you can receive a free T-shirt for contributing to our project (or any other open source project).
This guide will walk you through all the things you need to know to participate in this as a developer.
If you do not know how to program in C++ & Qt framework, and you want to help program Pencil2D source, you’d have to learn about these technologies prior to your contribution, but you can probably learn these as you work or find tasks that do not require modifying the GUI (Graphical User Interface) very much. If you want to contribute through other means please visit our alternative contribution guide
Pencil2D’s Developer Guides
To learn how to get started with Pencil2D’s codebase please have a look at the following links:
- Pencil2D Documentation Page Here you’ll find development setup guides for all major OS, as well as the Doxygen generated documentation from source comments.
- pencil2d/pencil GitHub repository Here you can find our source code and various issues we need help with.
Pencil2D’s User Guides
We have some work-in-progress documentation for our users where you can discover how to use Pencil2D:
- User Manual A WIP effort to write a simple hands-on guide to learn the basic usage of Pencil2D.
- Tutorials (Community) A compilation of old & new community tutorials on using Pencil2D.
- FAQ Frequently Asked Questions; In need of an update.
Recommended Issues
We have different ways of interacting with the repository issues
- We have a Hacktoberfest label for issues that new developers should be able to implement during the duration of this event.
- If those issues are claimed, or do not interest you, we suggest you browse through our Enhancement label. This label has important quality of life improvements for the project and may have a similar level of difficulty Hacktoberfest issues, just be prepared to dip yourself more into the code!
- For seasoned developers that want to continue supporting the project we can also recommend the Feature Request and the Bug labels.
Note: You are not required to choose only from the suggested issues that carry these labels, any valid pull request that you submit will count towards your prize.
Tracking Our Progress
Visit our Hacktoberfest Milestone for the duration of the event to see what work is being done for Hacktoberfest! If there’s enough participation, we will also consider posting some updates on our official social media channels to share the Hacktoberfest contributions to our users.
Github Repository (N)ettiquete
To avoid duplicate work from participants that want to implement the same issues, we highly recommend the following:
-
On Github you have to “claim” an issue by commenting on the issue(s) you want to work on in. Task assignment will be handled on a first come, first serve basis. Make sure you explicitly mention you will be working on it for Hacktoberfest so we can keep track of it.
-
If you want to work on a feature or fix that does not have a corresponding issue, please submit one before starting to get input from our main developers and avoid duplicate or unnecessary work.
-
If two people do end up submitting pull requests for fixing the same feature, both will count towards your Hacktoberfest progress, but we will probably only use the better of the two implementations.
-
If any submission is identical to a previously submitted PR, the PR that was submitted later will be considered to be plagiarized and will not count towards your Hacktoberfest progress.
-
For general behavior, please abide by our code of conduct. TL;DR: Be nice to everyone.
Getting Help
If you want to participate in Hacktoberfest with us but are having issues at any point, you can contact us and we will do our best to help you.
- You can reach us on any of our official channels.
- The best places to get help with development are:
- #pencil2d Libera Chat official IRC channel
- Pencil2D Official Discord server in the
#general-development
channel.
Note: Pencil2D is not related or sponsored by Digital Ocean in any way. We are simply promoting their event which has a beneficial impact in the open-source community and should not be considered as corporate endorsement of any kind to our project.