Pada episode ini kita akan memasang AriaNg sebagai dashboard berbasis browser, menghubungkannya ke daemon RPC lengkap dengan token, serta mengintegrasikan ekstensi browser agar klik download diarahkan ke aria2.

Di episode 15 kalian berbicara dengan daemon RPC lewat curl dan jq — presisi, tapi tidak ramah untuk operasi harian. Manajemen belasan download lewat terminal memang memuaskan, tapi kalau ada dashboard yang menampilkan semuanya dalam satu layar, mengapa tidak? Episode 16 membawa aria2 ke browser: AriaNg sebagai antarmuka web, dan ekstensi browser yang mengirim download langsung ke daemon.
Yang perlu diingat sepanjang episode ini: semua alat yang kita pasang hanyalah klien RPC. Mereka tidak menggantikan daemon, tidak mengubah cara kerja aria2, dan tidak membebaskan kalian dari aturan keamanan episode 14 — mereka hanya memberi wajah yang lebih manusiawi pada bahasa JSON-RPC yang sudah kalian kuasai.
AriaNg adalah aplikasi web single-page yang ringan: semua kode berjalan di browser, dan ia berbicara dengan daemon langsung lewat JSON-RPC. Tidak ada server aplikasi, tidak ada database, tidak ada proses tambahan di belakang — hanya satu kumpulan file statis yang bisa dibuka di mana saja. Ini desain yang elegan: aria2 tetap menjadi satu-satunya proses yang berjalan, AriaNg hanya jendela untuk melihatnya.
AriaNg didistribusikan sebagai arsip zip dari rilis resminya (mayswind/AriaNg). Pasang di direktori mana pun, lalu sajikan sebagai file statis:
mkdir -p ~/ariang && cd ~/ariang
curl -L -o ariang.zip \
https://github.com/mayswind/AriaNg/releases/download/1.3.7/AriaNg-1.3.7.zip
unzip ariang.zip
python3 -m http.server 8080Setelah perintah di atas berjalan, buka browser ke http://127.0.0.1:8080 — AriaNg tampil tanpa instalasi tambahan. Perhatikan bahwa python3 -m http.server hanyalah penyaji file statis; ini bisa diganti server apa pun yang bisa menyajikan file, termasuk nginx di mesin produksi.
AriaNg belum tahu di mana daemon kalian berada. Di antarmuka AriaNg, buka Settings → RPC, lalu isi tiga hal:
127.0.0.1 (atau alamat mesin tempat daemon berjalan).6800, port standar daemon RPC.r4h4s1a-panjang-acak-123 yang sama persis dengan --rpc-secret daemon.Simpan pengaturan itu, dan AriaNg menyimpannya di localStorage browser — setiap kali dibuka kembali, ia langsung tersambung. Kalau daemon memakai token, jangan lupa mengisinya; tanpa token, semua request ditolak (ingat episode 14).
Sebelum membuka AriaNg, cek dulu bahwa endpoint RPC hidup dan token diterima — satu perintah curl sudah cukup:
curl -s http://127.0.0.1:6800/jsonrpc \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":"cek","method":"aria2.getVersion","params":["token:rahasia-panjang-acak"]}' \
| jq '.result.version'Jika respons menampilkan versi aria2, sambungan sehat dan AriaNg akan langsung berfungsi. Jika ditolak, penyebabnya biasanya satu dari tiga: daemon tidak berjalan, port bukan 6800, atau token tidak sama persis dengan --rpc-secret — urutan debugging yang sama seperti di episode 15. aria2.getVersion adalah method paling ringan untuk menguji sambungan: tidak mengubah apa pun, hanya membalas identitas daemon.
Tip
AriaNg dan ekstensi browser bukan dua pintu berbeda — keduanya klien RPC yang memakai satu token yang sama. Sekali kalian memakai --rpc-secret, semua alat yang terhubung harus membawa token yang identik, atau mereka semua akan ditolak dengan pesan error yang sama.
Dengan sambungan aktif, AriaNg menjadi pusat kendali:
aria2.addUri ke daemon — persis request yang kalian kirim manual di episode 15..torrent atau tempel magnet link; daemon menangani BitTorrent seperti di episode 10.aria2.pause dan aria2.remove.Yang menarik: tidak ada yang berubah di sisi daemon. AriaNg hanyalah pembungkus visual di atas method RPC yang sama — kalau kalian menguasai JSON-RPC, kalian sudah menguasai logika AriaNg.
Bagian paling praktis dari ekosistem ini: browser biasa mengunduh file lewat download manager internal yang terbatas. Dengan ekstensi seperti Download with Aria2 (Chrome dan Firefox) atau Aria2 Explorer (Firefox), satu klik kanan cukup untuk mengalihkan tautan ke daemon aria2 — lengkap dengan multi-connection, resume, dan kecepatan yang lebih baik.
Cara kerjanya sama dengan AriaNg: ekstensi adalah klien RPC di dalam browser. Ia membaca URL yang kalian klik, membungkusnya menjadi aria2.addUri, dan mengirim ke daemon. Browser tidak pernah mengunduh file; aria2 yang mengunduh, dan browser hanya menjadi pintu masuknya.
Setup-nya hampir identik dengan AriaNg. Di halaman opsi ekstensi, isi:
http://127.0.0.1:6800/jsonrpc.Setelah itu, klik kanan sebuah tautan dan pilih menu ekstensi (misalnya Send to Aria2). Download mulai muncul di daemon — dan di AriaNg — tanpa menyentuh download manager browser.
Warning
Jika daemon hanya mendengar di loopback, ekstensi hanya bekerja di mesin yang sama. Untuk mengarahkan download dari browser di laptop ke daemon di server, gunakan pola aman episode 14 — SSH tunnel atau HTTPS reverse proxy — jangan asal mengaktifkan --rpc-listen-all=true.
AriaNg bukan satu-satunya jendela. Karena bahasa yang dipakai adalah JSON-RPC (episode 15), klien apa pun yang bisa berbicara JSON-RPC bisa mengendalikan daemon yang sama. Beberapa yang populer:
| Klien | Bentuk | Catatan | | AriaNg | Web | Ringan, single-page, cukup file statis | | webui-aria2 | Web | UI berbasis web klasik, juga hanya file statis | | Motrix | Desktop | Aplikasi lintas platform yang membungkus aria2 |
Kesamaan mereka: semuanya klien, bukan server. Tidak satu pun menambah proses di sisi daemon — dan itulah kekuatan arsitektur RPC yang kita bangun sejak episode 3. Kalau kalian bisa mengganti antarmuka tanpa menyentuh daemon, kalian sedang memegang layanan yang matang.
Tampilan web yang cantik bisa membuat kita lupa bahwa di baliknya tetap ada port RPC. Tidak ada satu pun yang berubah dari episode 14: loopback lebih aman daripada semua interface, token panjang tetap wajib, dan port RPC tidak boleh terlihat oleh internet tanpa terowongan terenkripsi atau proxy HTTPS. AriaNg tidak menggantikan gerbang pengaman — ia hanya mengganti cara kita mengetuknya.
Episode 16 membawa aria2 ke dunia visual: memasang AriaNg sebagai dashboard berbasis browser, menghubungkannya ke daemon RPC lengkap dengan token, mengelola download lewat antarmuka yang ramah, serta mengintegrasikan ekstensi browser agar klik download diarahkan ke daemon.
Inti yang perlu diingat: semua alat frontend ini adalah klien RPC — wajah yang sama dari bahasa JSON-RPC yang sudah kalian kuasai. Satu token, satu daemon, dan kini banyak cara untuk berbicara dengannya.
Di episode 17 berikutnya kita menyetel mesinnya: performance & optimization — memilih angka yang tepat untuk koneksi paralel dan ukuran potongan, membatasi kecepatan agar sopan, serta mengelola sumber daya daemon yang ringan dan file allocation untuk mengurangi fragmentasi. Sampai jumpa!