|
4 | 4 | This documentation is developed using the [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/) framework, and the source code for the docs is publicly available on [GitHub](https://github.com/eth-cscs/cscs-docs). |
5 | 5 | This means that everybody, CSCS staff and the CSCS user community can contribute to the documentation. |
6 | 6 |
|
| 7 | +## Making suggestions or small changes |
| 8 | + |
| 9 | +If you have a suggestion, comment or small change to make when reading the documentation, there are three ways to reach out. |
| 10 | + |
| 11 | +1. **Edit the page inline**: click on the :material-pencil: icon on the top right hand corner of each page, and make the change inline. When you click "commit", and create a pull request, which will then be reviewed by the CSCS docs team. |
| 12 | +1. **Create a GitHub issue**: create an issue on the [issue page](https://github.com/eth-cscs/cscs-docs/issues) on the GitHub repository. |
| 13 | +1. **Create a CSCS service desk ticket**: create a ticket on the CSCS service desk. |
| 14 | + This is useful if you don't have a GitHub account, or would prefer not to use Github. |
| 15 | + |
| 16 | +## Before starting |
| 17 | + |
| 18 | +The CSCS documentation takes contributions from all CSCS staff, with a _core team_ of maintainers responsible for ensuring that the overall documentation is well organised, that pages are well written and up to date, and that contributions are reviewed and merged as quickly as possible. |
| 19 | + |
| 20 | +??? question "Who are the core team?" |
| 21 | + The docs core team are: |
| 22 | + |
| 23 | + * Ben Cumming (@bcumming); |
| 24 | + * Mikael Simberg (@msimberg); |
| 25 | + * and Rocco Meli (@RMeli). |
| 26 | + |
| 27 | + We are volunteers for this role, who care about the quality of CSCS documentation! |
| 28 | + |
| 29 | +!!! tip "Before contributing" |
| 30 | + Please read the [guidelines][] and [style guide][] before making any contribution. |
| 31 | + Consistency and common practices make it easier for users to read and navigate the documentation, make it easier for regular contributors to write, and avoid style debates. |
| 32 | + We try to strike a balance between following the guidelines and letting authors write in a style that is comfortable for them. |
| 33 | + |
| 34 | + To speed up the merge process and avoid lengthy style discussions, we reserve the right to make changes to pull requests to bring it into line with the guidelines. |
| 35 | + The core team will also update pages when they are out of date or when the style guidelines change. |
| 36 | +!!! tip "Before making large contributions" |
| 37 | + If you plan to make large changes, like adding documentation for a new tool/service or refactoring existing documentation, __reach out to the core team__ before starting. |
| 38 | + |
| 39 | + This will mean that the changes are consistent with other parts of the documentation, streamline the review process, and to avoid misunderstandings. |
| 40 | + |
| 41 | +### Code owners |
| 42 | + |
| 43 | +Many sections have individual staff that follow them. |
| 44 | +This is codified in the [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS) file in the repository. |
| 45 | +The code owners are notified when there is a change to their pages, and can review the changes. |
| 46 | + |
| 47 | +If you want to follow changes to a page or section, add your name to the CODEOWNERS. |
| 48 | + |
| 49 | +!!! note |
| 50 | + Review from code owners is not required to merge, however the core team will try to get a timely review from code owners whenever possible. |
| 51 | + |
7 | 52 | ## Getting started |
8 | 53 |
|
9 | 54 | We use the GitHub fork and pull request model for development: |
@@ -52,18 +97,22 @@ Then navigate to GitHub, and create a pull request. |
52 | 97 |
|
53 | 98 | ## Review process |
54 | 99 |
|
55 | | -Documentation is maintained by everybody - so don't be afraid to jump in and make changes or fixes where you see the need or the potential. |
| 100 | +After you have made a pull request, a CI/CD pipeline will run the [spell checker][ref-contributing-spelling] and build a copy of the docs with the PR changes. |
| 101 | +A temporary "TDS" copy of the docs is deployed, to allow reviewers to see the finished documentation, at the address `https://docs.tds.cscs.ch/$PR`, where `PR` is the number of the pull request. |
56 | 102 |
|
57 | | -If you plan to make significant changes, please discuss them with an [issue](https://github.com/eth-cscs/cscs-docs/issues) beforehand, to ensure the changes will fit into the larger documentation structure. |
| 103 | +To make changes based on reviewer feedback, make a new commit on your branch, and push it to your fork. |
| 104 | +The PR will automatically be updated, the spell checker will run again, and the TDS documentation site will be rebuilt. |
58 | 105 |
|
59 | | -If you think your documentation update could affect specific stakeholders, ping them for a review. |
60 | | -The same applies if you are not getting get a timely reply for your pull request. |
61 | | -You can get some hints of whom to contact by looking at [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS). |
| 106 | +!!! tip |
| 107 | + If you think your documentation update could affect specific stakeholders, ping them for a review. |
| 108 | + You can get some hints of whom to contact by looking at [CODEOWNERS](https://github.com/eth-cscs/cscs-docs/blob/main/.github/CODEOWNERS). |
| 109 | + If they don't reply in a timely manner, reach out to the core docs team to expedite the process. |
62 | 110 |
|
63 | 111 | !!! note |
64 | 112 | To minimise the overhead of the contributing to the documentation and speed up "time-to-published-docs" we do not have a formal review process. |
65 | 113 | We will start simple, and add more formality as needed. |
66 | 114 |
|
| 115 | +[](){#ref-contributing-spelling} |
67 | 116 | ### Spell checker |
68 | 117 |
|
69 | 118 | A spell checker workflow runs on all PRs to help catch simple typos. |
@@ -173,6 +222,17 @@ Screenshots can help readers follow steps on guides. Think if you need to show t |
173 | 222 |
|
174 | 223 | Often, screenshots can quickly become obsolete, so you may want to complement (or maybe even replace) some with text descriptions. |
175 | 224 |
|
| 225 | +!!! tip |
| 226 | + Screen shots take up space in the git repository. |
| 227 | + |
| 228 | + It might be "only a few hundred kilobytes" for a picture, but over the lifetime of the git repository this adds up to slow down source code cloning and CI/CD pipelines. |
| 229 | + |
| 230 | +!!! tip |
| 231 | + Avoid using screen shots that do not directly contribute to the documentation. |
| 232 | + |
| 233 | + For example, showing a screen shot with markers that are used to explain non-trivial steps that a user should follow is good documentation. |
| 234 | + On the other hand, a screenshot that says "this is a screenshot of the tool" adds no value, and draws the readers attention away from documentation. |
| 235 | + |
176 | 236 | #### Diagrams |
177 | 237 |
|
178 | 238 | Diagrams can help readers understand more abstract concepts like processes or architectures. We suggest you use [mermaid](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/creating-diagrams#creating-mermaid-diagrams). Such format makes diagrams easy to maintain and removes the need to commit image files in the repository. |
|
0 commit comments