{"adoption": {"forks": 162, "observed_at": "2026-09-03T02:15:11.773805+00:00", "stars": 1295}, "canonical_url": "https://ross.abutalabs.com/products/ethibox-awesome-stacks", "card": {"archived": false, "artifact_type": "infra-config", "description": "Deploy 150+ open-source web apps with one Docker command", "domain": ["self-hosted", "cloud-computing"], "enriched": true, "function": ["deployment", "container-orchestration", "self-hosted", "developer-tools"], "health_score": 80, "homepage": "https://ethibox.fr", "language": "Dockerfile", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["ethibox/awesome-stacks"], "name": "ethibox/awesome-stacks", "platform": ["self-hosted"], "pushed_at": "2026-09-02T11:35:34+00:00", "repo": "ethibox/awesome-stacks", "stars": 1295, "tags": ["awesome-list", "docker-swarm", "traefik", "portainer", "lets-encrypt", "one-command-deploy", "app-templates", "devops", "containers", "docker", "linux"], "topics": ["docker", "traefik", "docker-swarm", "portainer", "awesome-list", "templates", "awesome", "zero-config", "letsencrypt", "devops"], "urls": [], "use_cases": ["deploy nextcloud with one docker command", "self-host open-source apps without configuration", "set up traefik with automatic letsencrypt certificates", "deploy apps to a docker swarm cluster", "use portainer app templates to install open-source software", "host my own alternatives to dropbox slack and trello"], "what_it_is": "A curated collection of Docker Swarm stack files that lets you deploy 150+ open-source web apps (Nextcloud, Ghost, etc.) with a single docker stack deploy command. It includes Traefik reverse proxy with automatic Let's Encrypt TLS and Portainer template support for zero-config self-hosting.", "when_to_avoid": ["you use plain Docker Compose or Kubernetes instead of Docker Swarm", "you need a full PaaS with UI, backups, and managed updates", "you need fine-grained orchestration beyond simple stack files"], "when_to_choose": ["you want zero-config one-command deployment of popular open-source web apps", "you already run Docker Swarm with Traefik", "you want customizable stacks via environment variables (domain, version, volume path)", "you use Portainer and want ready-made app templates"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ethibox-awesome-stacks", "repo": "ethibox/awesome-stacks", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-09-03T02:15:11.773805+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:54:04.515159+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7c90c2d712f56bc8353f88184a508f851fc7a815be7783bc7d87afddd578a5cc", "fetched_at": "2026-09-03T02:15:11.773805+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ethibox/awesome-stacks"}, {"content_hash": "2f29fbbea7899b10fd199f48ac1a072df5c2ab2cecda02808b404cb3615aa419", "fetched_at": "2026-08-29T12:10:55.383601+00:00", "kind": "homepage", "missing": false, "url": "https://ethibox.fr"}, {"content_hash": "8ae7bcf44f7fcbcc0ed48ba55fcd1479a52918c614b1c7f58711baaede32c631", "fetched_at": "2026-08-29T12:10:55.395590+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/about"}, {"content_hash": "0c42ddb8348d46ffde6e06934e12f11e2528ef05cbc42b8ab6f74c54c0df87e2", "fetched_at": "2026-08-29T12:10:55.393705+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/pricing"}, {"content_hash": "b68825a9916a60ab7e0b6d1e1ad3b182d556dcc79ce41f2d5559ea93aa6ecdb3", "fetched_at": "2026-08-29T12:10:55.397402+00:00", "kind": "site_page", "missing": false, "url": "https://ethibox.fr/faq"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 100, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2861, "days_push": 0, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 3, "stale_scrape": false}}