
Saat mulai belajar Python, menginstal library menggunakan pip install memang terasa mudah. Tinggal ketik satu perintah, tunggu beberapa detik, lalu library siap digunakan.
Namun, pernahkah kamu berpikir apa yang terjadi jika suatu saat proyek tersebut dijalankan di komputer lain? Atau ketika temanmu ingin mencoba proyek yang sama? Apakah mereka harus menginstal semua library satu per satu?
Untungnya, Python memiliki solusi sederhana untuk masalah ini, yaitu requirements.txt. File ini berisi daftar library beserta versinya sehingga siapa pun dapat menginstal seluruh dependensi proyek hanya dengan satu perintah. Selain membuat proyek lebih rapi, penggunaan requirements.txt juga membantu mengurangi error akibat perbedaan versi package.
π Apa yang akan kamu pelajari di artikel ini:
- Apa itu requirements.txt
- Mengapa file ini penting
- Cara membuatnya
- Cara menggunakannya
- Kesalahan yang sering dilakukan pemula
Yuk, kita mulai! π
Apa Itu requirements.txt?
requirements.txt adalah file teks yang berisi daftar library Python beserta versinya yang digunakan dalam sebuah proyek. Misalnya:
pandas==2.3.1
numpy==2.3.2
matplotlib==3.10.5
scikit-learn==1.7.1Ketika file tersebut digunakan, Python akan menginstal semua package yang tercantum tanpa perlu mengetiknya satu per satu.
π‘ Sederhananya: requirements.txt adalah daftar βbahanβ yang dibutuhkan agar proyek Python dapat berjalan dengan benar.
Mengapa requirements.txt Penting?
Banyak pemula melewatkan file ini karena proyek mereka masih sederhana. Padahal, hampir semua proyek Python profesional selalu menyertakan requirements.txt. Berikut alasannya.
1. Instalasi Library Menjadi Lebih Mudah
Bayangkan sebuah proyek membutuhkan beberapa library. Tanpa requirements.txt, kamu harus menginstalnya satu per satu.
pip install pandas
pip install numpy
pip install matplotlib
pip install seabornTentu hal ini cukup merepotkan. Sebaliknya, jika proyek memiliki requirements.txt, cukup jalankan:
pip install -r requirements.txtDalam satu perintah saja, semua library akan terinstal secara otomatis.
2. Menghindari Error Akibat Perbedaan Versi
Versi library Python terus diperbarui. Kadang sebuah program berjalan dengan baik di komputer A, tetapi mengalami error di komputer B karena menggunakan versi package yang berbeda. Contohnya:
pandas==2.3.1Dengan mencantumkan nomor versi, semua orang akan menggunakan package yang sama sehingga hasilnya lebih konsisten.
3. Mempermudah Kolaborasi
Jika proyek disimpan di GitHub, orang lain tidak perlu lagi bertanya library apa saja yang digunakan. Mereka cukup menjalankan:
git clone repository
pip install -r requirements.txtBeberapa menit kemudian, proyek sudah siap dijalankan.
4. Membuat Proyek Terlihat Lebih Profesional
Repository yang memiliki dokumentasi lengkap biasanya juga menyertakan requirements.txt. File sederhana ini menunjukkan bahwa proyek dikelola dengan baik dan siap digunakan oleh orang lain.
Cara Membuat requirements.txt
Ada dua cara yang paling umum digunakan.
Cara 1: Membuat Secara Manual
Buat file baru dengan nama requirements.txt, kemudian isi dengan daftar package yang dibutuhkan.
pandas==2.3.1
numpy==2.3.2
matplotlib==3.10.5Cara ini cocok jika proyek masih kecil dan hanya menggunakan beberapa library.
Cara 2: Menggunakan pip freeze
Ini adalah cara yang paling sering digunakan oleh developer. Jalankan perintah berikut:
pip freeze > requirements.txtPython akan membuat daftar seluruh package yang sedang terinstal. Contohnya:
matplotlib==3.10.5
numpy==2.3.2
pandas==2.3.1
python-dateutil==2.9.0
pytz==2025.2
scipy==1.16.1
six==1.17.0
tzdata==2025.2Setelah itu, file tersebut dapat langsung disimpan bersama proyek.
π‘ Tips: Jalankan pip freeze saat virtual environment aktif agar hanya package yang digunakan proyek yang masuk ke dalam requirements.txt.
Cara Menginstal Library dari requirements.txt
Jika sebuah proyek sudah memiliki file requirements.txt, proses instalasi menjadi sangat mudah. Cukup jalankan:
pip install -r requirements.txtPython akan membaca isi file tersebut, lalu menginstal seluruh library secara otomatis. Tidak perlu lagi mengingat atau mengetik nama package satu per satu.
Contoh Struktur Proyek Python
Berikut contoh struktur proyek yang rapi.
data-analysis-project/ β βββ data/ βββ notebooks/ βββ scripts/ βββ images/ βββ requirements.txt βββ README.md βββ .gitignore
Dengan struktur seperti ini, proyek akan lebih mudah dipahami, baik oleh diri sendiri maupun oleh orang lain yang ingin berkontribusi.
Kapan requirements.txt Sebaiknya Dibuat?
Sebaiknya file ini dibuat sejak awal proyek, terutama jika:
- Proyek akan diunggah ke GitHub.
- Proyek akan dipindahkan ke komputer lain.
- Kamu bekerja dalam tim.
- Menggunakan virtual environment.
- Ingin menyimpan daftar package yang digunakan.
Semakin cepat dibuat, semakin mudah proyek dikelola.
Tips Menggunakan requirements.txt
Agar file tetap rapi dan mudah digunakan, biasakan melakukan beberapa hal berikut.
- β Selalu gunakan virtual environment.
- β Perbarui file setiap kali menambahkan library baru.
- β
Simpan
requirements.txtdi folder utama proyek. - β Jangan menghapus nomor versi package tanpa alasan.
- β Commit file tersebut bersama source code ke GitHub.
Kebiasaan kecil ini akan membuat workflow pengembangan menjadi jauh lebih nyaman.
Kesalahan yang Sering Dilakukan Pemula
Belajar dari kesalahan orang lain tentu lebih baik daripada mengalaminya sendiri. Berikut beberapa kesalahan yang paling sering terjadi.
β Tidak Menggunakan Virtual Environment
Jika menjalankan pip freeze tanpa virtual environment, semua package yang ada di komputer akan ikut tercatat. Akibatnya, requirements.txt menjadi penuh dengan library yang sebenarnya tidak digunakan oleh proyek.
β Lupa Memperbarui requirements.txt
Misalnya kamu baru saja menginstal library baru.
pip install requestsJangan lupa memperbarui file:
pip freeze > requirements.txtJika langkah ini dilewatkan, orang lain bisa mengalami error karena package tersebut tidak tercantum.
β Tidak Menuliskan Versi Package
| β Kurang disarankan | β Lebih baik |
|---|---|
pandas | pandas==2.3.1 |
numpy | numpy==2.3.2 |
matplotlib | matplotlib==3.10.5 |
Dengan begitu, semua orang menggunakan versi library yang sama sehingga kemungkinan munculnya bug menjadi lebih kecil.
Hubungan requirements.txt dengan Virtual Environment
requirements.txt dan virtual environment adalah dua hal yang saling melengkapi. Virtual environment bertugas mengisolasi package untuk setiap proyek. Sementara itu, requirements.txt menyimpan daftar package yang ada di dalam virtual environment tersebut.
Alur kerja yang umum digunakan adalah sebagai berikut.
Buat virtual environment
python -m venv .venvAktifkan virtual environment
# Linux atau macOS
source .venv/bin/activate
# Windows
.venv\Scripts\activateInstal library yang dibutuhkan
pip install pandas matplotlib numpySimpan daftar package
pip freeze > requirements.txtKetika proyek dipindahkan ke komputer lain, cukup buat virtual environment baru, aktifkan, lalu jalankan pip install -r requirements.txt. Dengan cara ini, lingkungan pengembangan akan sama persis seperti pada komputer sebelumnya.
Kesimpulan
Walaupun hanya berupa file teks sederhana, requirements.txt merupakan bagian penting dari setiap proyek Python. File ini memudahkan proses instalasi library, menjaga konsistensi versi package, serta mempermudah kolaborasi ketika proyek dibagikan melalui GitHub atau dijalankan di komputer lain.
Mulailah membiasakan menggunakan requirements.txt sejak proyek pertamamu. Kebiasaan sederhana ini akan membuat proyek lebih rapi, lebih profesional, dan jauh lebih mudah dikelola di masa depan. π
FAQ Singkat
Apakah requirements.txt wajib ada di setiap proyek Python?
Tidak wajib secara teknis, tetapi sangat disarankan. Begitu proyek dibagikan atau dipindahkan, file ini akan sangat menghemat waktu.
Di mana file requirements.txt sebaiknya disimpan?
Di folder utama (root) proyek, sejajar dengan README.md, agar mudah ditemukan.
Haruskah folder .venv ikut di-commit ke GitHub?
Tidak. Masukkan .venv/ ke dalam .gitignore, dan cukup commit requirements.txt saja.