| .github/workflows | ||
| benchmarks | ||
| cmd/wppackages | ||
| deploy/ansible | ||
| docs | ||
| internal | ||
| migrations | ||
| scripts | ||
| test | ||
| .air.toml | ||
| .gitignore | ||
| .golangci.yml | ||
| CLAUDE.md | ||
| go.mod | ||
| go.sum | ||
| LICENSE.md | ||
| litestream.yml | ||
| Makefile | ||
| migrations.go | ||
| README.md | ||
| seeds.yaml | ||
| wppackages-linux-amd64 | ||
WP Packages
Manage your WordPress plugins and themes with Composer.
Support us
Roots is an independent open source org, supported only by developers like you. Your sponsorship funds WP Packages and the entire Roots ecosystem, and keeps them independent. Support us by purchasing Radicle or sponsoring us on GitHub — sponsors get access to our private Discord.
Sponsors
WP Packages vs WPackagist
| WP Packages | WPackagist | |
|---|---|---|
| Package naming | wp-plugin/* wp-theme/* |
wpackagist-plugin/* wpackagist-theme/* |
| Package metadata | Includes authors, description, homepage, and support links | Missing — requested since 2020 |
| Update frequency | Every 5 minutes | ~1.5 hours (estimated) |
Composer v2 metadata-url |
✅ | ❌ |
Composer v2 metadata-changes-url |
✅ | ❌ |
| Install statistics | ✅ | ❌ |
| Public status page | ✅ See status page | ❌ |
| Untagged plugin installs | Immutable — pinned to SVN revision | Mutable, resulting in unexpected plugin updates |
Composer resolve times
Cold resolve (no cache) — lower is better:
| Plugins | WP Packages | WPackagist | Speedup |
|---|---|---|---|
| 10 plugins | 0.7s | 12.3s | 17x faster |
| 20 plugins | 1.1s | 19.0s | 17x faster |
Documentation
See the documentation for usage instructions, example composer.json configurations, and more.
Roots WordPress Packages
Roots provides WordPress core as Composer packages — roots/wordpress, roots/wordpress-full, and roots/wordpress-no-content. Learn more.
Migrating from WPackagist
Use the migration script to automatically update your composer.json:
curl -sO https://raw.githubusercontent.com/roots/wp-packages/main/scripts/migrate-from-wpackagist.sh && bash migrate-from-wpackagist.sh
Community
- Join us on Discord by sponsoring us on GitHub
- Join us on Roots Discourse
- Follow @rootswp on Twitter
- Follow the Roots Blog
- Subscribe to the Roots Newsletter