Writing Documentation¶
The documentation's source files are located in the docs
directory and it is built using the MkDocs package. To work on the documentation and see the changes in real-time, run the following command.
Once the changes are pushed to the main
branch, the deploy-docs
workflow will be automatically triggered, and docs.rendercv.com will be updated to the most recent version.
Updating the examples
folder¶
The examples
folder includes example YAML files for all the built-in themes, along with their corresponding PDF outputs. Also, there are PNG files of the first pages of each theme in docs/assets/images
. These examples are shown in README.md
.
These files are generated using docs/update_examples.py
. The contents of the examples are taken from the create_a_sample_data_model
function from rendercv.data
.
Run the following command to update the examples
folder.
Once a new release is created on GitHub, the publish-to-pypi.yaml
workflow will be automatically triggered, and the examples
folder will be updated to the most recent version.
Updating figures of the entry types in the "Structure of the YAML Input File"¶
There are example figures for each entry type for each theme in the "Structure of the YAML Input File" page.
The figures are generated using docs/update_entry_figures.py
.
Run the following command to update the figures.
Once a new release is created on GitHub, the publish-to-pypi.yaml
workflow will be automatically triggered, and the figures will be updated to the most recent version.
Updating the JSON Schema (schema.json
)¶
The schema of RenderCV's input file is defined using Pydantic. Pydantic allows automatic creation and customization of JSON schemas from Pydantic models.
The JSON Schema is also generated using docs/update_schema.py
. It uses generate_json_schema
function from rendercv.data
.
Run the following command to update the JSON Schema.
Once a new release is created on GitHub, the publish-to-pypi.yaml
workflow will be automatically triggered, and schema.json
will be updated to the most recent version.