viv
viv is to Composer what uv was to pip: a Rust reimplementation that
installs from composer.lock and writes the vendor/ directory Composer
would write, byte for byte.
Try it
cargo binstall --git https://github.com/svandragt/vivace vivace
viv install # in a project with composer.json and composer.lock
That also installs a composer shim next to viv; put it first on PATH
and your existing scripts run through viv unedited. Prebuilt binaries and
build-from-source instructions are on the releases
page.
The numbers
A cold laravel/laravel install (109 packages, no cache, no vendor/)
takes 0.30s with viv against Composer's 1.58s.
source: bench/results/corpus.md (2026-09-15)
The compatibility sweep finds a byte-identical vendor/ on 10/10
pinned projects viv installs (Laravel, Symfony, Drupal, WordPress Bedrock and
more).
source: compat/results/v0.13.0.md
Plugins other than the shipped adapters and Composer's long tail of commands
stay with Composer; see docs/stability.md
for exactly what is and isn't covered.
Latest posts
- viv 0.11.0, and a two-word deletion 2026-09-14