This is the public repository for CircleCI Docs, a static website generated by Jekyll. If you find any errors in our docs or have suggestions, please follow our Contributing Guide to submit an issue or pull request.
This repository houses and manages several arms of documentation for CircleCI. This section will provide a brief overview of each "component" and how to get started with making changes.
This is the main CircleCI documentation site.
This is built with Jekyll and houses the majority of our documentation. Other
branches of documentation (src-api
, src-crg
, etc) eventually get moved into
this folder (in our build process) and integrated into the Jekyll Site.
We also have an automated code review tool setup, so it will run markdownlint on your PR and review for any markdown style violations. The rules are located at .markdownlint.jsonc . You can also fix most of the violations automatically.
Our API documentation source can be found in this folder.
API v1 is written by hand, and compiled to work with
Slate. The compilation and deployment of
v1
is handled by our .circleci/config.yml
, which calls our build_api_docs
script. If you need to make changes to our V1 documentation, go to
src-api/source/includes
and make changes as needed in the markdown files.
API v2 is compiled from an OpenAPI
spec. We use
Redoc to compile our spec into a webpage. To
see the compilation process, refer to build_api_docs.sh
and our
.circleci/config.yml
. If you need to make changes to the output site, you will
likely need to make source code changes to the API, where the docs are generated
from.
Some JavaScript files that make use of Webpack and bundles a Javascript file that eventually gets loaded into Jekyll. Our JavaScript files are splintered between Jekyll's assets folder and here. We should be navigating toward one solution that will eventually aggregate all JS source code in one place.
This is a git sub-module for shared content with the main CircleCI
website. The js
folder within is symlinked into
Jekyll's assets folder for JavaScript. Eventually, the JS here could/should be
integrated with a better JS bundle solution per above.
To allow for more flexibility, please find the checklist inside our confluence space.
Documentation (guides, references, and associated images) is licensed as Creative Commons Attribution-NonCommercial-ShareAlike CC BY-NC-SA. The full license can be found here, and the human-readable summary here.
Everything in this repository not covered above is licensed under the included MIT license.