{"adoption": {"forks": 717, "observed_at": "2026-08-28T04:08:16.082627+00:00", "stars": 3746}, "canonical_url": "https://ross.abutalabs.com/products/ddev", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Docker-based local PHP+Node.js web development environments", "domain": ["developer-tools", "web-development", "self-hosted"], "enriched": true, "function": ["developer-tools", "cli", "container-runtime", "deployment", "configuration-management"], "health_score": 100, "homepage": "https://ddev.com", "language": "Go", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["ddev/ddev"], "name": "ddev/ddev", "platform": ["windows", "cli", "cross-platform"], "pushed_at": "2026-08-26T21:22:32+00:00", "repo": "ddev/ddev", "stars": 3746, "tags": ["local-development", "docker-compose", "php", "nodejs", "drupal", "wordpress", "laravel", "typo3", "magento", "wsl2", "development-environment", "containers", "command-line", "macos", "linux", "docker"], "topics": ["drupal", "wordpress", "development", "docker", "macos", "linux", "windows", "typo3", "php", "mariadb", "local-development", "ddev", "magento", "magento2", "laravel", "backdrop", "craftcms", "moodle", "nodejs"], "urls": [], "use_cases": ["set up a local WordPress development environment in minutes", "run multiple PHP projects locally at the same time with isolated containers", "share a consistent dev environment config with my team via Git", "spin up a local Drupal site without installing PHP and MySQL on my machine", "develop Laravel apps on Windows with WSL2", "test my site against different PHP versions locally", "get a local TYPO3 or Magento development stack quickly"], "what_it_is": "DDEV is an open-source CLI tool that provisions Docker-based local development environments for PHP and Node.js web projects with sensible defaults and no Docker expertise required. It supports per-project configuration for PHP versions, web servers, and databases, and is committed to Git so teams share identical environments.", "when_to_avoid": ["you develop non-web software (native apps, Python data science, Go services) with no PHP/Node web stack", "you need production hosting or orchestration rather than local development", "you already have a mature custom Docker Compose setup your team prefers", "you cannot run Docker on your machine"], "when_to_choose": ["you build PHP or Node.js web applications (especially Drupal, WordPress, Laravel, TYPO3, Magento, Craft CMS)", "you want reproducible, shareable local environments without learning Docker internals", "you need to run many projects concurrently with per-project PHP/database/webserver settings", "you work across macOS, Windows/WSL2, Linux, or Codespaces and want the same workflow everywhere"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ddev", "repo": "ddev/ddev", "role": "main", "score": 93}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "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:08:16.082627+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:16.082627+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:29:02.692171+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f9a5d935f39c804a0290184888b727453749616ba984c058502b0f359fa314", "fetched_at": "2026-08-28T04:08:16.082627+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ddev/ddev"}, {"content_hash": "b4d5ee6f25cbf4b570220e26b5e35bdb850f887069e6d7c215c02bd83484c71a", "fetched_at": "2026-08-29T09:24:15.968246+00:00", "kind": "homepage", "missing": false, "url": "https://ddev.com"}, {"content_hash": "706994a592394414d813451c03d1e60e264991fbea872e70316832cfabe993a1", "fetched_at": "2026-08-29T09:24:15.981858+00:00", "kind": "site_page", "missing": false, "url": "https://ddev.com/about"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 80}, "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": 3500, "days_push": 7, "days_rel": 58, "gap_med": 44, "n_releases_24m": 16}, "score": 93, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}