This is where you'll find all of the assets that make up helm.sh, the website for the Helm project. If you'll looking to edit docs, report a website bug or write a new blog post, you've come to the right place!
Development
Helm.sh is a simple Hugo static site, built with a custom theme. To run the website locally, you'll need to first install Hugo and any dependencies.
brew install hugo
yarn install
You can then compile and run the site locally:
hugo serve
Deployment
Changes are automatically deployed to Netlify when merged to main
. Build logs can be found here.
Contributing
Anyone can submit a PR to edit Helm.sh. We require commits be signed - please refer to the contributing guide.
Pull requests require maintainer approval before merge.
How to Edit The Helm Docs
Since the release of Helm 3, all project documentation is located in this repo under /content/en/docs/
.
For earlier versions, see the dev-v2 branch of the main Helm repo here.
Updating the Helm CLI Reference Docs
The documentation for the list of Helm CLI Commands are exported from the main helm project repo and rendered here on the website as a reference.
To update these docs, you'll need to:
- Delete all plugins currently installed with
helm plugin uninstall
- Navigate to
content/en/docs/helm/
- Run
HOME='~' helm docs --type markdown --generate-headers
to generate the markdown docs files, replacing any prior markdown files. Note: Make sure you run the version of helm you want to build the docs for (for example, by checking out the correct tag and building it) - Commit the changes and create a PR to update the website.
How to Write a Blog Post
Blog posts are created via pull requests. The following steps are used to add them:
- Add a new file to the
content/en/blog/
directory whose name is the published date and the title. The files must be markdown formatted. See the existing titles for examples of the format - Add the header meta-data to the file using this format (note the permalink structure). Recommended but optional fields are
authorname
which should be name(s); these are displayed verbatim.authorlink
is the link used byauthorname
.
---
title: "A Fancy Title"
slug: "fancy-title"
authorname: "Captain Awesome"
authorlink: "https://example.com"
date: "yyyy-mm-dd"
---
- Add the content below the
---
as Markdown. The title does not need to be included in this section - Any images should be placed in the
/content/en/blog/images/
directory. Images should be losslessly compressed to reduce their size. Tools, such as ImageOptim, can be used. - To summarize the content on the blog index page, insert a
<!--more-->
break in your markdown. This will truncate the content with a Read More link.
Blog PRs require approval from the core Helm maintainers before merge.
Internationalization & Translation
We welcome content translations to our site and our docs, to help expand access to Helm around the world.
Helm.sh supports multiple languages. Please refer to the Localizing Helm Documentation for a guide on translating and configuring content for international users.
Code of Conduct
Participation in the Helm community is governed by the Helm Code of Conduct.
Thank You!
We appreciate your contributions to our website and our documentation!