Docsy is a Hugo theme for technical documentation sites, providing easy site navigation, structure, and more. This Docsy Example Project uses the Docsy theme, as well as providing a skeleton documentation structure for you to use. You can either copy this project and edit it with your own content, or use the theme in your projects like any other Hugo theme.
This Docsy Example Project is hosted at https://example.docsy.dev/.
You can find detailed theme instructions in the Docsy user guide: https://docsy.dev/docs/
This is not an officially supported Google product. This project is currently maintained.
The following will give you a project that is set up and ready to use (don't forget to use --recurse-submodules
or you won't pull down some of the code you need to generate a working site). The hugo server
command builds and serves the site. If you just want to build the site, run hugo
instead.
git clone --recurse-submodules --depth 1 https://github.com/google/docsy-example.git
cd docsy-example
hugo server
The theme is included as a Git submodule:
▶ git submodule
a053131a4ebf6a59e4e8834a42368e248d98c01d themes/docsy (heads/master)
If you want to do SCSS edits and want to publish these, you need to install PostCSS
(not needed for hugo server
):
npm install
Once you've cloned the site repo, from the repo root folder, run:
hugo server
You can run docsy-example inside a Docker
container, the container runs with a volume bound to the docsy-example
folder. This approach doesn't require you to install any dependencies other
than Docker.
- Build the docker image
docker build -f dev.Dockerfile -t docsy-example-dev:latest .
- Run the built image
docker run --publish 1313:1313 --detach --mount src="$(pwd)",target=/home/docsy/app,type=bind docsy-example-dev:latest
Open your web browser and type http://localhost:1313
in your navigation bar,
This opens a local instance of the docsy-example homepage. You can now make
changes to the docsy example and those changes will immediately show up in your
browser after you save.
To stop the container, first identify the container ID with:
docker container ls
Take note of the hexadecimal string below the CONTAINER ID
column, then stop
the container:
docker stop [container_id]
To delete the container run:
docker container rm [container_id]