We could always use more voices and opinions in the discussions about SunPy and its development from both users and developers. You may want to suggest a new feature or gripe about how something is not working how you think it should. There are a number of ways to make your voice heard and we would love to hear from you.
  • The general mailing list is a great place to start. Subscribe to it and participate in the discussion.
  • If you have technical issue about the code the developer mailing list is a is the place for you. This is where you can find the nitty gritty nuts and bolts discussions about the SunPy codebase. Subscribe to it and participate in the discussion.
  • If you'd like to chat with SunPy developers and users come join us in our matrix channel.

If you run into unexpected behavior or run into a bug please report it. All bugs are kept track of on our issue tracker. You can add a bug report there or if you are not sure it's a bug send an email to the developer mailing list.

If you are interested in contributing fixes, code or documentation to SunPy please checkout our developer guide. SunPy uses a distributed version control system called Git and the code is hosted on GitHub. To get started create an account on github and fork SunPy then submit your changes via a pull request. If you are unfamiliar with Git and GitHub our developer documentation provides a sample workflow but you can also find lots of tutorials online. Please read up on our Coding Standards before getting started. You can browse our issue list or our wishlist to find something that you can tackle. Please send a quick email to the dev list or stop by the chat room to let people know what you are planning on working on (see the Help section).

If you have an idea for a major enhancement or a proposed change to SunPy please consider submitting an SEP. This process is modeled after the Python Enhancement Proposals (PEPs) and provides a structured proposal for the SunPy community to evaluate your idea. You can find the template and more information about SEPs in the appropriate SunPy repository. SEPs are submitted as pull requests into that repository.

An affiliated package is a Python package related to Solar Physics that is not part of the SunPy core library, but can be included in the future as part of the SunPy project’s community.

As a community-driven project SunPy thus encourages contributions from a diverse group of people on building such software that has the potential to be a future Affiliated SunPy Package.

Requirements to be satisfied

  • The package must make use of all appropriate features in the core SunPy library, to reduce code duplication and complexity.
  • The software must provide documentation that explains the function and use of the package, and this documentation should be of comparable standard to the core SunPy library.
  • The code should as far as possible provide an easy to run test suite to verify the correct operation of the package.
  • The developers of an affiliated package should engage with the rest of the SunPy community to encourage knowledge and code sharing within the community.

Please look at this SEP to read about our policies surrounding affiliated packages. Please send an email to the mailing list to start a dialogue.

Package Name Description Documentation Maintainer
IRISPy A package for handling data from the IRIS satellite Docs Daniel Ryan
SolarBExtrapolation A Package used for Solar Magnetic Field Data Extrapolation Docs Alex Hamilton
sunkit-sst A Python module that allows the reading of spectral files that are used by the Swedish Solar Telescope. Docs Nabil Freij