Strapi is an open-source project administered by the Strapi team. We appreciate your interest and efforts to contribute to Strapi.
All efforts to contribute are highly appreciated, we recommend you talk to a maintainer prior to spending a lot of time making a pull request that may not align with the project roadmap. Please note that contributions, pull requests, and issues should be written in English.
Strapi is an open-source project. See the LICENSE file for licensing information. All of the work is available on GitHub.
The core team and the contributors send pull requests which go through the same validation process.
This project and everyone participating in it are governed by the Strapi Code of Conduct. By participating, you are expected to uphold the code.
Requests for new documentation are highly encouraged, this is not limited to new additions but also changes or more information requested on existing documentation. Please use our request documentation issue template. If you are requesting documentation, please feel free to open a pull request.
Bug reports help to improve the documentation. Please use our Documentation Bug Report template to report documentation bugs. Before submitting an issue:
- Check for existing pull requests that may address the same issue.
- Check for related open issues, if so, please provide context on the existing issue.
- Follow the issue template and fill out as much information as you can.
- Verify the issue is only with the Strapi documentation, code issues should be directed at the main strapi/strapi repository.
Technical questions should be asked using the following resources:
- Open a Q&A thread on our Official Forum
- Engage with other community members on our Community Discord
The core team reviews community pull requests and either merges, requests changes, or comments and closes the pull request. You can open a documentation pull request by:
- clicking the
Improve this page
link at the bottom of any documentation page to directly edit in GitHub, - forking the
documentation
repository and working locally.
The following procedure allows you to work locally on the Strapi documentation.
-
Fork the
documentation
repository. -
Clone your forked
documentation
repository.git clone [email protected]:yourgithubname/documentation.git
-
Enter the
developer-docs
folder to contribute to the Developer Documentation, or theuser-docs
folder to contribute to the User Guide.# developer documentation cd documentation/docs/developer-docs # user documentation cd documentation/docs/user-docs
-
Choose the branch from which to work: either
main
for a contribution on the current version of Strapi orv[x]
for a contribution on a previous version of Strapi.✋ Previous, non-current versions of the Strapi documentation are only maintained for 6 months after the release of the latest, current version.#current version of Strapi (i.e. v4) git checkout main #previous version of Strapi (e.g. v3) git checkout v3
-
From your chosen branch, retrieve the latest modifications to work on an up-to-date branch.
git pull
-
Create your branch, based on either
main
orv[x]
, to work on your documentation contribution. Make sure your branch name indicates both the type of documentation and the topic.# developer documentation git checkout -b <dev/branch-name> # user documentation git checkout -b <user/branch-name>
-
Run the docs on your computer
cd docs
# Install dependencies
yarn
# Run user and developer-docs
yarn dev
# Run developer-docs only
yarn dev:dev
# Run user-docs only
yarn dev:user
The project is now up and running at http://localhost:8080 and you should be able to access it in your browser.
You are now ready to contribute to the Strapi documentation! 🚀
For lengthier contributions, we provide general guidelines that can help you write clear and concise documentation:
- The 12 Rules of Technical Writing gives an overview of how to structure and write clear documentation.
- The Strapi Documentation Style Guide has formatting guidelines and how to implement formatting in markdown files.
When you are finished writing, create a pull request from your forked repository to the original documentation
repository (see the GitHub docs for more information) or use the Create a new branch for this commit and start a pull request option if you are using the GitHub web browser interface (see the GitHub docs).
✋ Sign the CLA (Contributor License Agreement), directly via GitHub (see our dedicated blog post for more information).
The pull request review process and timeline are based on the availability of Strapi's Documentation team to handle community contributions. The workflow is:
- The pull request is assigned to a member of the Documentation team.
- At least 1 member of the Documentation team will review the pull request for:
- accuracy,
- quality,
- alignment with the documentation scope and roadmap.
- Reviewers will either approve, ask for changes, or reject the pull request.
- Accepted pull requests will be merged and deployed as part of the regular documentation deployments on Wednesdays every 2 weeks.
Every documentation deployment is communicated through a message in the "News" section of the Strapi forum.