This repository contains the source code powering SilverStripe's developer documentation website.
This repository does NOT contain the most current documentation.
The documentation files are written in the
format and the most current versions of these files and are not stored
here. Instead, they are stored in a
docs folder alongside the
framework source code in each framework repository. For example, the
documentation markdown files for the master branch of the SilverStripe framework are
To set up a local instance of doc.silverstripe.org:
- Clone this repository to an empty directory
git clone https://github.com/silverstripe/doc.silverstripe.org path/to/ssdocs
No local NodeJS nor gatsby-cli is required for this option.
- Make sure docker and docker-compose are installed and docker daemon is running
- Simply use
./docker/runto run gatsby commands
./docker/run buildwould be equal to run
gatsby buildwithin a container
./docker/run develop -p 8000would run
gatsby develop -p 8000within a container.
- Install Gatsby CLI
To test a static build of the site, first create a production environment file.
cp .env.development .env.production
Then, run the build.
gatsby build gatsby serve
These commands will give you an exact representation of how the site will run on a production server, with statically generated html files and server-side rendering.
path/to/ssdocs, run the command
to instantiate a development server. This will consume all of the markdown files in both major release
branches and allow you to browse the documentation site on
http://localhost:8000 by default
(see the Gatsby docs for instructions on customising the port).
You can make changes directly to the source markdown files and get live updates in the development
server without having to rebuild the app or even refresh the browser. The clones of the
repositories are in the
.cache/gatsby-source-git folder in the root of this project. There are subfolders
4/, respective to their branch names. You can edit the files in
docs/en from there.
Just don't forget to merge your changes upstream once you're done. Building the gatsby app will not preserve your content changes, since the remote repositories are the source of truth.
Deploying content changes
Once your contribution has been merged into the master branch, it will be deployed to production via a
Github action in the
Deploying app changes
Once your change is merged in to the
master branch of this repository, it will be deployed to production.
To contribute an improvement to the https://docs.silverstripe.org functionality or theme, submit a pull request on the GitHub project. Any approved pull requests will make their way onto the https://docs.silverstripe.org site in the next release.