# stefanprodan/podinfo

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/stefanprodan-podinfo).**

5,925 stars · 1,871 forks · Go · Apache-2.0

## Links

- GitHub: https://github.com/stefanprodan/podinfo
- awesome-repositories: https://awesome-repositories.com/repository/stefanprodan-podinfo.md

## Topics

`cuelang` `e2e-testing` `gitops` `golang` `helm` `kubernetes` `kustomize` `microservice`

## Description

Podinfo is a Go-based microservice template designed for Kubernetes, providing a standard pattern for building and testing containerised applications. It exposes REST endpoints for health checks, version information, and configuration, and supports environment-driven configuration for containerised deployment.

The project distinguishes itself with built-in capabilities for resilience testing, including fault injection middleware that can inject random errors, latency spikes, or status code mutations. It also offers JWT token-based authentication for stateless request validation, Prometheus metrics exposition for observability, and WebSocket real-time messaging for bidirectional communication testing. Redis-backed state caching with configurable TTL enables ephemeral key-value data storage for stateless horizontal scaling.

Additional capabilities include chunked HTTP response streaming to simulate progressive content delivery, custom metrics generation for monitoring systems, and Helm release automation with Flux for keeping deployments up to date. The project serves as a demonstration application for Kubernetes-native features, including service mesh integration and custom observability tooling.

## Tags

### Software Engineering & Architecture

- [Kubernetes Microservice Templates](https://awesome-repositories.com/f/software-engineering-architecture/enterprise-architectures/production-grade-templates/go-project-templates/kubernetes-microservice-templates.md) — Serves as the canonical Go microservice template for Kubernetes with health checks and configuration endpoints.
- [Templates](https://awesome-repositories.com/f/software-engineering-architecture/go-microservices-architectures/templates.md) — Defines a minimal Go HTTP server structure with standard middleware and health endpoints for Kubernetes deployment.

### DevOps & Infrastructure

- [Environment Variable Configuration](https://awesome-repositories.com/f/devops-infrastructure/configuration-management/environment-management/environment-variable-management/environment-variable-configurations/environment-variable-configuration.md) — Reads all runtime settings from environment variables with sensible defaults for containerised deployment.
- [Fault Injection Testing](https://awesome-repositories.com/f/devops-infrastructure/fault-tolerance/kernel-fault-injection/fault-injection-testing.md) — Injects random errors and latency on demand to test client-side resilience and circuit breakers. ([source](https://cdn.jsdelivr.net/gh/stefanprodan/podinfo@master/README.md))
- [Templates](https://awesome-repositories.com/f/devops-infrastructure/gpu-resource-orchestrators/kubernetes-orchestrators/microservice-orchestrations/templates.md) — Provides a template for building and testing a standard microservice on Kubernetes with health checks and configuration endpoints.
- [Demo Applications](https://awesome-repositories.com/f/devops-infrastructure/kubernetes-deployments/kubernetes-application-deployments/demo-applications.md) — Provides a sample application demonstrating Kubernetes-native features like custom metrics and Helm releases.
- [REST API Diagnostic Endpoint](https://awesome-repositories.com/f/devops-infrastructure/rest-api-endpoint-management/rest-api-diagnostic-endpoint.md) — Exposes REST endpoints for health checks, version info, and configuration as a standard microservice pattern. ([source](https://stefanprodan.github.io/podinfo))

### Web Development

- [Error Simulators](https://awesome-repositories.com/f/web-development/http-error-handling/error-simulators.md) — Triggers configurable error responses and latency spikes to test resilience and observability tooling. ([source](https://stefanprodan.github.io/podinfo))

### Part of an Awesome List

- [Application-Level Metrics](https://awesome-repositories.com/f/awesome-lists/data/metrics-and-monitoring/application-level-metrics.md) — Generates application-level metrics like request count and error rate for collection by monitoring systems.

### Security & Cryptography

- [JWT Authentications](https://awesome-repositories.com/f/security-cryptography/token-authentication/jwt-authentications.md) — Implements JWT token issuance and validation to demonstrate authentication flows in microservice architectures.

### System Administration & Monitoring

- [Prometheus-Formatted HTTP Endpoints](https://awesome-repositories.com/f/system-administration-monitoring/metrics-exporters/prometheus-formatted-http-endpoints.md) — Exposes application-level counters and histograms on a separate HTTP endpoint for Prometheus scraping.
- [Application Metrics Exporters](https://awesome-repositories.com/f/system-administration-monitoring/prometheus-exporters/prometheus-based-metric-exporters/prometheus-system-metrics-exporters/application-metrics-exporters.md) — Generates application-level metrics like request count and error rate for collection by monitoring systems. ([source](https://stefanprodan.github.io/podinfo))
