{"adoption": {"forks": 64, "observed_at": "2026-08-28T04:05:18.337020+00:00", "stars": 1660}, "canonical_url": "https://ross.abutalabs.com/products/armor", "card": {"archived": false, "artifact_type": "service", "description": "Uncomplicated, modern HTTP server", "domain": ["web-development", "backend", "networking", "self-hosted"], "enriched": true, "function": ["http-server", "proxy", "routing", "middleware"], "health_score": 20, "homepage": "https://armor.labstack.com", "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["labstack/armor"], "name": "labstack/armor", "platform": ["windows", "go", "cross-platform"], "pushed_at": "2020-09-10T03:10:37+00:00", "repo": "labstack/armor", "stars": 1660, "tags": ["http2", "letsencrypt", "reverse-proxy", "tls", "websocket", "gzip", "cors", "virtual-hosts", "load-balancing", "linux", "macos"], "topics": ["armor", "http", "server", "http2", "letsencrypt", "load-balancer", "https", "http-proxy"], "urls": [], "use_cases": ["serve a website with automatic https certificates", "reverse proxy http and websocket requests", "host multiple sites on one server with virtual hosts", "redirect http to https and handle www redirects", "serve static files with gzip compression", "add security headers like hsts and csp to responses"], "what_it_is": "Armor is a modern HTTP server and reverse proxy written in Go, supporting HTTP/2, automatic Let's Encrypt TLS certificates, WebSocket proxying, and virtual hosts with path-level routing. Its functionality is built on a plugin interface, making custom extensions straightforward.", "when_to_avoid": ["you need an actively maintained project - the last release was in 2020", "you need battle-tested production proxying - Caddy or nginx are safer choices", "you need advanced load balancing or service mesh features"], "when_to_choose": ["you want a simple Go-based web server with automatic Let's Encrypt TLS", "you need lightweight reverse proxying with virtual host routing", "you want an extensible plugin-based HTTP server"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/armor", "repo": "labstack/armor", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:18.337020+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:44:40.681314+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8fbce22520b46e77afbb7a8505c9cce8a31dbaca639e672923b4200a26339555", "fetched_at": "2026-08-28T04:05:18.337020+00:00", "kind": "readme", "missing": false, "url": "https://github.com/labstack/armor"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3879, "days_push": 2183, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}