diff --git a/site/content/BUILD b/site/content/BUILD index 333a82209a109..2d65fafd0e5e8 100644 --- a/site/content/BUILD +++ b/site/content/BUILD @@ -12,6 +12,7 @@ pkg_files( "images/**/*.png", "images/**/*.svg", "pages/*.html", + "pages/*.md", ]), prefix = "content", strip_prefix = "", diff --git a/site/content/images/logos/cookpad.svg b/site/content/images/logos/cookpad.svg index e3dbbf0f25fdc..a77ef1b8c4bb4 100644 --- a/site/content/images/logos/cookpad.svg +++ b/site/content/images/logos/cookpad.svg @@ -1 +1 @@ - \ No newline at end of file + diff --git a/site/content/images/logos/databricks.svg b/site/content/images/logos/databricks.svg index 7147ca37846d0..3461c5814ffa1 100644 --- a/site/content/images/logos/databricks.svg +++ b/site/content/images/logos/databricks.svg @@ -1,6 +1,8 @@ \ No newline at end of file + \ No newline at end of file diff --git a/site/content/images/logos/yelp.svg b/site/content/images/logos/yelp.svg index 86e286460d32c..def39d52d7e89 100644 --- a/site/content/images/logos/yelp.svg +++ b/site/content/images/logos/yelp.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/site/content/pages/ai-gateway.md b/site/content/pages/ai-gateway.md new file mode 100644 index 0000000000000..c8d5556fd0870 --- /dev/null +++ b/site/content/pages/ai-gateway.md @@ -0,0 +1,12 @@ +--- +title: Envoy AI Gateway +slug: ai-gateway +template: project +id: ai-gateway +--- + +### What is Envoy AI Gateway? + +Envoy AI Gateway is a control plane that expands on Envoy Gateway's capabilities to provide a simple and powerful way to configure Envoy Proxy for GenAI traffic. + +It is designed to be a lightweight, easy-to-use, and scalable control plane that can be used to configure Envoy Proxy for handling GenAI traffic. diff --git a/site/content/pages/community.html b/site/content/pages/community.html deleted file mode 100644 index 729a7fea55ff2..0000000000000 --- a/site/content/pages/community.html +++ /dev/null @@ -1,67 +0,0 @@ -{% extends "content.html" %} -{% set active_page = "community" %} - -{% block content %} -
- The Envoy development process is an open process. Here are the general communication channels we use to communicate. -
-Envoy works with the wider community to create a strong, vibrant codebase. There are a variety of - projects and organizations built on top of Envoy. We will list them below in alphabetical order: -
- -{{ project.description }}
-- Learn More - {% if project.github %} - | - Github - {% endif %} -
-
{{ resource.description }}
-- Sign up for the free course › - {% if resource.github %} - | - Github - {% endif %} -
-
- {{ hero.headline }} -
-- {{ reason }} -
- {% endfor %} -- {{ feature.description }} -
-- "{{ quote.text }}" -
-- {{ quote.author }} - {{ quote.role }} -
-
- We are a
- Cloud Native Computing Foundation
- graduated project.
+{% extends "base.html" %}
+{% import 'macros/general.html' as general %}
+{% import 'macros/project.html' as project %}
+
+{% block banner %}
+
+ Connect your applications and APIs with scale and resiliency using Envoy.
+ Manage traffic, everywhere
+
+
+ The Envoy project provides solutions to control, secure, and observe API and application traffic. +
+ + +
+
+ +{{ quote.text }}
+ + +{% endmacro %} + + +{% macro quote_section(quotes) %} ++ {% for quote_data in quotes %} + {{ quote(quote_data) }} + {% endfor %} + +{% endmacro %} + + +{% macro link(link, text, class="") %} + + {{ text }} + +{% endmacro %} + + +{% macro link_list(links, title="", class="quick-links") %} +{% if title %} +{{ title }}
+{% endif %} ++ {% for text, url in links.items() %} +
+{% endmacro %} + + +{% macro button(text, url) %} +{{ link(url, text, "btn") }} +{% endmacro %} + + +{% macro github_icon() %} +- + {{ link(url, text) }} +
+ {% endfor %} ++{% endmacro %} + +{% macro star_icon() %} + +{% endmacro %} + +{% macro slack_icon() %} + +{% endmacro %} diff --git a/site/theme/templates/macros/page.html b/site/theme/templates/macros/page.html new file mode 100644 index 0000000000000..c9d70333e08ef --- /dev/null +++ b/site/theme/templates/macros/page.html @@ -0,0 +1,59 @@ +{% import 'macros/general.html' as general %} + + +{% macro footer_links() %} +
Quick Links
+ +{% endmacro %} + + +{% macro footer_socials(socials) %} +{{ general.link_list(socials, "Social media") }} +{% endmacro %} + + +{% macro footer_projects(projects) %} +{% set project_dict = {} %} +{% for project in projects.values() | sort(attribute="project.weight") %} +{% set _ = project_dict.update({project.project.short_name: "/" + project.project.id}) %} +{% endfor %} +{{ general.link_list(project_dict, "Envoy Projects") }} +{% endmacro %} + + +{% macro footer_slack() %} ++ Join us on Slack +
+ +++{% endmacro %} + + +{% macro footer_ip() %} ++ 2025 © Envoy project authors. All rights reserved.
+
+ The Linux Foundation has registered trademarks and uses trademarks. ++ For a list of trademarks of The Linux Foundation, please see our Trademark Usage page. +
+{% endmacro %} diff --git a/site/theme/templates/macros/project.html b/site/theme/templates/macros/project.html new file mode 100644 index 0000000000000..214255defaaa3 --- /dev/null +++ b/site/theme/templates/macros/project.html @@ -0,0 +1,292 @@ +{% import 'macros/general.html' as general %} + + + +{% macro render_quote(quote) %} +++{% endmacro %} + + +{% macro quotes_section(section_class, heading, quotes) %} ++++ {{ quote.content | safe }} ++ ++ {% if heading %} + + + {% endif %} +{{ heading }}
++ {% if quotes is sequence and quotes|length > 1 %} ++ +{% endmacro %} + + + +{% macro feature(project, order_mod_2) %} ++ {% for quote in quotes %} + {{ render_quote(quote) }} + {% endfor %} ++ {% else %} + {{ render_quote(quotes[0] if quotes is sequence else quotes) }} + {% endif %} +++{%- endmacro %} + + + + +{% macro project_links(project) %} ++++++
++++{{ project.name }}
++ {{ github(project) }} + + + View docs + +++ {{ project.description | safe }} ++ + Learn more + ++ {{ github(project) }} + + + View Docs + ++{% endmacro %} + + +{% macro project_link_buttons(project) %} +{{ general.button("View on GitHub", "https://github.com/envoyproxy/" + project["github"] + project.get("github_path", "")) }} +{{ general.button("Documentation", project.docs ) }} +{% endmacro %} + + +{% macro github(project, class="") %} + + {{ general.github_icon() }} + {% if project.show_stars %} + {{ general.star_icon() }} + Loading... + {% else %} + View on GitHub + {% endif %} + +{% endmacro %} + + + + +{% macro render_project_header(project) %} ++ +{% endmacro %} + + + +{% macro capabilities_section(section_class, heading, capabilities) %} ++ ++{{ project.name }}
+ {% for line in project.description.strip("\n").split("\n") %} + {% if line.strip() %} + {% if loop.index0 == 0 %} ++ {{ line | safe }} +
+ {% if project.show_stars %} + {{ github(project, "github-stats") }} + {% endif %} + {% else %} ++ {{ line | safe }} +
+ {% endif %} + {% endif %} + {% endfor %} + + + ++ +
+ +{% endmacro %} + + + + +{% macro adopters(companies) -%} ++ +{{ heading }}
++++ {% for capability in capabilities %} ++++ {% endfor %} ++ + {{ capability.title }} +
+{{ capability.description }}
+++ +Used By
+++ +{%- endmacro %} + + +{% macro docs_release_links(name, github_url, docs_url) %} ++ {% for company in companies %} ++++ {% endfor %} ++ {{ company.name }} + ++ +++ +
+ + {{ general.github_icon() }} + {{ name }} + + + + View Docs + +
+{% endmacro %} + + +{% macro docs_version(version, release, docs_base_url, latest=False) %} +{% if latest %} + +{% set docs_url %} +{{ docs_base_url }}{% if version != "Latest" %}v{% endif %}{{ release }}/ +{% endset %} ++ +{% else %} + +{% endif %} +{% endmacro %} + + +{% macro docs_version_expand(releases) %} +{% if releases | length > 1 %} ++ v{{ version }} + {{ release }} + {% if stable %}Stable{% endif %} + ++ {{ docs_release_links(release, "https://github.com/envoyproxy/envoy/releases/tag/v" + release, docs_url) }} +++ + Previous releases + +{% else %} +No previous releases +{% endif %} +{% endmacro %} + + +{% macro docs_grid(project, versions, docs_base_url, stable) %} ++ {% for version_group in versions %} +
+{% endmacro %} + + +{% macro docs_version_section(project, page, id, section, versions, stable) -%} +- +
+ {% endfor %} ++ {% for release in version_group.releases %} + {% if loop.first %} + {{ docs_version(version_group.version, release, docs_base_url, True) }} + {{ docs_version_expand(version_group.releases) }} + {% else %} + {{ docs_version(version_group.version, release, docs_base_url) }} + {% endif %} + {% endfor %} +
++ +{% endmacro %} + + +{% macro docs(versions, page, project) -%} +{% for id, section in page.sections.items() %} +{% if id == "latest" %} +{{ docs_version_section(project, page, id, section, (versions | selectattr("title", "equalto", "Stable versions") | first).versions[:1], true) }} +{% elif id == "stable" %} +{{ docs_version_section(project, page, id, section, (versions | selectattr("title", "equalto", section.title) | first).versions[1:], true) }} +{% else %} +{{ docs_version_section(project, page, id, section, (versions | selectattr("title", "equalto", section.title) | first).versions, false) }} +{% endif %} +{% endfor %} +{% endmacro %} diff --git a/site/theme/templates/nav.html b/site/theme/templates/nav.html deleted file mode 100644 index 982950164dfde..0000000000000 --- a/site/theme/templates/nav.html +++ /dev/null @@ -1,21 +0,0 @@ -+ + + {{ docs_grid(project, versions, page.docs_base_url, stable) }} +{{ section.title }}
+{{ section.description }}
+-diff --git a/site/theme/templates/project.html b/site/theme/templates/project.html new file mode 100644 index 0000000000000..02c7324eaefbe --- /dev/null +++ b/site/theme/templates/project.html @@ -0,0 +1,36 @@ +{% extends "base.html" %} +{% import 'macros/general.html' as general %} +{% import 'macros/project.html' as project %} +{% set body_class = "project-page" %} + +{% block content %} + +{{ project.render_project_header(PROJECTS[page.id].project) }} + +- {% if active_page != 'home' and show_logo != 'no' %} - --- - {% endif %} -
- --+ + +{% if PROJECTS[page.id].project.capabilities %} +{{ project.capabilities_section('section-purple', 'Capabilities', PROJECTS[page.id].project.capabilities) }} +{% endif %} + +{% if PROJECTS[page.id].quotes %} +{{ general.quote_section(PROJECTS[page.id].quotes) }} +{% endif %} + +{% if PROJECTS[page.id].adopters %} + +{{ PROJECTS[page.id].adopters }} + +{{ project.adopters(PROJECTS[page.id].adopters) }} +{% endif %} + +{% endblock %} diff --git a/versions.bzl b/versions.bzl index b41dcefcb9cf8..e343264c68971 100644 --- a/versions.bzl +++ b/versions.bzl @@ -32,10 +32,10 @@ VERSIONS = { "envoy_toolshed": { "type": "github_archive", "repo": "envoyproxy/toolshed", - "version": "0.2.3", - "sha256": "4727b896c51fccaeda1210ef8b2da567b1964e3f4f888f6e0d2bdabd63cd61bc", - "urls": ["https://github.com/{repo}/archive/bazel-v{version}.tar.gz"], + "version": "69811f5334a92c6c89730e79f08c0d9575195ee6", + "sha256": "7f687ed9bb8211b0277c6c3abb3f454daf0240dd2aa99948b08c4b819416a407", + "urls": ["https://github.com/{repo}/archive/{version}.tar.gz"], "patch_args": ["-p1"], - "strip_prefix": "toolshed-bazel-v{version}/bazel", + "strip_prefix": "toolshed-{version}/bazel", }, }+ +About
++++ {{ page.content }} ++