TrainRouter hadir sebagai peta interaktif tanpa biaya dan tanpa perlu mendaftar akun. Situs tersebut memuat 767 rute kereta api terkenal di 118 negara, mulai dari Glacier Express di Swiss hingga jalur Trans-Siberian di Rusia dan kereta malam baru yang menghubungkan kembali kota-kota Eropa. Setiap lintas menyajikan data jarak, waktu tempuh tercepat, kecepatan puncak, operator, jenis rangkaian, serta catatan singkat mengenai sejarahnya. Proyek ini dikerjakan sendirian oleh seorang pengembang yang menyebutnya sebagai upaya menyatukan informasi geografis dan narasi perjalanan.
Yang menarik dari TrainRouter bukan sekadar tampilan peta, melainkan seluruh sistem di belakangnya. Menjaga performa rendering ratusan rute, memastikan peta berbasis JavaScript terindeks mesin pencari dan crawler AI, serta mengubah keseluruhan data menjadi terbuka merupakan tantangan utama. Pendekatan yang diambil menunjukkan bahwa infrastruktur pemetaan gratis sudah cukup untuk produk berskala global.
Ide dasar proyek ini bermula dari satu daftar datar berisi rute kereta. Setiap rekam terdiri dari identitas, nama, stasiun awal dan akhir, kategori, operator, jarak dalam kilometer, kecepatan tertinggi, durasi, tahun pembukaan, jumlah penumpang per tahun, serta peringkat ketenaran. Kategori seperti high-speed, classic, night, dan scenic digunakan untuk pewarnaan garis di peta. Peringkat ketenaran menentukan rute mana yang muncul lebih dulu saat zoom keluar, sehingga Shinkansen atau Orient Express tidak tertutup rute cabang lokal.
Geometri rute dipisah dari atribut tersebut. Pengembang melacak sendiri titik koordinat lon/lat tiap jalur, lalu menghaluskan berkas dengan metode centripetal Catmull-Rom spline. Pemilihan varian centripetal krusial karena tidak mengalami overshoot pada tikungan tajam, misalnya pembalikan arah kereta di Chur yang dilalui Glacier Express. Spline naive justru akan membuat garis tampak seperti putaran melingkar yang menyesatkan.
Untuk menampilkan 767 rute di MapLibre GL JS dengan ubin vektor OpenFreeMap, strategi pembacaan visual diterapkan. Jalur yang berbagi koridor digeser secara paralel ala diagram transit agar tidak menumpuk menjadi corengan. Titik ujung rute diberi penanda kapsul, sementara stasiun pertukaran sibuk dideteksi melalui perhitungan arah rata-rata dan digambar sebagai bundaran rapi. Kombinasi ini membuat peta tetap bersih meski ratusan garis saling silang.
Dari sudut pandang Indonesia, proyek ini memberi contoh nyata pemanfaatan data terbuka untuk transportasi. Sistem kereta di Tanah Air seperti KRL Commuterline, KAI Bandara, LRT, dan kereta antarkota belum memiliki atlas interaktif publik yang memadukan data operasional dan narasi perjalanan. Padahal data jadwal serta rute sudah sebagian tersedia, namun tersebar dan jarang diolah menjadi produk ramah pengguna.
Kehadiran TrainRouter juga relevan dengan tantangan visibilitas konten teknologi lokal di mesin pencari. Banyak situs berbasis React atau framework JavaScript di Indonesia hanya menyajikan div kosong bagi crawler, sehingga konten tak terindeks. Metode prerender 1.500 halaman statis dengan JSON-LD yang diterapkan pengembang asing tersebut layak diadopsi pengembang web Indonesia agar produk mereka mudah ditemukan manusia maupun asisten AI.
Di sisi lain, biaya infrastruktur bukan halangan. MapLibre dan OpenFreeMap tidak mematok biaya per ubin dan tidak butuh kunci API berbayar. Sebuah VPS murah sudah cukup menjalankan peta interaktif sekelas TrainRouter. Hal ini membuka peluang komunitas developer Indonesia membuat peta serupa untuk moda transportasi lokal tanpa bergantung pada vendor komersial.
Sang pengembang menegaskan bahwa peta hanyalah demonstrasi, sedangkan data terstruktur dan halaman statis adalah produk sesungguhnya. “The map is the demo; the structured data and static pages are the product,” tulisnya dalam catatan teknis. Pandangan ini mengubah cara kita melihat aplikasi web: kerangka data lebih berharga ketimbang antarmuka semata.
Rekomendasi lain yang ia berikan ialah merilis data sejak hari pertama. TrainRouter menjadikan seluruh atlas sebagai dataset terbuka berlisensi CC BY 4.0 dalam format CSV, JSON, dan GeoJSON. Berkas tersebut diarsipkan di Zenodo dengan DOI, sekaligus dicerminkan ke Kaggle dan Hugging Face agar awet dan mudah diakses peneliti.
Langkah ke depan mencakup integrasi kecerdasan buatan lewat server MCP (Model Context Protocol). Dengan sekitar 200 baris kode, TrainRouter menyediakan endpoint jarak jauh gratis sehingga asisten seperti Claude dapat menjawab pertanyaan rute nyata, misalnya kereta malam dari Wina beserta durasinya. Pendekatan ini menunjukkan arah baru di mana data geospasial langsung dapat ditanya oleh model bahasa.
Ekspansi rute dan kontribusi komunitas diprediksi memperbesar atlas tersebut. Karena datanya terbuka, siapa pun dapat menambah lintas kereta di wilayahnya, termasuk Indonesia. Tren membuka data sekaligus menyajikannya dalam peta interaktif berbiaya nol akan makin lazim di kalangan pengembang independen, sejalan dengan semangat perangkat lunak bebas.