WIP for Draft PR: not final placement
Markdown Image test:
Hugo image test:

NumPy Contributor Journey: Choose Your Adventure!
Panel by panel breakdown
Panel | Image Description | Copy/Script |
---|---|---|
![]() NumPy Contributor Journey: Choose Your Adventure! |
A person excitedly holding up a sword. They are standing next to the NumPy logo and the various tracks in NumPy. The tracks are laid in a diverging tree-like pattern. The first track, the “Contributor Track”, eventually unlocks the second track, the “Review Track”, which unlocks the “Merge Track”, which unlocks the last track, the “Maintainer Track”. These tracks are represented by dots and the unlocking as keys. Each track is personified with a person wearing a hat. | Choose your adventure! Start as a contributor! Once you gain enough experience, you can become a reviewer! And perhaps with enough experience and mentorship, you can merge PRs. |
![]() NumPy Contributor Journey: Choose Your Adventure! |
A contributor with merge permissions is kneeling down, using their torch to light a campfire. Around the campfire are two maintainers. One is excitedly waving their arms, the other watches on proud and serene. | If you feel that fire within you, to keep NumPy going, you can join as a maintainer! It’s not a quick or easy path. But it’s one worth having. Of course, not everyone should or wants to be a maintainer! You may decide to stay a regular contributor. Or review PRs every now and then. |
![]() NumPy Contributor Journey: Choose Your Adventure! |
A person looking at a computer screen which shows a NumPy community call. An icon of Slack. | Your NumPy adventure is yours to choose! And the NumPy community wil be there with you every step of the way! Start your adventure by joining the NumPy Slack! Or join our community call (every 2 weeks, Wednesday at 6pm UTC). For calendars and links, check out: NumPy.org/community |
The NumPy project welcomes your expertise and enthusiasm! Your choices aren’t limited to programming, as you can see below there are many areas where we need your help.
If you’re unsure where to start or how your skills fit in, reach out! You can ask on the mailing list or GitHub (open an issue or comment on a relevant issue).
Those are our preferred channels (open source is open by nature), but if you prefer to talk privately, contact our community coordinators at numpy-team@googlegroups.com or on Slack (write numpy-team@googlegroups.com for an invite).
We also have a biweekly community call, details of which are announced on the mailing list. You are very welcome to join. If you are new to contributing to open source, we also highly recommend reading this guide.
Our community aspires to treat everyone equally and to value all contributions. We have a Code of Conduct to foster an open and welcoming environment.
Writing code
Programmers, this
guide
explains how to contribute to the NumPy codebase.
Check out also our YouTube channel for additional advice.
Reviewing pull requests
The project has more than 250 open pull requests – meaning many potential improvements and many open-source contributors waiting for feedback. If you’re a developer who knows NumPy, you can help even if you’re not familiar with the codebase. You can:
- summarize a long-running discussion
- triage documentation PRs
- test proposed changes
Developing educational materials
NumPy’s User Guide is undergoing rehabilitation. We’re in need of new tutorials, how-to’s, and deep-dive explanations, and the site needs restructuring. Opportunities aren’t limited to writers. We’d also welcome worked examples, notebooks, and videos. NEP 44 — Restructuring the NumPyDocumentation lays out our ideas – and you may have others.
Issue triaging
The NumPy issue tracker has a lot of open issues. Some are no longer valid, some should be prioritized, and some would make good issues for new contributors. You can:
- check if older bugs are still present
- find duplicate issues and link related ones
- add good self-contained reproducers to issues
- label issues correctly (this requires triage rights – just ask)
Please just dive in.
Website development
We’ve just revamped our website, but we’re far from done. If you love web development, these issues list some of our unmet needs – and feel free to share your own ideas.
Graphic design
We can barely begin to list the contributions a graphic designer can make here. Our docs are parched for illustration; our growing website craves images – opportunities abound.
Translating website content
We plan multiple translations of numpy.org to make NumPy accessible to users in their native language. Volunteer translators are at the heart of this effort. See here for background; comment on this GitHub issue to sign up.
Community coordination and outreach
Through community contact we share our work more widely and learn where we’re falling short. We’re eager to get more people involved in efforts like our Twitter account, organizing NumPy code sprints, a newsletter, and perhaps a blog.
Fundraising
NumPy was all-volunteer for many years, but as its importance grew it became clear that to ensure stability and growth we’d need financial support. This SciPy'19 talk explains how much difference that support has made. Like all the nonprofit world, we’re constantly searching for grants, sponsorships, and other kinds of support. We have a number of ideas and of course we welcome more. Fundraising is a scarce skill here – we’d appreciate your help.