htmx memulai hidup sebagai intercooler.jsperpustakaan yang dibangun di sekitar jQuery yang menambahkan perilaku berdasarkan atribut HTML.
Bagi pengembang yang belum mengetahuinya, jQuery adalah pustaka JavaScript terkemuka yang membuat penulisan JavaScript lintas platform jauh lebih mudah pada saat implementasi browser sangat tidak konsisten, dan JavaScript tidak memiliki banyak API dan fitur yang mudah digunakan seperti sekarang.
Saat ini banyak pengembang web menganggap jQuery sebagai “perangkat lunak lama.” Dengan segala hormat terhadap perspektif ini, jQuery saat ini digunakan 75% dari semua situs web publikangka yang mengerdilkan semua alat JavaScript lainnya.
Mengapa jQuery tetap ada di mana-mana?
Berikut tiga alasan teknis yang kami yakini berkontribusi terhadap keberhasilan berkelanjutannya:
- Sangat mudah untuk menambahkan ke proyek (hanya satu tautan bebas ketergantungan)
- Ia telah mempertahankan API yang sangat konsisten, sebagian besar tetap kompatibel selama masa pakainya (intercooler.js bekerja dengan jQuery v1, v2 dan v3)
- Sebagai perpustakaan, Anda dapat menggunakannya sebanyak atau sesedikit yang Anda suka: perpustakaan tidak mengganggu dan tidak menentukan struktur aplikasi Anda
Tentu saja, itu adalah pernyataan yang konyol (dan arogan), tetapi itu adalah sebuah pernyataan yang tidak masuk akal ideal yang kami perjuangkan di tim htmx.
Secara khusus, kami ingin meniru karakteristik teknis jQuery yang menjadikannya tambahan yang berbiaya rendah dan bernilai tinggi pada perangkat pengembang web. Alex telah berdiskusi “Membangun Layanan Web 100 Tahun” dan kami ingin htmx menjadi alat yang berguna untuk kasus penggunaan tersebut.
Situs web yang dibuat dengan jQuery tetap online untuk waktu yang sangat lama, dan situs web yang dibuat dengan htmx seharusnya mampu melakukan hal yang sama (atau lebih baik).
Kedepannya htmx akan dikembangkan dengan nya yang ada dalam pikiran pengguna.
Jika Anda sudah menjadi pengguna htmx—atau sedang berpikir untuk menjadi pengguna htmx—inilah maksudnya.
Stabilitas sebagai Fitur
Kami akan bekerja untuk memastikan bahwa htmx sangat stabil di API & implementasi. Ini berarti menerima dan mendokumentasikan kekhasan penerapan saat ini.
Seseorang yang memutakhirkan htmx (bahkan dari 1.x ke 2.x) harus mengharapkan semuanya terus berfungsi seperti sebelumnya.
Jika diperlukan, kami dapat menambahkan opsi konfigurasi yang lebih baik, namun kami tidak akan mengubah defaultnya.
Tidak Ada Fitur Baru sebagai Fitur
Kami akan semakin cenderung untuk tidak menerima fitur-fitur baru yang diusulkan di inti perpustakaan.
Orang tidak perlu merasakan tekanan untuk mengupgrade htmx dari waktu ke waktu kecuali ada bug tertentu yang ingin mereka perbaiki, dan mereka harus merasa nyaman bahwa htmx yang mereka tulis pada tahun 2025 akan terlihat sangat mirip dengan htmx yang mereka tulis pada tahun 2035 dan seterusnya.
Kami akan mempertimbangkan fitur inti baru ketika fitur browser baru tersedia, misalnya kami sudah menggunakan versi eksperimental moveBefore()
API pada browser yang didukung.
Namun, kami berharap sebagian besar fungsi baru dapat dieksplorasi dan disampaikan melalui API ekstensi htmx, dan akan berupaya membuat API ekstensi lebih mampu jika diperlukan.
Rilis Triwulanan
Jadwal rilis kami kira-kira setiap triwulan ke depan.
Tidak akan ada peningkatan death march yang terkait dengan htmx, dan tidak ada alasan untuk memantau rilis htmx untuk perubahan fungsionalitas besar, seperti halnya dengan jQuery. Jika htmx 1.x berfungsi dengan baik untuk Anda, tidak ada alasan untuk merasa perlu pindah ke 2.x.
htmx tidak bertujuan untuk menjadi solusi total untuk membangun aplikasi dan layanan web: itu menggeneralisasi kontrol hypermediadan itu kira-kira saja.
Ini berarti bahwa cara yang sangat penting untuk meningkatkan htmx – dan cara yang masih memiliki banyak pekerjaan tersisa – adalah dengan membantu meningkatkan alat dan teknik yang digunakan orang-orang. bersamaan dengan htmx.
Melakukan hal itu membuat htmx jauh lebih berguna tanpa perubahan apa pun pada htmx itu sendiri.
Alat Tambahan Pendukung
Meskipun htmx memberi Anda beberapa alat baru dalam HTML Anda, htmx tidak memiliki opini tentang aspek penting lainnya dalam membangun situs web Anda. Fitur andalan htmx adalah ia tidak menentukan backend atau database apa yang Anda gunakan.
htmx kompatibel dengan banyak backend, dan kami ingin membantu membuat pengembangan berbasis hypermedia berfungsi lebih baik untuk semuanya.
Salah satu bagian dari ekosistem hypermedia yang telah dibantu oleh htmx untuk ditingkatkan adalah mesin template. Ketika kami pertama kali menulis tentang bagaimana “fragmen templat” membuat pendefinisian penggantian sebagian halaman menjadi lebih sederhana, ini adalah fitur yang relatif langka di mesin templat.
Tidak hanya fragmen yang jauh lebih umum sekarang, esai itu pun demikian sering dikutip
sebagai inspirasi untuk membangun fitur tersebut.
Ada banyak cara lain untuk meningkatkan pengalaman menulis aplikasi berbasis hypermedia, dan kami akan tetap berdedikasi untuk mengidentifikasi dan mempromosikan upaya tersebut.
Penulisan, Penelitian, dan Standardisasi
Meskipun htmx tidak akan berubah secara dramatis di masa mendatang, kami akan terus menyebarkan ide-ide hypermedia dengan penuh semangat.
Secara khusus, kami mencoba untuk mendorong ide-idenya dari htmx ke dalam standar HTML itu sendiri, melalui Proyek triptych. Di dunia yang ideal, fungsionalitas htmx menghilang ke dalam platform web itu sendiri.
kode htmx ditulis Hari ini tentu saja akan terus berfungsi selamanya, namun dalam jangka panjang mungkin tidak perlu menyertakan perpustakaan untuk mencapai pola UI serupa melalui hypermedia.
Di akhir dokumen intercoolerkami mengatakan ini:
Banyak proyek javascript diperbarui dengan kecepatan yang memusingkan. Intercooler tidak.
Hal ini bukan karena sudah mati, namun karena (sebagian besar) benar: ide dasarnya sudah benar, dan setidaknya implementasinya sudah cukup tepat.
Ini berarti tidak akan ada aktivitas dan churn yang konstan pada proyek, melainkan a penatalayanan hubungan: tujuan utamanya sekarang adalah untuk tidak mengacaukannya. Dokumentasi akan ditingkatkan, pengujian akan ditambahkan, fitur deklaratif kecil baru akan ditambahkan, tetapi tidak akan ada penulisan ulang besar-besaran atau pembaruan terus-menerus. Hal ini berbeda dengan industri perangkat lunak pada umumnya dan dunia front-end pada khususnya, yang memiliki tingkat churn yang lucu.
Intercooler adalah alat yang kokoh dan andal untuk pengembangan web.
Mengesampingkan snark di akhir paragraf ketigapemikiran ini sangat berlaku untuk htmx. Bahkan, mungkin lebih dari itu karena htmx adalah perangkat lunak yang berdiri sendiri, memanfaatkan pengalaman (dan kesalahan) intercooler.js.
Kami berharap melihat htmx, dengan cara kecilnya, bergabung dengan raksasa seperti jQuery sebagai alat yang kokoh dan andal untuk membangun layanan web 100 tahun Anda.
>