Skip to content

Commit

Permalink
Update signac links.
Browse files Browse the repository at this point in the history
  • Loading branch information
joaander committed Jan 31, 2025
1 parent 21f3d64 commit b9c277a
Show file tree
Hide file tree
Showing 14 changed files with 222 additions and 34 deletions.
2 changes: 1 addition & 1 deletion CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# Code of Conduct

The signac team is committed to fostering a diverse and welcoming community.
The signac project has therefore adopted the [Contributor Covenant Code of Conduct](https://signac.io/conduct/).
The signac project has therefore adopted the [Contributor Covenant Code of Conduct](conduct.md).
Please email [[email protected]](mailto:[email protected]) if you have any questions or concerns.
8 changes: 4 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ Please use the [GitHub issue tracker](https://github.com/glotzerlab/signac/issue

## Writing Documentation

A general introduction in the form of tutorials, guides, and recipes is published as part of the framework documentation at [https://docs.signac.io](https://docs.signac.io).
The API of each package as part of the framework is documented in the form of doc-strings, which are published on `https://docs.signac.io/projects/$package`, where `$package` is currently one of `core`, `flow`, or `dashboard`.
A general introduction in the form of tutorials, guides, and recipes is published as part of the framework documentation at [https://signac.readthedocs.io/](https://signac.readthedocs.io/).
The API of each package as part of the framework is documented in the form of doc-strings, which are published on `https://signac.readthedocs.io/projects/$package`, where `$package` is currently one of `core`, `flow`, or `dashboard`.

Anyone is invited to add to or edit any part of the documentation.
To fix a spelling mistake or make minor edits, click on the **Edit on GitHub** button in the top-right corner.
Expand All @@ -34,10 +34,10 @@ All contributors must agree to the Contributor Agreement ([ContributorAgreement.
* Create [unit tests](https://en.wikipedia.org/wiki/Unit_testing) and [integration tests](https://en.wikipedia.org/wiki/Integration_testing) that cover the common cases and the corner cases of the code.
* Preserve backwards-compatibility whenever possible, and make clear if something must change.
* Document any portions of the code that might be less clear to others, especially to new developers.
* Write API documentation in this package, and put usage information, guides, and concept overviews in the [framework documentation](https://docs.signac.io/) ([source](https://github.com/glotzerlab/signac-docs/)).
* Write API documentation in this package, and put usage information, guides, and concept overviews in the [framework documentation](https://signac.readthedocs.io/) ([source](https://github.com/glotzerlab/signac-docs/)).
* Use inclusive language in all documentation and code. The [Google developer documentation style guide](https://developers.google.com/style/inclusive-documentation) is a helpful reference.

Please see the [Support](https://docs.signac.io/projects/core/en/latest/support.html) section as part of the documentation for detailed development guidelines.
Please see the [Support](https://signac.readthedocs.io/projects/core/en/latest/support.html) section as part of the documentation for detailed development guidelines.

### Code Style

Expand Down
18 changes: 7 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,30 +4,26 @@
[![PyPI](https://img.shields.io/pypi/v/signac.svg)](https://pypi.org/project/signac/)
[![conda-forge](https://img.shields.io/conda/vn/conda-forge/signac.svg?style=flat)](https://anaconda.org/conda-forge/signac)
[![GitHub Actions](https://github.com/glotzerlab/signac/actions/workflows/run-pytest.yml/badge.svg)](https://github.com/glotzerlab/signac/actions)
[![RTD](https://img.shields.io/readthedocs/signac.svg?style=flat)](https://docs.signac.io)
[![RTD](https://img.shields.io/readthedocs/signac.svg?style=flat)](https://signac.readthedocs.io/)
[![License](https://img.shields.io/github/license/glotzerlab/signac.svg)](https://github.com/glotzerlab/signac/blob/main/LICENSE.txt)
[![PyPI-downloads](https://img.shields.io/pypi/dm/signac.svg?style=flat)](https://pypistats.org/packages/signac)
[![Slack](https://img.shields.io/badge/Slack-chat%20support-brightgreen.svg?style=flat&logo=slack)](https://signac.io/slack-invite/)
[![Slack](https://img.shields.io/badge/Slack-chat%20support-brightgreen.svg?style=flat&logo=slack)](https://signac.readthedocs.io/slack-invite/)
[![Twitter](https://img.shields.io/twitter/follow/signacdata?style=social)](https://twitter.com/signacdata)
[![GitHub Stars](https://img.shields.io/github/stars/glotzerlab/signac?style=social)](https://github.com/glotzerlab/signac/)

The [**signac** framework](https://signac.io) helps users manage and scale file-based workflows, facilitating data reuse, sharing, and reproducibility.
The [**signac** framework](https://signac.readthedocs.io/) helps users manage and scale file-based workflows, facilitating data reuse, sharing, and reproducibility.

It provides a simple and robust data model to create a well-defined indexable storage layout for data and metadata.
This makes it easier to operate on large data spaces, streamlines post-processing and analysis and makes data collectively accessible.

## Resources

- [Framework documentation](https://docs.signac.io/):
- [Framework documentation](https://signac.readthedocs.io/):
Examples, tutorials, topic guides, and package Python APIs.
- [Package documentation](https://docs.signac.io/projects/core/):
- [Package documentation](https://signac.readthedocs.io/projects/core/):
API reference for the **signac** package.
- [Discussion board](https://github.com/glotzerlab/signac/discussions/):
Ask the **signac** user community for help.
- [Slack workspace](https://signac.io/slack-invite/):
Chat about **signac**.
- [**signac** website](https://signac.io/):
Framework overview and news.

## Installation

Expand All @@ -46,7 +42,7 @@ To install **signac** *via* **pip**, execute:
pip install signac
```

**Detailed information about alternative installation methods can be found in the [documentation](https://docs.signac.io/en/latest/installation.html).**
**Detailed information about alternative installation methods can be found in the [documentation](https://signac.readthedocs.io/en/latest/installation.html).**

## Quickstart

Expand Down Expand Up @@ -76,7 +72,7 @@ $ python -m pytest tests/
## Acknowledgment

When using **signac** as part of your work towards a publication, we would really appreciate that you acknowledge **signac** appropriately.
We have prepared examples on how to do that [here](https://docs.signac.io/en/latest/acknowledge.html).
We have prepared examples on how to do that [here](https://signac.readthedocs.io/en/latest/acknowledge.html).
**Thank you very much!**

The signac framework is a [NumFOCUS Affiliated Project](https://numfocus.org/sponsored-projects/affiliated-projects).
2 changes: 1 addition & 1 deletion asv.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"project": "signac",

// The project's homepage
"project_url": "https://signac.io/",
"project_url": "https://signac.readthedocs.io/",

// The URL or local path of the source code repository for the
// project being benchmarked
Expand Down
77 changes: 77 additions & 0 deletions conduct.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# Code of Conduct

## Our Pledge

In the interest of fostering an open and welcoming environment, we as
contributors and maintainers pledge to making participation in our project and
our community a harassment-free experience for everyone, regardless of age, body
size, disability, ethnicity, sex characteristics, gender identity and expression,
level of experience, education, socio-economic status, nationality, personal
appearance, race, religion, or sexual identity and orientation.

## Our Standards

Examples of behavior that contributes to creating a positive environment
include:

* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members

Examples of unacceptable behavior by participants include:

* The use of sexualized language or imagery and unwelcome sexual attention or
advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic
address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting

## Our Responsibilities

Project maintainers are responsible for clarifying the standards of acceptable
behavior and are expected to take appropriate and fair corrective action in
response to any instances of unacceptable behavior.

Project maintainers have the right and responsibility to remove, edit, or
reject comments, commits, code, wiki edits, issues, and other contributions
that are not aligned to this Code of Conduct, or to ban temporarily or
permanently any contributor for other behaviors that they deem inappropriate,
threatening, offensive, or harmful.

## Scope

This Code of Conduct applies both within project spaces and in public spaces
when an individual is representing the project or its community. Examples of
representing a project or community include using an official project e-mail
address, posting via an official social media account, or acting as an appointed
representative at an online or offline event. Representation of a project may be
further defined and clarified by project maintainers.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported by contacting the project team at [[email protected]](mailto:[email protected]). All
complaints will be reviewed and investigated and will result in a response that
is deemed necessary and appropriate to the circumstances. The project team is
obligated to maintain confidentiality with regard to the reporter of an incident.
Further details of specific enforcement policies may be posted separately.

Project maintainers who do not follow or enforce the Code of Conduct in good
faith may face temporary or permanent repercussions as determined by other
members of the project's leadership.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html

[homepage]: https://www.contributor-covenant.org

For answers to common questions about this code of conduct, see
https://www.contributor-covenant.org/faq

2 changes: 1 addition & 1 deletion doc/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,7 @@
intersphinx_mapping = {
"python": ("https://docs.python.org/3", None),
"synced_collections": (
"https://docs.signac.io/projects/synced-collections/en/latest/",
"https://signac.readthedocs.io/projects/synced-collections/en/latest/",
None,
),
"pandas": ("https://pandas.pydata.org/pandas-docs/stable/", None),
Expand Down
6 changes: 3 additions & 3 deletions doc/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -6,16 +6,16 @@ signac (core) package documentation
This is documentation for the **signac** *core package*, which is part of the signac_ framework.
See `here <signac-docs_>`_ for a comprehensive introduction to the **signac** *framework*.

.. _signac: https://signac.io/
.. _signac-docs: https://docs.signac.io/
.. _signac: https://signac.readthedocs.io/
.. _signac-docs: https://signac.readthedocs.io/

Contents
--------

.. toctree::
:hidden:

Go to Framework Documentation <https://docs.signac.io/>
Go to Framework Documentation <https://signac.readthedocs.io/>

.. toctree::
:maxdepth: 2
Expand Down
4 changes: 2 additions & 2 deletions doc/support.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ Code contributions

This project is open-source.
Users are highly encouraged to contribute directly by implementing new features and fixing issues.
Development for packages as part of the **signac** framework should follow the general development guidelines outlined `here <https://docs.signac.io/en/latest/community.html#contributions>`__.
Development for packages as part of the **signac** framework should follow the general development guidelines outlined `here <https://signac.readthedocs.io/en/latest/community.html#contributions>`__.

A brief summary of contributing guidelines are outlined in the `CONTRIBUTING.md <https://github.com/glotzerlab/signac/blob/main/CONTRIBUTING.md>`_ file as part of the repository.
All contributors must agree to the `Contributor Agreement <https://github.com/glotzerlab/signac/blob/main/ContributorAgreement.md>`_ before their pull request can be merged.
Expand Down Expand Up @@ -133,7 +133,7 @@ Then you can build the documentation from within the ``doc/`` directory as part
.. note::

Documentation as part of the package should be largely limited to the API.
More elaborate documentation on how to integrate **signac** into a computational workflow should be documented as part of the `framework documentation <https://docs.signac.io>`_, which is maintained `here <https://github.com/glotzerlab/signac-docs>`__.
More elaborate documentation on how to integrate **signac** into a computational workflow should be documented as part of the `framework documentation <https://signac.readthedocs.io/>`_, which is maintained `here <https://github.com/glotzerlab/signac-docs>`__.


Updating the changelog
Expand Down
114 changes: 114 additions & 0 deletions governance.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
## About

The signac project is a consensus-based, open source community project with the goal to develop software aiding in the management of data and the implementation and execution of workflows that operate on said data.
Anyone with an interest in the project can join the community, contribute to the project design and participate in the decision making process.
This document describes how that participation takes place and what roles community members may be able to fill and the responsibilities and privileges these roles imply.
The project is defined by the collective of all contributors and the intellectual property created by that collective (typically managed in git repositories), but does not represent a legal entity in any other way.
The project is affiliated with the 501(c)3 [NumFOCUS Foundation](https://numfocus.org), but does not have any special responsibilities as a result of that affiliation.

## Roles and Responsibilities

### Users

Users are community members who make use of the project.
They are the most important members of the community since without them the project would have no purpose.
Anyone can be a user; there are no special requirements.
The project encourages users to participate in the project and community as much as possible.
User contributions enable the project team to ensure that they are satisfying the needs of those users.
Common user activities include, but are not limited to:

* sharing the project with others (e.g. a link on a website and word-of-mouth awareness raising)
* informing developers of strengths and weaknesses from a (new) user perspective
* citing the project software when used in academic works
* providing moral support (a "thank you" goes a long way)

There are many ways that users can contribute to the project, described below.

### Contributors

Any community member can become a contributor, and contributions can take many forms.
There is no expectation of long-term commitment to the project, no specific skill requirements, and no selection process, however all contributors must abide by the project's [Code of Conduct]({{ '/conduct/' | absolute_url }}) and each repository's respective contributing guidelines.
Ways to contribute include, but are not limited to:

* supporting new users (existing users are often the best people to support new users)
* reporting issues
* identifying requirements
* writing documentation
* providing graphics and web design
* providing code contributions
* assisting with project infrastructure
* attending development meetings

Contributors are asked to submit code changes via pull requests.
Committers will review these contributions and help to prepare them for inclusion in a future release of the software.
Contributors may be asked to serve as additional reviewers on other pull requests and may become a committer if desired (see below).

### Committers

Committers are contributors who have shown that they are committed to the continued development of the project through ongoing engagement with the community.
Committer roles are project-wide, i.e., for all repositories.

Committers:

* may be assigned as the primary reviewer for a pull request and are permitted to merge it
* may triage and close issues
* are expected to be aware of the general strategic development of the project, e.g., by being active on the Slack or [Gitter channels](https://gitter.im/signac/Lobby) and/or by attending development meetings on a semi-regular basis

Potential committers must also possess the necessary technical expertise to evaluate code contributions, as well as a high level understanding of and alignment with the project's objectives and strategy.
New committers are identified by (self) nomination.
The project maintainers will make a decision on whether to accept or reject the nomination by majority vote.
The committer role may be revoked by the project maintainers by majority vote if warranted, for example due to prolonged inactivity.

### Project maintainers

The project maintainers manage the project.
Their responsibilities include:

* administering the GitHub repositories
* triaging issues and pull requests
* scheduling and creating releases
* maintaining a project roadmap
* representing the project to the community

In addition, all project maintainers are expected to be available for discussions and decision-making processes on:

* the acceptance or rejection of nominations for committers and project maintainers
* the project's strategic direction

Maintainers who are also committers may commit small changes (documentation updates, code comments, CI configuration changes) without a pull request.

Any community member who has shown exceptional commitment to the signac project and strong understanding of its overall strategy may be invited to become a project maintainer.
New project maintainers are approved by the existing project maintainers by two-thirds vote.
Any project maintainer may resign from this role at any point; a project maintainer may also be removed from their role by other project leads by two-thirds vote if circumstances require such a drastic step.

### Administrators

Administrators manage the infrastructure required for the continuity of the signac project.
This includes, but is not limited to: the GitHub organization, the domain name, the Slack channel, social media accounts, and the website.

## Project Managers

The signac project employs a rotating managers approach (inspired by [numba](https://github.com/numba/numba/wiki/Numba-Czar-Cheatsheet)) to keep everything running smoothly.
At any given time, certain members of the project team are assigned to various roles required to sustain the forward progress of the project.
In general, managers are selected from a pool consisting of all project maintainers and volunteer project committers (with one exception, see below).
Manager roles rotate periodically in alphabetical order by last name, and each current manager is responsible for contacting the next person to occupy that position.

### Community Manager

This role rotates on a monthly basis, starting on the first of every month.
It encompasses the following tasks:

* Scheduling and setting the agenda for the biweekly signac meetings (and canceling if necessary).
* Maintaining the signac social media accounts.
* Preparing any project updates for the NumFOCUS newsletter.

<small>
**Directory of roles** The project maintainers, committers, and administrators are listed [here]({{ site.baseurl }}/about/).
The committers and contributors to the project are listed individually for each repository in the respective `contributors.yaml` file.
</small>

-----
<small>
This work is a derivative of the Meritocratic Governance Model.
This work is licensed under Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) License.
</small>
Loading

0 comments on commit b9c277a

Please sign in to comment.