Tutorial uv Python: Dependency Manager 10x Lebih Cepat dari Pip
AW
Axel W

Dipublikasikan 27 Juni 2026

Tutorial uv Python: Dependency Manager 10x Lebih Cepat dari Pip

Mengelola dependency di Python seringkali terasa lambat, terutama saat working directory sudah besar dan requirements.txt mulai berantakan. Tim Astral, yang sebelumnya membuat Ruff, meluncurkan uv: package manager yang ditulis dalam Rust dan diklaim 10-100x lebih cepat dari pip. Artikel ini akan membahas cara instalasi, setup project, serta workflow harian menggunakan uv.

Kenapa Harus Beralih ke uv?

uv bukan sekadar package installer. Ia menggantikan beberapa tools sekaligus: pip, pip-tools, pipx, poetry, pyenv, virtualenv, dan twine. Dengan single binary, kamu bisa install Python version, buat virtual environment, resolve dependency, hingga publish package ke PyPI. Keunggulan utamanya adalah universal lockfile yang memastikan environment konsisten di semua platform.

Prasyarat

  • Sistem operasi Linux, macOS, atau Windows

  • Terminal atau command prompt

  • Koneksi internet

Langkah 1: Instalasi uv

Untuk Linux dan macOS, jalankan perintah berikut di terminal:

curl -LsSf https://astral.sh/uv/install.sh | sh

Setelah instalasi selesai, restart terminal dan verifikasi dengan:

uv --version

Jika output menampilkan versi, uv sudah siap digunakan.

Langkah 2: Inisialisasi Project

Buat direktori baru dan inisialisasi project Python:

mkdir myproject && cd myproject
uv init

Perintah uv init akan menghasilkan file pyproject.toml dan direktori .venv secara otomatis. Kamu tidak perlu lagi menjalankan python -m venv secara manual.

Langkah 3: Menambahkan Dependency

Tambahkan library yang dibutuhkan menggunakan perintah uv add:

uv add requests numpy pandas

uv akan otomatis mengupdate pyproject.toml, meng-resolve versi kompatibel, dan membuat file uv.lock. File lock ini berfungsi seperti package-lock.json di Node.js, memastikan setiap anggota tim mendapatkan dependency yang identik.

Langkah 4: Menjalankan Script

Tidak perlu mengaktifkan virtual environment secara manual. Cukup gunakan uv run:

uv run python main.py

uv akan otomatis mendeteksi Python interpreter dari .venv dan menjalankan script di dalamnya. Untuk menjalankan tool CLI seperti pytest atau black, gunakan:

uv run pytest tests/
uv run black src/

Langkah 5: Sinkronisasi Environment

Ketika berkolaborasi dengan tim, rekanmu hanya perlu menjalankan:

uv sync

Perintah ini akan membaca uv.lock dan menginstall dependency dengan versi yang persis sama. Tidak ada lagi masalah "works on my machine" karena perbedaan versi library.

Tips Migrasi dari Pip dan Poetry

Jika kamu memiliki project lama dengan requirements.txt, uv bisa mengimport dependency secara otomatis:

uv pip install -r requirements.txt

Untuk project Poetry, uv mendukung konversi dari poetry.lock meskipun beberapa edge case mungkin memerlukan penyesuaian manual. Dokumentasi resmi Astral menyediakan migration guide lengkap.

Kesimpulan

uv mengubah cara developer Python mengelola dependency dengan pendekatan yang unified dan sangat cepat. Dari instalasi, inisialisasi project, penambahan library, hingga sinkronisasi tim, semua bisa dilakukan dengan satu tool. Bagi developer Indonesia yang ingin meningkatkan produktivitas, beralih ke uv adalah investasi waktu yang sangat worth it.