This repository houses documentation for the Substrate blockchain framework.
The docs are written in markdown, processed by docusaurus, and hosted at the Substrate Developer Hub.
The repository is structured as a docusaurus project with the markdown files organized in the /docs
directory. The images and other assets are in the /docs/assets/
directory. Follow our contribution guidelines.
To add a new markdown document,
- Create your markdown document in a suitable directory inside
/docs
. - If you have images in your document, put them in the
/docs/images/
directory. - Documentation should follow our contribution guidelines.
- If you want your document to appear in the sidebar, add its reference in the
/website/sidebar.json
file under the corresponding section.
To rename an existing document,
- Change the name or path of the document.
- After the change has been merged, go to the Crowdin project, make sure the translation is already migrated to the new file automatically for all the target languages.
- Then go to Crowdin project settings, remove the old source file in
Files
tab. - If you don't have access to the Crowdin project, please send email to [email protected] with the file information you want to remove.
cd
into the/website
directory.- Execute
yarn install
and thenyarn start
.
The Substrate Developer Hub website should open in a browser window.
Once you are done with your changes, feel free to submit a PR.
There are two ways to deploy to staging environment, which you can access at staging.substrate.dev, which is hosted on Heroku. Please check with the team members for the HTTP basic authentication username and password.
-
Commit to your local repository. Run
scripts/deploy-staging
. This builds the project into the docusaurus static site, and force push the static site tostaging
branch. The result is then picked up by Heroku. Note that multilingual translations are NOT pulled in. -
Commit to your local repository, and then push to
staging-source
branch. This triggers the CI to build the website AND also pull in multilingual translations from our Crowdin project. The final built static site is then pushed tostaging
branch and deployed to Heroku.
Our production site is at substrate.dev. To deploy to production, push your update in source
branch. This triggers the CI to build the website AND also pull in multilingual translation from our Crowdin project. The final built static site is then pushed to master
branch and hosted on GitHub Pages.
Substrate documentation is licenced under the Apache 2 license.