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