@@ -19,6 +19,62 @@ is expected to abide by our
1919Below, you can find a number of ways to contribute, and how to connect with the
2020Matplotlib community.
2121
22+ .. _start-contributing :
23+
24+ Getting started with contributing?
25+ ==================================
26+
27+ There is no pre-defined pathway for new contributors -- we recommend looking at
28+ existing issue and pull request discussions, and following the conversations
29+ during pull request reviews to get context. Or you can deep-dive into a subset
30+ of the code-base to understand what is going on.
31+
32+ There are a few typical new contributor profiles:
33+
34+ * **You are a Matplotlib user, and you see a bug, a potential improvement, or
35+ something that annoys you, and you can fix it. **
36+
37+ You can search our issue tracker for an existing issue that describes your
38+ problem or open a new issue to inform us of the problem you observed and
39+ discuss the best approach to fix it. If your contributions would not be
40+ captured on GitHub (social media, communication, educational content), you can
41+ also reach out to us on gitter _,
42+ `Discourse <https://discourse.matplotlib.org/ >`__ or attend any of our
43+ `community meetings <https://scientific-python.org/calendars >`__.
44+
45+ * **You are not a regular Matplotlib user but a domain expert: you know about
46+ visualization, 3D plotting, design, technical writing, statistics, or some
47+ other field where Matplotlib could be improved. **
48+
49+ Awesome -- you have a focus on a specific application and domain and can
50+ start there. In this case, maintainers can help you figure out the best
51+ implementation; open an issue or pull request with a starting point, and we'll
52+ be happy to discuss technical approaches.
53+
54+ If you prefer, you can use the
55+ `GitHub functionality for "draft" pull requests <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/changing-the-stage-of-a-pull-request#converting-a-pull-request-to-a-draft >`__
56+ and request early feedback on whatever you are working on, but you should be
57+ aware that maintainers may not review your contribution unless it has the
58+ "Ready to review" state on GitHub.
59+
60+ * **You are new to Matplotlib, both as a user and contributor, and want to start
61+ contributing but have yet to develop a particular interest. **
62+
63+ Having some previous experience or relationship with the library can be very
64+ helpful when making open-source contributions. It helps you understand why
65+ things are the way they are and how they *should * be. Having first-hand
66+ experience and context is valuable both for what you can bring to the
67+ conversation (and given the breadth of Matplotlib's usage, there is a good
68+ chance it is a unique context in any given conversation) and make it easier to
69+ understand where other people are coming from.
70+
71+ Understanding the entire codebase is a long-term project, and nobody expects
72+ you to do this right away. If you are determined to get started with
73+ Matplotlib and want to learn, going through the basic functionality,
74+ choosing something to focus on (3d, testing, documentation, animations, etc.)
75+ and gaining context on this area by reading the issues and pull requests
76+ touching these subjects is a reasonable approach.
77+
2278Get Connected
2379=============
2480
@@ -36,17 +92,16 @@ Contributor incubator
3692---------------------
3793
3894The incubator is our non-public communication channel for new contributors. It
39- is a private gitter room moderated by core Matplotlib developers where you can
40- get guidance and support for your first few PRs. It's a place you can ask
41- questions about anything: how to use git, GitHub, how our PR review process
42- works, technical questions about the code, what makes for good documentation
43- or a blog post, how to get involved in community work, or get
95+ is a private gitter _ (chat) room moderated by core Matplotlib developers where
96+ you can get guidance and support for your first few PRs. It's a place where you
97+ can ask questions about anything: how to use git, GitHub, how our PR review
98+ process works, technical questions about the code, what makes for good
99+ documentation or a blog post, how to get involved in community work, or get a
44100"pre-review" on your PR.
45101
46- To join, please go to our public `gitter
47- <https://gitter.im/matplotlib/matplotlib> `_ community channel, and ask to be
48- added to '#incubator'. One of our core developers will see your message and will
49- add you.
102+ To join, please go to our public gitter _ community channel, and ask to be added
103+ to ``#incubator ``. One of our core developers will see your message and
104+ will add you.
50105
51106New Contributors meeting
52107------------------------
@@ -62,9 +117,8 @@ you can browse previous meeting notes on `GitHub
62117new_contributor_meeting> `_.
63118We recommend joining the meeting to clarify any doubts, or lingering
64119questions you might have, and to get to know a few of the people behind the
65- GitHub handles 😉. You can reach out to @noatamir on `gitter
66- <https://gitter.im/matplotlib/matplotlib> `_ for any clarifications or
67- suggestions. We <3 feedback!
120+ GitHub handles 😉. You can reach out to us on gitter _ for any clarifications or
121+ suggestions. We ❤ feedback!
68122
69123.. _new_contributors :
70124
@@ -552,3 +606,5 @@ example code you can load it into a file handle with::
552606
553607 import matplotlib.cbook as cbook
554608 fh = cbook.get_sample_data('mydata.dat')
609+
610+ .. _gitter : https://gitter.im/matplotlib/matplotlib
0 commit comments