Kolom Tekno

Mock Server Super Cepat di Rust, Tanpa Docker dan Konfigurasi

Ringkasan

  • Server mock OpenAPI berbasis Rust yang dimulai dalam milidetik, tanpa konfigurasi, dan menghasilkan data palsu dinamis sesuai skema, kini tersedia untuk pengembang.

Seorang pengembang telah meluncurkan **mock‑cli**, server mock OpenAPI berbasis Rust yang bisa dimulai dalam milidetik, tanpa konfigurasi, dan menghasilkan data palsu dinamis yang mematuhi skema. Alat ini hadir sebagai biner statis tunggal yang membaca spesifikasi OpenAPI 3.0 (YAML atau JSON) dan langsung menyajikannya melalui HTTP, sehingga pengembang bisa segera menguji integrasi tanpa kerumitan pengaturan lingkungan.

Mock‑cli dibangun dengan tiga crate Rust yang bersih: **crates/core** untuk transformasi data murni, **crates/server** yang menggunakan Axum sebagai lapisan HTTP, dan **crates/cli** yang memanfaatkan Clap untuk antarmuka baris perintah. Karena inti dari server tidak melakukan operasi I/O, kode ini mudah diuji dan dapat digunakan kembali. Biner yang dihasilkan bisa berjalan di macOS, Linux, dan Windows, baik di x64 maupun ARM64.

Kinerja alat ini sangat mengesankan. Cold start hanya membutuhkan waktu beberapa milidetik, jauh lebih cepat dibandingkan server mock berbasis JVM atau Node yang biasanya butuh waktu warmup. Tidak ada Docker yang perlu ditarik, tidak ada runtime eksternal, dan pengembang cukup menjalankan `mock‑cli swagger.yaml` untuk memulai layanan. Data palsu yang dihasilkan bersifat dinamis: setiap permintaan menghasilkan nilai yang berbeda namun tetap sesuai dengan format yang didefinisikan dalam skema, seperti email, UUID v4, enum, atau batasan array. Jika rute mengandung parameter jalur (misalnya `/pets/{petId}`), nilai dari URL akan disuntikkan ke dalam respons, sehingga `GET /pets/123` akan mengembalikan `{"petId": 123, ...}`.

Server ini mendukung semua metode HTTP (GET, POST, PUT, DELETE, PATCH, OPTIONS, HEAD, TRACE) dan secara otomatis memberikan kode status yang benar: 200 untuk sukses, 404 untuk jalur yang tidak dikenal, 405 untuk metode yang tidak diizinkan, dan 501 ketika tidak ada respons 200 yang didefinisikan. Fitur ini memastikan penanganan kesalahan pada klien benar-benar teruji. Pengguna bisa menginstal alat ini melalui npm (`npm install -g @mock-cli/server`), melalui Cargo (`cargo install --path crates/cli`), atau cukup menjalankan biner yang sudah dibuat (`cargo run --release -- examples/swagger.yaml`).

Ke depannya, pengembang berencana menambahkan fitur hot‑reload saat spesifikasi berubah, validasi permintaan berdasarkan skema, aturan faker khusus melalui konfigurasi, dan komposisi multi‑spesifikasi. Alasan utama memilih Rust adalah kemampuannya untuk menghasilkan biner statis tanpa ketergantungan runtime, serta kemampuan bahasa ini dalam memetakan model data tagged‑union yang kompleks seperti spesifikasi OpenAPI ke enum Rust.

Bagi ekosistem pengembangan perangkat lunak di Indonesia, alat seperti ini bisa menjadi solusi untuk mempercepat siklus pengembangan, terutama bagi startup dan tim yang ingin menghindari overhead Docker atau konfigurasi yang rumit. Minat terhadap Rust semakin meningkat di komunitas lokal, dan mock‑cli menawarkan cara praktis untuk memanfaatkan bahasa ini dalam alur kerja API‑first. Dengan dukungan untuk Rust 1.85+ dan lisensi MIT, alat ini terbuka untuk kontribusi dan penyesuaian, sehingga dapat mendorong adopsi lebih lanjut di kalangan pengembang Indonesia yang ingin membangun layanan mock yang cepat dan dapat diandalkan.

> “Saya ingin alat yang bisa dikirimkan sebagai biner tunggal tanpa ketergantungan runtime, dan OpenAPI adalah model data yang cocok untuk enum Rust.” – kata sang pengembang dalam dokumentasinya.

Ke depannya, server mock yang dingin menyala dalam milidetik dan tidak memerlukan konfigurasi akan semakin penting seiring dengan pertumbuhan pengembangan berbasis API. Di Indonesia, di mana banyak tim masih bergantung pada layanan mock manual atau solusi berbayar, kehadiran alat open‑source seperti mock‑cli dapat mempercepat proses pengembangan dan mengurangi biaya operasional.

Mengapa Ini Penting

Alat ini menawarkan solusi cepat dan ringan bagi pengembang Indonesia yang sering terjebak dalam overhead Docker atau konfigurasi server mock yang rumit. Dengan menghilangkan kebutuhan akan runtime eksternal dan konfigurasi, mock‑cli dapat mempercepat siklus pengembangan, mengurangi biaya operasional, dan mendorong penggunaan Rust—bahasa yang semakin populer di komunitas lokal. Kehadiran alat open‑source seperti ini dapat menjadi katalisator bagi startup dan tim pengembangan independen untuk mengadopsi praktik API‑first tanpa investasi infrastruktur yang besar.

Sumber Asli
Dev.to
Tanggal
15 Juli 2026
Waktu Baca
4 menit