Contribute, and help us improve
Call for translators! We’re looking for translators to help translate this spec for everyone!
Help improve the all-contributors documentation!
Section titled “Help improve the all-contributors documentation!”Thanks for your interest in the project! Pull Requests welcome for any level of improvement, from a small typo to a new section, help us make the project better
All the source code is available at github.com/all-contributors/all-contributors
Committing to an all-contributors repo
Section titled “Committing to an all-contributors repo”We use the angular commit convention for commits that are used for an automated changelog generation, so it would be advisable to respect that.
If you’re not used to it or are afraid to mistype a commit, you can run npm run commit
or git cz
(if you have installed commitizen
) which would take you through a few questions and write the commit for you.
Editing Content
Section titled “Editing Content”Pro Tip: Every page has an Edit button up the top, clicking this will take you straight to the GitHub source code for that page
Once on a file, click the ‘pencil’ icon to easily edit the file inline

Translations
Section titled “Translations”Our translations are managed through crowdin. You can help contribute by heading to the crowdin project and suggesting translations. If you like, comment on this issue to let us know you’re helping or if you have any queries!
When translating, anything that has the XPATH
@href
,@src
etc mustn’t be translated. Things likecode
should not be either. This will cause the project to 404. See the below image for an example:![]()
However, it’s recommended to translate any content that would contribute to a better comprehension like the comments in
code
tags as long as it doesn’t change the actual code since it only understands English.
How to’s
Section titled “How to’s”Login to Crowdin
Section titled “Login to Crowdin”- Go to the crowdin project, then sign up and/or log in.
- Join the “All Contributors” project and voila!
Translate strings
Section titled “Translate strings”- Go to the crowdin project.
- Click on the flag of the language you want to translate the documentation to.
- Click on any
*.md
files that aren’t completely translated (read showing 100% on the right-hand side) - Write your translation in the “Enter translation here” field (which would correspond to the translation of the text in the “SOURCE STRING” field above) then click “SAVE”
- For proofreaders only: You can either approve translation suggestions (whether it’s done by you or someone else), which you will find in the “[LANGUAGE] TRANSLATIONS” section, by clicking on the :ballot_box_with_check: or delete them by clicking on the :wastebasket: icon.
Change deployments
Section titled “Change deployments”After you translate strings in any given language, you won’t see those changes appearing live until the master
branch was updated followed by a successful deployment.
Search
Section titled “Search”Search is by algolia, the configuration is at https://github.com/algolia/docsearch-configs/blob/main/configs/all-contributors.json
Run the website locally:
Section titled “Run the website locally:”All Contributors currently uses Astro and the Starlight theme for our documentation and website.
To build the docs locally:
- Make sure
npm
is installed on your machine. Use the nodejs documentation if you aren’t sure how to installnpm
.
To check that npm is installed run the following in your favorite shell:
npm -v
Next, make sure you have at least node version 0.22 (LTS) or higher. To check the version, use:
node -v
If you don’t have atleast version .22
or higher, please install node or upgrade your current version.
Install Astro, the Starlight Theme and all of the project dependencies using npm i
.
npm i
is shorthand for npm install
Once you have completed the above, you can launch a server locally that will build and run the docs locally. In your favorite shell run:
npm run start
- Then, go to
http://localhost:4321
and you will see the all contributors website there! - Refresh the browser page as needed when editing markdown pages.
Make changes - linting your contribution
Section titled “Make changes - linting your contribution”If you make changes to a markdown file in the site, then our linting action will check those changes. To run the linter yourself on a file locally:
First install markdownlint-cli:
npm i -g markdownlint-cli
Then run markdownlint on the file (or files) that you wish to check:
markdownlint --fix "src/content/docs/contribute.md"
Or you can run it on all files in the docs directory, like this:
markdownlint --fix "src/content/docs/**.md"
Add yourself as a contributor
Section titled “Add yourself as a contributor”To add yourself to the table of contributors, follow the bot usage instructions ;).