FlyEnv: Ulasan Mendalam Local Development Environment Manager
FlyEnv adalah aplikasi manajemen environment development lokal yang berjalan sebagai native binary di macOS, Windows, dan Linux. Proyek ini sebelumnya dikenal sebagai PHPWebStudy atau MacPHPStudy, dan telah berkembang jauh dari sekadar tool PHP menjadi solusi full-stack yang mendukung PHP, Node.js, Python, Go, Java, Ruby, hingga Rust.
Latar Belakang
Bagi developer yang sudah lama berkutat dengan XAMPP atau Docker, keduanya punya trade-off yang jelas: XAMPP sederhana tapi kaku (tidak bisa multi-versi PHP), sedangkan Docker fleksibel tapi berat dan membutuhkan waktu setup yang tidak sebentar.
FlyEnv mencoba mengisi celah ini dengan pendekatan yang berbeda — menjalankan layanan seperti Nginx, PHP, MySQL, dan Redis langsung sebagai native binary di OS host, bukan di dalam container. Tidak ada virtualisasi, tidak ada YAML, tidak ada Dockerfile.
Fitur yang Relevan untuk Laravel Developer
Multi-Version PHP
FlyEnv mendukung instalasi PHP dari versi 5.6 hingga 8.4+ secara bersamaan. Setiap project bisa dikonfigurasi menggunakan versi PHP masing-masing, dan perpindahan antar versi dilakukan lewat GUI tanpa perlu mengedit config secara manual.
Auto-Switch Per Project
Ini salah satu fitur paling praktis. Saat berpindah direktori project, FlyEnv otomatis mendeteksi dan mengaktifkan versi runtime yang sesuai — baik itu PHP, Node.js, maupun Python. Berguna sekali jika kamu menangani beberapa project sekaligus dengan kebutuhan versi yang berbeda.
cd /var/www/laravel-11-project # aktif: PHP 8.3
cd /var/www/legacy-codeigniter # aktif: PHP 7.4
Built-in DNS dan SSL Lokal
FlyEnv menyertakan DNS server internal sehingga domain lokal seperti myapp.test langsung bisa digunakan tanpa perlu mengedit /etc/hosts. SSL certificate lokal yang trusted juga di-generate otomatis, memungkinkan development dengan HTTPS sejak hari pertama.
# Contoh virtual host yang di-generate FlyEnv
server {
listen 443 ssl;
server_name myapp.test;
ssl_certificate /path/to/flyenv/certs/myapp.test.crt;
ssl_certificate_key /path/to/flyenv/certs/myapp.test.key;
root /var/www/myapp/public;
index index.php;
location ~ \.php$ {
fastcgi_pass unix:/var/run/php-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
}
}
Database Multi-Version
Seluruh database populer tersedia dan dapat dijalankan dalam beberapa versi berbeda secara bersamaan:
| Database | Multi-Version |
|---|---|
| MySQL | Ya |
| MariaDB | Ya |
| PostgreSQL | Ya |
| MongoDB | Ya |
| Redis | Ya |
| Memcached | Ya |
Email Testing dengan Mailpit
FlyEnv mengintegrasikan Mailpit sebagai mail catcher lokal. Email yang dikirim dari aplikasi (misalnya notifikasi atau reset password di Laravel) akan tertangkap di Mailpit dan bisa dilihat lewat web UI — tanpa dikirim ke inbox nyata.
// .env Laravel — cukup arahkan ke Mailpit
MAIL_MAILER=smtp
MAIL_HOST=127.0.0.1
MAIL_PORT=1025
MAIL_ENCRYPTION=null
Perbandingan dengan Alternatif Lain
| Aspek | XAMPP | Docker Desktop | Laragon | FlyEnv |
|---|---|---|---|---|
| Multi-version PHP | Tidak | Ya | Terbatas | Ya |
| Auto SSL lokal | Tidak | Manual | Ya | Ya |
| Memory usage (idle) | Rendah | 2–4 GB+ | Rendah | Rendah |
| Startup time | Cepat | 30–60 detik | Cepat | < 1 detik |
| macOS/Win/Linux | Partial | Ya | Win only | Ya |
| Open source & gratis | Ya | Gratis* | Ya | Ya |
*Docker Desktop gratis untuk personal, berbayar untuk enterprise.
Dari sisi performa, perbedaan paling signifikan terasa di mesin dengan RAM terbatas. Docker Desktop mengalokasikan VM tersendiri yang bisa memakan 2 GB RAM bahkan saat idle, sedangkan FlyEnv berjalan langsung di OS dengan overhead yang jauh lebih kecil.
Kekurangan yang Perlu Diperhatikan
FlyEnv bukan tanpa kekurangan. Karena ini proyek open source yang dikerjakan dengan tim sangat kecil, beberapa hal perlu dipertimbangkan:
- Bukan production parity penuh. Meskipun menggunakan binary yang sama dengan server Linux, environment lokal tetap tidak identik dengan container Docker yang bisa di-snapshot dan di-share ke seluruh tim.
- Tidak cocok untuk arsitektur microservices. Jika project kamu melibatkan banyak service yang saling bergantung (misal: service auth, service payment, API gateway), Docker Compose masih lebih tepat.
- Komunitas lebih kecil. Dibanding Docker atau XAMPP, jumlah resources, tutorial, dan dukungan komunitas FlyEnv masih terbatas.
- Dependensi pada maintainer tunggal. Berdasarkan diskusi di GitHub, proyek ini mayoritas dikelola satu orang, yang bisa jadi risiko jangka panjang.
Instalasi
macOS
brew install --cask flyenv
Atau download installer .dmg langsung dari macphpstudy.com.
Windows
Download installer .exe dari website resmi. Tidak ada dependensi tambahan yang perlu diinstall.
Linux
# Debian/Ubuntu
sudo apt install flyenv
# Fedora/RHEL
sudo dnf install flyenv
Kapan Sebaiknya Pakai FlyEnv
FlyEnv paling tepat digunakan dalam skenario berikut:
- Developer solo atau tim kecil yang mengelola banyak project PHP dengan versi berbeda
- Mesin dengan RAM terbatas di mana Docker terasa terlalu berat
- Setup cepat tanpa perlu belajar konsep container dan networking Docker
- Development project Laravel, WordPress, atau aplikasi PHP konvensional
Untuk tim besar dengan kebutuhan environment yang benar-benar identik di semua mesin developer, atau untuk arsitektur yang melibatkan banyak service, Docker tetap pilihan yang lebih solid.
Kesimpulan
FlyEnv adalah tool yang solid untuk kebutuhan local development sehari-hari, khususnya bagi PHP dan Laravel developer. Pendekatannya yang native membuat performa terasa ringan, sementara fitur seperti auto-switch versi dan SSL lokal otomatis menyelesaikan pain point nyata yang tidak ditangani XAMPP.
Ia bukan pengganti Docker untuk semua use case, tapi untuk development project web standar, FlyEnv menawarkan pengalaman yang lebih bersih dan lebih cepat dari kebanyakan alternatif yang ada.