Governance
ALPS Mission
ALPS aims to house and distribute software for simulation of correlated quantum systems.
We are currently reworking the governance of ALPS. Work on the future structure will be performed at our workshops and announced here. If you are interested in getting involved please let the current leadership know.
ALPS Community Steering Committee


Adrian Feiguin
Professor of Physics
Northeastern University
Emanuel Gull
Professor of Physics
University of Michigan


Gunnar Möller
Senior Lecturer
Head of Physics of Quantum & Materials Group
University of Kent
Vito Scarola
Professor of Physics
Virginia Tech

Synge Todo
Professor of Physics
University of Tokyo
ALPS External Advisory Board


Professor
Department of Physics and Astronomy
Purdue University
Professor
Department of Physics & Astronomy and
Department of Electrical Engineering and Computer Science
University of Tennessee




Distinguished Research Staff and Section Head
Oak Ridge National Lab
Technical Fellow and Corporate Vice President of Quantum
Microsoft


ALPS Governance Documents
Overview
The ALPS software suite (Applications and Libraries for Physics Simulations), provides an open source ecosystem of algorithms with applications in condensed matter, quantum computing, quantum information, and related fields. This project supports the scientific community of users by providing a maintainable and sustainable open source infrastructure for ALPS, along with community building efforts. ALPS is governed by a self elected council. ALPS releases will be under the open source MIT License. To become involved with the development of the project, email a member of the governing council.
Roles and Responsibilities
ALPS adopts a hierarchical shared governance structure for each of its technical roles. A community of developers/contributors files issues, makes pull requests, and contributes to the project via GitHub. A set of maintainers, at least one for each simulation code, drives each contribution to the ALPS project. They are certified by core maintainers who impose commitment requirements and respond to community issues. The governing council drives the overall project direction, establishes code commitment requirements, and makes deprecation decisions. The external advisory board makes recommendations regarding direction and approaches for community engagement.
Maintainers:
Each code has a maintainer group that uses GitHub to submit change requests. Maintainer groups are responsible for making GitHub pull requests and changing the scope of their code. Each maintainer group is responsible for selecting one or more members to commit time as a core maintainer. The governing council decides on the extent of the commitment.
A current list of maintainers and their areas of responsibility is available on the Code Maintainers page.
Core Maintainers:
The core maintainers have two primary roles. 1) They respond to issues from the community. These include bug fixes and pull requests. 2) They certify requests for changes and pull requests made by maintainers. These certifications include validating runs, compiling, and bug checking.
Governing Council:
The governing council steers the overall trajectory of the ALPS project with advice from the external advisory board. The tasks of the council include:
- Nominating, confirming and removing maintainers and core maintainers
- Establishing road maps for codes, libraries, and dependencies to be used by maintainers
- Electing and removing members to the council and the advisory board
- Leading the publishing process for ALPS release papers
External Advisory Board:
The external advisory board will recommend:
- General directions for the ALPS project
- Directions for community growth and maintenance
Support
To report a bug or request a feature please visit our GitHub repository.
To get help with using ALPS please visit our user forum on Discord.
To contribute to ALPS please contact a member of the Governing Council.
Decision Making Process
Contributions and changes to ALPS occur using a consensus model. Proposals for modifications will be reviewed by both maintainers and core maintainers once posted to the GitHub repository. Modifications will be accepted if no comments are made within 6 weeks or if all maintainers agree on the modifications. Controversial proposals decisions can be appealed to the governing council.
Contribution Process
The practical starting point for any contribution is the Contributing to ALPS page, which describes the workflow and what we look for in a pull request. The CONTRIBUTING.md in the ALPS repository has the full technical details (build instructions, branch conventions, code style).
Contributions at all levels are welcome — from bug reports and tutorial improvements to new simulation methods. See the onboarding page for a description of contribution levels and what to expect at each one.
For contributions of new simulation applications or libraries, please contact a member of the Governing Council to discuss onboarding. Contributors join the ALPS team via GitHub and arrange a modest maintenance time commitment (bug fixes, dependency updates, community support) to help sustain the project. All code is released under the MIT open source license.
Community engagement takes place through regular ALPS workshops and the Discord server.
ALPS releases are accompanied by an announcement publication. Active contributors are added as co-authors; the Governing Council decides the author list.