{"id":20464788,"url":"https://github.com/envoyproxy/envoy-website","last_synced_at":"2025-08-26T00:16:38.512Z","repository":{"id":38238267,"uuid":"101792503","full_name":"envoyproxy/envoy-website","owner":"envoyproxy","description":"Envoy Proxy website","archived":false,"fork":false,"pushed_at":"2024-10-29T10:51:48.000Z","size":199967,"stargazers_count":42,"open_issues_count":19,"forks_count":156,"subscribers_count":22,"default_branch":"main","last_synced_at":"2024-10-29T11:48:05.444Z","etag":null,"topics":["cncf","envoy","website"],"latest_commit_sha":null,"homepage":"https://envoyproxy.io","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/envoyproxy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-08-29T18:18:34.000Z","updated_at":"2024-10-29T10:51:52.000Z","dependencies_parsed_at":"2023-10-11T07:46:54.624Z","dependency_job_id":"f2b8dbf7-3523-4445-9649-371179f4508c","html_url":"https://github.com/envoyproxy/envoy-website","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/envoyproxy%2Fenvoy-website","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/envoyproxy%2Fenvoy-website/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/envoyproxy%2Fenvoy-website/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/envoyproxy%2Fenvoy-website/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/envoyproxy","download_url":"https://codeload.github.com/envoyproxy/envoy-website/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242024275,"owners_count":20059496,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cncf","envoy","website"],"created_at":"2024-11-15T13:16:28.047Z","updated_at":"2025-03-05T12:22:25.848Z","avatar_url":"https://github.com/envoyproxy.png","language":"HTML","readme":"# Envoy website\n\nThis is the repo for the [Envoy website](https://www.envoyproxy.io).\n\nThe website is built with bazel using Pelican and Sphinx.\n\nThe site is deployed to Netlify.\n\nEnvoy's documentation for release versions is stored in https://github.com/envoyproxy/archive/.\n\n\n## Contribute content to the website\n\n### Site data\n\nSite data is stored (or created) in yaml files in the [site/data](./site/data)  directory.\n\n### Add adopter logo\n\nEnvoy is happy to recognize projects that use the software in production.\n\nThese are not intended to be an advertisement, but a show of support for the project.\n\nAll supporting organizations will be listed in alphabetical order.\n\nTo be added to our adopter list, you must meet at least 2 of these criteria:\n\n*   Be a participant and active contributor in the community, eg:\n    - contributing code\n    - raising or resolving issues\n    - sponsoring EnvoyCon\n*   Publicly disclose your usage of Envoy, eg:\n    - [talk](https://www.youtube.com/watch?v=4x5WjxAMvKY)\n    - [blog](https://monzo.com/blog/2019/04/03/deploying-envoy-proxy)\n    - [CNCF case study](https://www.cncf.io/newsroom/case-studies/?_sft_cstudies_project=envoy)\n    - [social media](https://twitter.com/suhailpatel/status/1113425967144476672)\n*   Have an existing Envoy maintainer vouch for and approve your pull request\n\nTo add your logo, please send a [pull request](https://github.com/envoyproxy/envoy-website/pulls).\n\n\n## Envoy website development\n\nSphinx is used to build the latest docs, and Pelican is used to assemble the static files into a site.\n\nThe build process is **managed by bazel** to ensure reproducible builds and manage external data.\n\nAll content, data and customizations are stored in the [site directory](https://github.com/envoyproxy/envoy-website/tree/main/site)\n\n### Build using Docker\n\n**This is the recommended way to build the site.**\n\nThe [composition](docker-compose.yml) is designed to make use of a Bazel cache on your host system.\n\n#### Docker: export your `UID`\n\nBy default Docker cannot see your user's `UID`, so you need to export it to run the container build.\n\nThis ensures that any files created inside the container - the site build and any cache files - are owned\nby the host user.\n\n```console\n$ export UID\n```\n\n#### Docker: build the website\n\n```console\n$ docker compose up --build -d website\n```\n\nThis will take some time on first run - you can tail the logs with:\n\n```console\n$ docker compose logs -f\n```\n\nOnce the build has completed the website should be available at http://localhost:8000.\n\nIf you are not running the [automatic rebuild](#automatically-rebuild-during-development) and you make changes you can rebuild the site with:\n\n```console\n$ docker compose run build\n```\n\n### Build the site on your host machine\n\nIf you would prefer not to use Docker you can build directly on your host machine.\n\n#### Host: install bazel\n\nThe expected version of Bazel can be seen in [.bazelversion](.bazelversion).\n\nIt is [recommended to install Bazel with Bazelisk](https://bazel.build/install/bazelisk) as this will pull in the\ncorrect Bazel version.\n\nIf you have Yarn installed you can install Bazelisk with that.\n\nFrom inside your local copy of the envoy-website repository, run:\n\n```console\n$ yarn install .\n```\n\n#### Host: install a compiler\n\nYou will need a compiler (clang or GCC) and some related dev tools installed to **build the docs**.\n\nFor example, on a Debian-based system, these can be installed with:\n\n```console\n$ apt get install build-essential\n```\n\nIf you [build without the docs](#build-without-the-docs), you can ignore this requirement.\n\n#### Host: build the website\n\n```console\n$ ./build-website.sh\n```\n\n### Tips for site development\n\n#### Automatically rebuild during development\n\nThe site can be made to auto-rebuild when changes occur in the `site/` directory.\n\nIf you are using Docker you can trigger this by setting the following in your environment,\nbefore bringing up the Docker composition:\n\n```console\n$ export BUILDER=live\n$ docker compose up --build -d website\n```\n\nIf you are building on your host you can just run the rebuild script directly:\n\n```console\n$ ./rebuild.sh ./site ./build-website.sh\n```\n\n#### Build without the docs\n\nIf you only need the non-docs parts of the website to be built, set the following environment\nvariable.\n\nSet this before building in Docker **or** on your host:\n\n```console\n$ export BAZEL_BUILD_OPTIONS=\"--config=nodocs\"\n```\n\n#### Debug build\n\nYou can enable richer logging.\n\nSet the following environment variable before building in Docker **or** on your host:\n\n```console\n$ export DEBUG=1\n```\n\n#### Put frequently used env vars in `.env`\n\nDocker compose will source the `.env` file before running.\n\nFor example, if you always want the site to build \"live\", add the following to `.env`\n\n```sh\nexport BUILDER=live\n```\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenvoyproxy%2Fenvoy-website","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fenvoyproxy%2Fenvoy-website","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fenvoyproxy%2Fenvoy-website/lists"}