PageSourceSearch

https://protoconf.dev/assets/js/c87031d8.6721a810.js

js protoconf.dev collected 2026-10-06 16:49:59 UTC 11,854 bytes, 1 lines download raw bytes

1"use strict";(globalThis.webpackChunkprotoconf||=[]).push([[8307],{3792(e){e.exports=JSON.parse('{"version":{"pluginId":"default","version":"current","label":"v0.2.0","banner":null,"badge":true,"noIndex":false,"className":"docs-version-current","isLast":true,"docsSidebars":{"tutorialSidebar":[{"type":"link","href":"/docs/0.2.0/intro","label":"Introduction","docId":"intro","unlisted":false},{"type":"link","href":"/docs/0.2.0/whats-new-0.2.0","label":"What\'s New in v0.2.0","docId":"whats-new-0.2.0","unlisted":false},{"type":"link","href":"/docs/0.2.0/getting-started","label":"Getting Started","docId":"getting-started","unlisted":false},{"type":"link","href":"/docs/0.2.0/validation","label":"Configuration Validation","docId":"validation","unlisted":false},{"type":"link","href":"/docs/0.2.0/consume-config-updates","label":"Consuming Configuration Updates","docId":"consume-config-updates","unlisted":false},{"type":"category","label":"Advanced Usage","collapsible":true,"collapsed":true,"items":[{"type":"link","href":"/docs/0.2.0/advanced-usage/code-reuse","label":"Code Reuse","docId":"advanced-usage/code-reuse","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/multiple-outputs","label":"Multiple Outputs","docId":"advanced-usage/multiple-outputs","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/pipelining","label":"Pipelining","docId":"advanced-usage/pipelining","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/output-formats","label":"Generating YAML, JSON and TOML","docId":"advanced-usage/output-formats","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/modules","label":"Remote Modules","docId":"advanced-usage/modules","unlisted":false},{"type":"category","label":"Protoconf Mutation Service","collapsible":true,"collapsed":true,"items":[{"type":"link","href":"/docs/0.2.0/advanced-usage/mutation-service/mutation-cli","label":"Protoconf Mutation CLI","docId":"advanced-usage/mutation-service/mutation-cli","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/mutation-service/grpc","label":"Using gRPC","docId":"advanced-usage/mutation-service/grpc","unlisted":false}],"href":"/docs/0.2.0/advanced-usage/mutation-service/"},{"type":"link","href":"/docs/0.2.0/advanced-usage/formatting","label":"Formatting Starlark Sources","docId":"advanced-usage/formatting","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/protobuf-any","label":"Using google.protobuf.Any","docId":"advanced-usage/protobuf-any","unlisted":false},{"type":"link","href":"/docs/0.2.0/advanced-usage/starlib","label":"Standard Libraries","docId":"advanced-usage/starlib","unlisted":false}],"href":"/docs/0.2.0/category/advanced-usage"},{"type":"category","label":"Running in Production","collapsible":true,"collapsed":true,"items":[{"type":"link","href":"/docs/0.2.0/production/production-architecture","label":"Production Architecture","docId":"production/production-architecture","unlisted":false},{"type":"link","href":"/docs/0.2.0/production/inserting-configurations","label":"Inserting Configurations","docId":"production/inserting-configurations","unlisted":false},{"type":"link","href":"/docs/0.2.0/production/running-in-production","label":"Running the protoconf agent","docId":"production/running-in-production","unlisted":false},{"type":"link","href":"/docs/0.2.0/production/rollouts","label":"Staged Rollouts","docId":"production/rollouts","unlisted":false},{"type":"link","href":"/docs/0.2.0/production/observability","label":"Observability","docId":"production/observability","unlisted":false},{"type":"link","href":"/docs/0.2.0/production/kubernetes","label":"Running on Kubernetes","docId":"production/kubernetes","unlisted":false}]},{"type":"link","href":"/docs/0.2.0/cli-reference","label":"CLI Configuration Reference","docId":"cli-reference","unlisted":false},{"type":"category","label":"Integrations","collapsible":true,"collapsed":true,"items":[{"type":"link","href":"/docs/0.2.0/integrations/terraform","label":"Terraform","docId":"integrations/terraform","unlisted":false},{"type":"link","href":"/docs/0.2.0/integrations/envoy","label":"Envoy","docId":"integrations/envoy","unlisted":false}],"href":"/docs/0.2.0/category/integrations"},{"type":"category","label":"Use Cases","collapsible":true,"collapsed":true,"items":[{"type":"link","href":"/docs/0.2.0/use-cases/employee-directory","label":"Employee Directory as Code","docId":"use-cases/employee-directory","unlisted":false},{"type":"link","href":"/docs/0.2.0/use-cases/platform-engineering","label":"Protoconf for Platform Engineering","docId":"use-cases/platform-engineering","unlisted":false}],"href":"/docs/0.2.0/category/use-cases"}]},"docs":{"advanced-usage/code-reuse":{"id":"advanced-usage/code-reuse","title":"Code Reuse","description":"Reusing Functions and Variables Across Files","sidebar":"tutorialSidebar"}
1,"advanced-usage/formatting":{"id":"advanced-usage/formatting","title":"Formatting Starlark Sources","description":"protoconf fmt formats protoconf\'s Starlark sources the way gofmt formats","sidebar":"tutorialSidebar"},"advanced-usage/modules":{"id":"advanced-usage/modules","title":"Remote Modules","description":"A configuration repository rarely owns every schema it needs. Remote modules","sidebar":"tutorialSidebar"},"advanced-usage/multiple-outputs":{"id":"advanced-usage/multiple-outputs","title":"Multiple Outputs","description":"Generating Multiple Config Outputs","sidebar":"tutorialSidebar"},"advanced-usage/mutation-service/grpc":{"id":"advanced-usage/mutation-service/grpc","title":"Using gRPC","description":"1. Go","sidebar":"tutorialSidebar"},"advanced-usage/mutation-service/mutation-cli":{"id":"advanced-usage/mutation-service/mutation-cli","title":"Protoconf Mutation CLI","description":"The protoconf mutate command is a CLI utility that simplifies communication with the mutation server.","sidebar":"tutorialSidebar"},"advanced-usage/mutation-service/mutation-service":{"id":"advanced-usage/mutation-service/mutation-service","title":"Protoconf Mutation Service","description":"Protoconf offers an RPC service for programmatically mutating configurations, which is particularly useful for applications that need to adjust configurations dynamically.","sidebar":"tutorialSidebar"},"advanced-usage/output-formats":{"id":"advanced-usage/output-formats","title":"Generating YAML, JSON and TOML","description":"Protoconf has built-in support for generating YAML, JSON, and TOML configurations. This allows you to use Protoconf in environments that expect configurations in these formats, and to take advantage of the different strengths of each format.","sidebar":"tutorialSidebar"},"advanced-usage/pipelining":{"id":"advanced-usage/pipelining","title":"Pipelining","description":"Implementing Config Manipulation Pipelining","sidebar":"tutorialSidebar"},"advanced-usage/protobuf-any":{"id":"advanced-usage/protobuf-any","title":"Using google.protobuf.Any","description":"The google.protobuf.Any type is a powerful feature in Protocol Buffers that allows you to store arbitrary messages in your protobufs. It works by wrapping the message and embedding the name of the message\'s type. This allows the actual type of the embedded message to be discovered and the message to be correctly deserialized at runtime.","sidebar":"tutorialSidebar"},"advanced-usage/starlib":{"id":"advanced-usage/starlib","title":"Standard Libraries","description":"Starlib is a collection of modules for Starlark, the Python-like language used in Protoconf, Bazel, and other tools. These modules provide a standard library of useful functions that can be used in your Protoconf scripts.","sidebar":"tutorialSidebar"},"cli-reference":{"id":"cli-reference","title":"CLI Configuration Reference","description":"Every protoconf component is configured from a protobuf message, which means","sidebar":"tutorialSidebar"},"consume-config-updates":{"id":"consume-config-updates","title":"Consuming Configuration Updates","description":"protoconf provides a gRPC service that allows your application to subscribe to configuration updates. This service is provided by the protoconf agent, which can run in development mode and listen on 0.0.0.0:4300.","sidebar":"tutorialSidebar"},"getting-started":{"id":"getting-started","title":"Getting Started","description":"This guide will walk you through the installation of protoconf, creating a basic configuration, and running the protoconf compiler to generate the final configuration.","sidebar":"tutorialSidebar"},"integrations/envoy":{"id":"integrations/envoy","title":"Integrating Envoy with Protoconf","description":"Introduction","sidebar":"tutorialSidebar"},"integrations/terraform":{"id":"integrations/terraform","title":"Terraform","description":"Installation and Initialization","sidebar":"tutorialSidebar"},"intro":{"id":"intro","title":"Introduction","description":"protoconf is a configuration service based on Google\'s Protocol Buffers (Protobuf). It provides a structured, robust, and scalable solution for managing configurations across different services in a microservices environment.","sidebar":"tutorialSidebar"},"production/inserting-configurations":{"id":"production/inserting-configurations","title":"Inserting Configurations","description":"Once you have your configurations defined and validated, you can insert them into your key-value store using the protoconf insert command. This command enables protoconf to manage your configurations in a distributed manner, making them available to your applications wherever they are running.","sidebar":"tutorialSidebar"},"production/kubernetes":{"id":"production/kubernetes","title":"Running on Kubernetes","description":"configmaps is a key-value backend that stores materialized configs directly","sidebar":"tutorialSidebar"},"production/observability":{"id":"production/observability","title":"Observability","de
1scription":"The protoconf agent exposes Prometheus metrics out of the box and can export","sidebar":"tutorialSidebar"},"production/production-architecture":{"id":"production/production-architecture","title":"Production Architecture","description":"The production architecture of protoconf involves several components working together to provide dynamic, event-driven configuration management. This architecture is designed to support high availability, scalability, and real-time updates.","sidebar":"tutorialSidebar"},"production/rollouts":{"id":"production/rollouts","title":"Staged Rollouts","description":"A configuration change is a deploy. Staged rollouts let a config reach a small,","sidebar":"tutorialSidebar"},"production/running-in-production":{"id":"production/running-in-production","title":"Running the protoconf agent","description":"Running protoconf in a production environment requires careful consideration to ensure reliability, security, and ease of maintenance. This guide provides some best practices and recommendations for running protoconf in production.","sidebar":"tutorialSidebar"},"use-cases/employee-directory":{"id":"use-cases/employee-directory","title":"Employee Directory as Code","description":"Use Case: Centralized Employee Management","sidebar":"tutorialSidebar"},"use-cases/platform-engineering":{"id":"use-cases/platform-engineering","title":"Protoconf for Platform Engineering","description":"One of the challenges of platform engineering is coordinating between different","sidebar":"tutorialSidebar"},"validation":{"id":"validation","title":"Configuration Validation","description":"protoconf provides two ways to add validation rules to your configuration, and","sidebar":"tutorialSidebar"},"whats-new-0.2.0":{"id":"whats-new-0.2.0","title":"What\'s New in v0.2.0","description":"v0.2.0 is the first feature release since v0.1.7. It adds remote proto modules,","sidebar":"tutorialSidebar"}}}}')}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.