Jump to ToC  | Jump to Changelog

_ Contributing _

By: KemoNine

Reading Time: 6 minutes  |  Word Count: 1187 words

Published:

Updated:

Table of Contents

Submitting Contributions

We welcome contributions to the site and ask that you use our GitHub repository for any contributions.

Issues and Questions

If you run into any problems with the website or have specific questions, please use the Issues section of our GitHub repository here.

We politely ask you review the open issues for existing items that overlap. Please comment on an existing issue that is relevant prior to creating a new issue.

If there is not an existing issue for your need, please create a new issue. We politely ask you provide us as much detail as possible so we can hopefully respond without having to play a game of 20 questions.

Website Content Updates

We welcome updates to the contents of this website. Please use the Issues section here to submit any change requests for the site.

Changes can be:

If you’d like to submit full markdown files or larger edits, please review the contents of this page prior to submission. We’ve outlined some details on how we manage the content of this site below and ask our contributors follow these guidelines when submitting markdown changes.

Anonymous Anecdotes

If you’d like to submit an anecdote to the site anonymously, please get in touch via a burner account. We can work with you to get your anecdote published on the site via a ghost writer.

Pull Requests

If you’ve used GitHub and git in the past, we will accept Pull Requests for updates. However, we will not describe the process here as it is an advanced topic we are not supporting directly. Consider Pull Requests a convenience that could go away in the future due to their inherent complexity.

And More

Any other requests we ask be submitted as GitHub Issues here.


File and Folder Organization

Files and folders are setup with the following overall layout.

/content/
         tips/
              category-topic-1/index.md
              category-topic-2/index.md
              category-topic-3/index.md
         news/yyyy-MM-dd-title/index.md
               yyyy-MM-dd-title/index.md
         faq/title-1/index.md
             title-2/index.md
         anecdotes/[author]-[title]/index.md
                   [author]-[title]/index.md

We use Page Bundles (Hugo docs) for all content. Page Bundles are just folders with an index.md file and related assets. The index.md file is the main content and any files stored next to index.md can be easily referenced directly from index.md. This is particularly helpful for managing image assets and keeping them organized.

Tips Directory

The tips directory contains the main knowledge base data. Each folder + index.md file represents a different page on the site and they are named using the format [tag]-[title]/index.md with [tag] being the ‘category set’ in the page metadata and [title] being the title set in the page metadata.

This allows us to easily cross reference information within a tag (see here for how to cross reference pages) and keep the topic file names from colliding if there is any overlap between categories.

News Directory

In this layout the news directory contains all of the news posts with dated file names using the given pattern. It’s a pretty standard and simple folder organization scheme.

FAQ Directory

In this layout the faq directory contains all of the FAQ pages with file names matching the page title. It’s a pretty standard and simple folder organization scheme.

Anecdotes Directory

In this layout the anecdotes directory contains all of the Anecdote pages with [author] being the name of the first author and [title] being the title of the page.


Authorship

Feel free set your preferred name as the author, we like to attribute our authors. If you prefer to remain anonymous, please set authorship to Anonymous.

Please note: Authorship metadata will be publicly visible.


Using Tags

Tags are used as a kind of ‘category’ and only for tips. These are very high level tags that are more topical than anything. This is to help facilitate filling out the related pages section of the page headers. Nothing more. Tags should only be applied to tips and be the same as the filename prefix of the tip’s folder.

We do this because there are so many synonyms for words and tags are a massive overhead for upkeep long-term. Rather than try to have all the tags for all the things we’ve spent time ensuring the site search is robust. The site search will let you search for content and includes synonyms in the underlying setup so we can allow more flexible searches and not be forced to make a mess of the on-page content.


Changelog Entries

This site uses GitHub for tracking the changes to the content used to generate the site. Please consider GitHub the source of truth for the data contained on this website.

However, that does not do our readers any good and we require all content pages have a changelog section in the front matter of each page.

If you are editing an existing page, we require that you add a dated entry with a summary of the changes made.

If you are not sure what date to use, please use the first date you worked on the changes you plan to submit for inclusion on the website.

Programmers take note: this can be a copy/paste of your git commit. However, this assumes you write meaningful commit messages. Which you do, right?


Attribution and Syndication

When syndicating content we require contributors include an Attribution section at the top of the page.

We do not have a standard format for this section and leave it to the contributor to choose a format that works best for the attribution(s) needed.


Style Guidelines

If submitting content or copy edits, please note the following


Cross References

If you are cross referencing information you can use the following code.

[Link Text]({{< ref “[category]-[file]” >}}) where [category] is the main content folder for the page and [file] is the markdown file name with the content you would like to reference.

Please use this format for cross references between content pages. It helps us better manage cross references between content pages over time.


Images

We have setup a short code that we ask authors to use for adding images. This shortcode will handle ensuring the appropriate alt-text is added to the image, generate responsive WebP variants for low-bandwidth delivery, and wire the image into the site’s lightbox viewer.

You can use the shortcode using the following pattern:

{{< figure src="[filename]" alt="[alt-text]" caption="[visible-caption]" >}}

Where [filename] is the filename, including extension, of the image file. [alt-text] is the img tag’s alt-text attribute value. [visible-caption] is the text that is shown just underneath each image as a caption; the caption parameter is optional and may contain inline HTML.


Changelog

2026-08-19
Cleanup to match current site setup and processes
2024-07-04
Adjust conventions to accommodate the changelog for each page being moved to the front matter
2023-03-23
Add info on anecdotes, related pages, related anecdotes, conflicting access needs, attribution and syndication
2023-03-22
Fix typo
2023-03-21
Remove source code section as it's spurious info presently
2023-03-21
Re-order sections to be more similar to the order of the initial sections of content pages
2023-03-21
Add detail on submitting content updates
2023-03-21
Add missing jump links
2023-03-21
Re-order some sections for better flow and clarity
2023-03-21
Add note about source code
2023-03-21
Add additional info on GitHub and how it's used for contributions
2023-03-21
Add note that change log is exempt from 2nd level heading 'back to top'
2023-03-20
Initial creation