Keeping track of contributions of all types is important: both code and non-code contributors. Within The Turing Way, contributors are kept track of and published in the book’s Record of Contributors. The rationale and guidance for acknowledging contributions are explained in Acknowledging Contributors.
The data for sections of the contributors record are sourced from different places,
Table 1:The current sources for contributor information and how they are presented in the book.
| Record type | Source | Presented in |
|---|---|---|
| Individual highlights and profiles | Page source | Individual Contributors |
| All contributors | All contributors file | All Contributors |
| Translations | Crowdin API | Translators |
In this page we describe the infrastructure supporting publishing contributors.
All Contributors¶
The All Contributors section displays the same all contributors table as README.md.
The information to build this table is contained in .all-contributorsrc, the configuration file for all contributors.
This JSON file controls the appearance of the table and also specifies where to write the all contributors table in the "files" list.
Each time the all contributors bot or CLI is run the table will be written to files in the "files" list.
The table is inserted as HTML between the following sets of tags:
<!-- ALL-CONTRIBUTORS-LIST:START - Do not remove or modify this section -->
<!-- prettier-ignore-start -->
<!-- markdownlint-disable --><!-- markdownlint-restore -->
<!-- prettier-ignore-end -->
<!-- ALL-CONTRIBUTORS-LIST:END -->You shouldn’t need to make changes to the HTML directly. Furthermore, it will be overwritten often by the all contributors bot. Manual changes to the contributors list, such as adding a contributor or regenerating the table, can be made using the all contributors CLI.
Translators¶
The translation contributions are taken from the Crowdin API.
This process is automated in this workflow.
The workflow, which runs weekly, fetches data from the Crowdin API then updates the tables in both the project’s README.md and the page in the afterword.