For every star on GitHub, we'll donate $2 to clean up our waterways. Star us now!
We aim to follow the Diátaxis Framework where possible. This framework specifies four distinct categories: Tutorials, Explanation, How-to Guides, and Reference. As you contribute to the documentation, use the framework as a guide to help you decide where to add content. We recognize that not everything will fall into the four categories and welcome suggestions on how to improve the documentation to make it more useful for everyone.
Follow the steps below to work locally with this project.
bundle install
npm install
bundle exec jekyll serve
Note: Changes to _config.yml
require you to stop the Jekyll server (^C
) and restart it with bundle exec jekyll serve
.
You can add .md
and .html
files to this project to be rendered. Most pages are written in Markdown.
_src
folder and locate the section you’d like to update.my-page.md
. Use dashes as spaces in your file name.All pages require front matter to render properly. At a minimum you will need to specify:
layout:
The template file to use when rendering the content. For most pages use doc
. Custom templates can be created and placed in _layouts
.title:
The title of the page.weight:
This controls how pages are displayed in menus and lists. The first file in each section should be named index.md
and have a weight of 1
. All other pages within a section should have a weight of 2
. You can use additional numbers to control how pages get sorted in each section.permalink:
This allows you to set this page’s URL. You can use this to override Jekyll’s automatically generated URLs. Ex. /resources/plugins
Example:
---
layout: doc
title: My New Doc
permalink: /tutorials/new-doc
weight: 2
---
_newsection
in the src
directory.index.md
. Set the weight:
of this page to 1
– it’ll be the home page for this section.collections:
in _config.yml
. Ex: newsection:
output: true
images
folder in your section.images/my-document/filename.jpg
in your pages.The TOC is managed through the jekyll-toc
gem. You can read about its configuration here.
This is added to all pages by default. It can be turned off by setting toc: false
in the fromt matter of the document.
Builds will fail to deploy if links are broken. You can check for broken links locally with this command before pushing changes:
bundle exec jekyll build && bundle exec htmlproofer --log-level :debug ./_site/ --assume_extension --http_status_ignore 503 --url-ignore "/www.linkedin.com/,/localhost/"
If you’d like to skip external links, add --disable-external
:
bundle exec jekyll build && bundle exec htmlproofer --log-level :debug ./_site/ --assume_extension --http_status_ignore 503 --url-ignore "/www.linkedin.com/,/localhost/" --disable-external
This project is deployed via Netlify using the steps defined in netlify.toml
in the root of the Meltano project.
You may receive an error on some pages when trying to use fenced code blocks:
Liquid Warning: Liquid syntax error (line 670): Expected end_of_string but found open_round in "" in $PATH/src/_reference/plugins.md
To fix this, wrap the code block in and
tags:
meltano config <transform> set _vars <key> <value>
export <TRANSFORM>__VARS='{"<key>": "<value>"}'
# For example
meltano config --plugin-type=transform tap-gitlab set _vars schema "{{ env_var('DBT_SOURCE_SCHEMA') }}"
export TAP_GITLAB__VARS='{"schema": "{{ env_var(''DBT_SOURCE_SCHEMA'') }}"}'