2020-04-20 20:46:46 +00:00
# How to work on the docs theme
> [!NOTE]
2020-09-26 12:21:23 +00:00
> A quick reminder that you do not need to setup anything for working on the content for the documentation site.
2020-04-20 20:46:46 +00:00
>
2021-02-01 14:25:24 +00:00
> To work on the contributing guidelines, you can edit or add files in the `docs` directory [available here](https://github.com/freeCodeCamp/freeCodeCamp/tree/main/docs). When your changes are merged, it will be made available automatically at the documentation site.
2020-04-20 20:46:46 +00:00
2020-09-26 12:21:23 +00:00
## Structure of the docs website
2020-04-20 20:46:46 +00:00
The site is generated using [`docsify` ](https://docsify.js.org ), and served using GitHub pages.
2020-07-12 03:06:37 +00:00
Typically you would not need to change any configuration or build the site locally. In case you are interested, here is how it works:
2020-04-20 20:46:46 +00:00
- The homepage's source for this site is available in [`docs/index.html` ](index.html ).
- We serve this file as a SPA using `docsify` and GitHub Pages.
- The `docsify` script generates the content of `markdown` files in `docs` directory on demand.
2020-09-26 12:21:23 +00:00
- The homepage is generated from the [`_coverpage.md` ](_coverpage.md ).
- the sidebar navigation is generated from [`_sidebar.md` ](_sidebar.md ).
2020-04-20 20:46:46 +00:00
2020-07-12 03:06:37 +00:00
## Serving the documentation site locally
2020-04-20 20:46:46 +00:00
Clone freeCodeCamp:
2020-10-03 23:32:42 +00:00
```console
2020-04-20 20:46:46 +00:00
git clone https://github.com/freeCodeCamp/freeCodeCamp.git
docsify serve docs
```
Install `docsify` :
2020-10-03 23:32:42 +00:00
```console
2020-04-20 20:46:46 +00:00
npm install -g docsify
```
and serve the `/docs` directory
2020-10-03 23:32:42 +00:00
```console
2020-04-20 20:46:46 +00:00
docsify serve docs
```
2022-05-03 17:58:38 +00:00
Alternatively, if you have installed freeCodeCamp locally (see the local setup guide), we bundled the CLI with the development tools so you can run any of the below commands as needed from the root of the repo:
2020-10-03 23:32:42 +00:00
### Serve and launch the documentation site only
```console
npm run docs:serve
```
### Serve the documentation site alongside freeCodeCamp locally:
```console
npm run develop
```
2021-02-01 14:25:24 +00:00
> The documentation site should be available at <http://localhost:3200>