An open API service indexing awesome lists of open source software.

https://github.com/kubernetes/contributor-site

Code for kubernetes.dev
https://github.com/kubernetes/contributor-site

k8s-sig-contribex

Last synced: 23 days ago
JSON representation

Code for kubernetes.dev

Awesome Lists containing this project

README

        

# Kubernetes Contributor Site

This repository contains the [Hugo][hugo] site and generator scripts for the
Kubernetes Contributor site. The published website is available at
https://kubernetes.dev/ (served via Netlify).

## Site content

The content for the Contributor Site is sourced from multiple locations.
Content managed within this repository is generated from [Markdown]
found within the [`content`][ct] directory. To update the site's content,
make changes to the Markdown sources and [submit a pull request][pr] to this
repository.

Some content is externally sourced and changes to that must be made in the
original location. A list of sources and their locations within the
[`content`][ct] is available below:

### External sources

- **Source:** https://git.k8s.io/community/contributors/guide

**Destination:** `/guide`
- **Source:** https://github.com/cncf/foundation/blob/master/code-of-conduct.md

**Destination:** `/code-of-conduct.md`
- **Source:** https://git.k8s.io/sig-release/releases/release-1.18/README.md

**Destination:** `/release.md`

## Running the site locally

To develop site content, you can run the site locally using [Hugo][hugo] in
two ways:

1. [Inside a Docker container](#using-docker)
2. [Natively](#natively) (not inside a Docker container)

When you make changes to the site's content, Hugo will automatically update
the site and refresh your browser window.

### Using Docker

The easiest and most cross-system-compatible way to run the Contributor
Site is to use [Docker][docker]. To begin, create the docker image to be used
with generating the site by executing `make container-image`.

To ensure you can view the site with externally sourced content, run
`make container-gen-content` before previewing the site by with
`make container-server`.

**NOTE to Apple Silicon Mac Users**

Before proceeding with the build steps, please ensure that you set the
`DOCKER_DEFAULT_PLATFORM` environment variable to `linux/amd64` by using the
following command:

```
export DOCKER_DEFAULT_PLATFORM=linux/amd64
```

### Natively

For instructions on installing and using Hugo, see the [Hugo Documentation][hugo-docs].
Note that the extended version is required.

In addition to Hugo, the [postcss-cli] and [autoprefixer] JavaScript packages are
required. These can be installed via the [Node Package Manager][npm] (`npm`) from a
recent version of [nodejs] with `npm install -g postcss-cli autoprefixer`.

The Contributor Site uses the [docsy] theme. It is included as a [git submodule].
To fetch docsy and its requirements, run the command:

```
git submodule update --init --recursive --depth 1
```

To ensure you can view the site with externally sourced content, run
`make gen-content` before previewing the site by with `make server`.

**NOTE to MacOS Users**

The `hack/gen-content.sh` script requires the gnu version
of base packages such as `find`, `grep`, and `sed`.

```
brew install coreutils findutils grep gnu-sed gnu-tar make readlink
```

You will then need to update your path to include these:

```
export PATH="/usr/local/opt/coreutils/libexec/gnubin:$PATH"
```

## Community, discussion, contribution, and support

This project is managed by [SIG Contributor Experience][sig-contribex] as a
part of [KEP-2225][kep-2225]

You can reach the maintainers of this project at:

- [Slack][sig-contribex-slack]
- [Mailing List][sig-contribex-list]

## Evolution of this site:

We’re building out this site in real-time! Want to join us and help? Here’s what we have in store for next iterations:

* [ ] Contributor guide/handbook: Feature launch date estimated January 2023
* [ ] Developers' guide/handbook
* [ ] Directory of Kubernetes SIGs and other community groups
* [ ] Listing events beyond just Contributor Summits
* [ ] Pathways to success for [new Kubernetes contributors](https://git.k8s.io/community/community-membership.md) and mentoring programs
* [ ] Refactoring the hugo code and glue code behind the site

See the [Issues] for tasks and projects in progress

### Code of conduct

Participation in the Kubernetes community is governed by the
[Kubernetes Code of Conduct](code-of-conduct.md).

[hugo]: https://gohugo.io/
[Markdown]: https://www.markdownguide.org/
[ct]: ./content/
[pr]: https://help.github.com/en/articles/about-pull-requests
[hugo-docs]: https://gohugo.io/getting-started/installing
[npm]: https://nodejs.org/en/download/package-manager
[frontmatter]: https://gohugo.io/content-management/front-matter/
[docker]: https://www.docker.com/get-started
[sig-contribex]: https://git.k8s.io/community/sig-contributor-experience/README.md
[sig-contribex-slack]: http://slack.k8s.io/#sig-contribex
[sig-contribex-list]: https://groups.google.com/forum/#!forum/kubernetes-sig-contribex
[kep-2225]: https://github.com/kubernetes/enhancements/tree/master/keps/sig-contributor-experience/2225-contributor-site
[docsy]: https://docsy.dev
[postcss-cli]: https://postcss.org/
[autoprefixer]: https://github.com/postcss/autoprefixer
[git submodule]: https://git-scm.com/book/en/v2/Git-Tools-Submodules
[Issues]: https://github.com/kubernetes/contributor-site/issues