Latest revision: August 2025
- Introduction
- Status Legend
- Functionality
- Infrastructure, Documentation
- Interoperability and compatibility
- Hardware and Performance
- Learn and User Support
- Community Building and Sustainability
- Governance, Management, and Personnel
- Fund Raising
See the Roadmap Completed Items page for items that have been completed and removed from the roadmap.
This Roadmap captures high level actionable items that we as a project aim to undertake to improve the health and stability of the Astropy project. The Roadmap itself is a static document, however it will be revisited regularly at the Astropy coordination meetings or via pull requests, to keep track of progress and write new versions as needed.
This Roadmap may also be used to prioritize the allocation of Project resources.
- Group or person leading effort is identified and sufficiently supported.
- Effort is already underway and/or expected to be implemented in the “near term.”
- Item is already defined (e.g., issue, APE exists), but not sufficiently underway.
- Attempts to secure the necessary resources are underway.
- For example, funding applied for, but not awarded.
- Consensus of the community is that the item is a priority.
- Attempts to secure the necessary resources have not yet been started.
- For example, there’s no one available to write a funding proposal or lead recruitment efforts.
The core product of the Astropy Project is high quality astronomical software, including both the core library and Astropy Affiliated packages. This category encompasses goals having to do with this core Project functionality.
-
🟢 Provide next-generation spectroscopic analysis tools usable by individual researchers and larger surveys.
-
🟢 Add quantity support for non-NumPy arrays.
-
🟥 Determine a plan for long-term support of FITS, while also improving performance and making contribution easier.
-
🔶 Improve support for reading and writing ASDF throughout the Astropy ecosystem (e.g., coordinated packages).
-
🔶 Improve support for reading and writing spectra using the IVOA SpectrumDM.
-
🟥 Identify and ensure progress on longstanding issues that should be high priority (e.g., issues in io.votable).
Underlying all Astropy packages is critical infrastructure that ensures high quality, well-documented software is released. This category encompasses goals having to do with such infrastructure and documentation.
-
🔶 Maintain and improve robust performance benchmark reporting.
-
🔶 Improve integration of core package and coordinated package documentation from a user perspective (e.g., joint search functionality).
One of the core principles of the Astropy Project is to "foster an ecosystem of interoperable astronomy packages." This category encompasses goals related to that principle of interoperability and compatibility.
-
🟢 Improve support and validation for input/output (I/O) of standard and user-defined file formats used in astronomy by improving the unified I/O system.
-
🔶 Improve interoperability between unit packages (e.g.,
astropy.units,pint,unyt). -
🔶 Encourage usage of the core and coordinated package ecosystem more directly (e.g., provide an
astropy-ecosystemmetapackage, or changeastropytoastropy-coreand makeastropythe metapackage).
Astronomers perform their work in a variety of computing environments with a variety of requirements. This category encompasses goals related to supporting the performance and hardware needs of Astropy Project users, as well as anticipating future needs and requirements.
-
🔶 Improve and/or maintain interoperability with performant I/O file formats and libraries such as HDF5 and Dask.
-
🟥 Improve support for using Astropy tools in heterogeneous computing environments such as cloud environments or GPU systems.
-
🟥 Add basic PyScript/WebAssembly support in Astropy.
-
🟥 Support JIT compilation (e.g., numba, JAX, etc.) throughout Astropy core and coordinated packages.
The Astropy Project cannot succeed in its core objectives without a robust user onboarding and support system. This category is for items related to the Astropy Learn ecosystem and other user support related improvements.
-
🟢 Generate and ingest guides and/or a series of tutorials that demonstrate Astropy Project functionality in the context of astronomical research.
-
🟥 Update Astropy website to reflect the Project as a whole, not just the core package.
-
🟢 Develop tutorials that demonstrate the use of Astropy for spectroscopy tasks.
-
🟥 Expand and build on workshop offerings, including online and increased geographic coverage.
-
🔶 Develop, host, and index tutorials suitable for use in university astronomy courses.
As a community-driven project, the long term health and development of the Astropy community is an intrinsic part of the Project. This category encompasses goals related to growing and maintaining that community, and ensuring that it adheres to the core principles of inclusion and consensus-building.
-
🟢 Better understand Astropy user community through user and developer surveys (e.g., Astropy User Survey and Organization Mycology surveys on Astropy Community Engagement and Community views on diversity, equity, and inclusion in the Astropy project).
-
🟥 Increase the learning and mentoring opportunities for people interested in becoming contributors and helping to develop existing contributors into maintainers.
-
🟥 Increase inclusion, diversity, and empowerment efforts within the Astropy Project and NumFOCUS communities, and improve our understanding of the demographics of our communities in order to measure the effectiveness of these efforts.
-
🟥 Ensure people who contribute are from a broad experience base, including typical astronomers.
This category encompasses goals related to governing and managing the Astropy Project to facilitate reaching the goals described elsewhere in this document.
-
🟢 Adopt the NumFOCUS Code of Conduct (CoC) and build a community ombuds/CoC team to curate the guidelines and enforce them.
-
🟥 Recruit for unfilled team positions.
-
🟢 Define and staff the strategic planning role.
To ensure project sustainability, the Astropy Project needs funding sources that can be maintained over the long term.
-
🟥 Raise funds from governmental sources outside of the US.
-
🔶 Raise funds from private foundations.
-
🟢 Maintain existing funding sources (e.g., NASA).