Peluncuran editor teks kaya Quill v2
(quilljs.com)- Quill 2.0 adalah editor WYSIWYG open source gratis untuk web modern, yang memungkinkan fitur pengeditan teks kaya disematkan langsung ke dalam produk
- Berdasarkan arsitektur modular dan API yang ekspresif, Anda dapat memulai dari inti dasar lalu menyesuaikan editor sesuai kebutuhan
- Pengembang dapat mengakses konten, perubahan, dan event editor secara terperinci, dan dapat mengharapkan perilaku yang konsisten dengan penggunaan JSON untuk input dan output
- Mendukung browser terbaru di desktop, tablet, dan ponsel, serta bertujuan memberikan perilaku dan HTML hasil yang sama di seluruh platform
- Dapat diterapkan mulai dari proyek kecil hingga perusahaan Fortune 500, sehingga cocok untuk memulai dengan editor sederhana lalu berkembang seiring pertumbuhan produk
Quill 2.0 dan cara memulainya
- Quill 2.0 telah dirilis, dan detail rilisnya dapat dilihat di posting pengumuman terpisah: Quill 2.0 is released!
- Quill adalah editor WYSIWYG open source gratis yang dibuat untuk web modern
- Repositori open source: slab/quill
- Dokumentasi: Documentation
- Contoh dasar membuat editor dengan memuat
quill.snow.cssdanquill.jsdari CDN lalu menjalankannew Quill('#editor', ...)- Versi contoh adalah
quill@2.0.3 modules.toolbarmenetapkan#toolbardanthememenggunakansnow
- Versi contoh adalah
- Anda dapat langsung menguji API di konsol pengembang browser
Kustomisasi dan cakupan penerapan
- Quill dapat disesuaikan dengan kebutuhan melalui arsitektur modular dan API
- Dokumentasi modul: modular architecture
- Dokumentasi API: API
- Pengembang dapat mengakses konten, perubahan, dan event editor secara terperinci melalui API yang sederhana
- Baik input maupun output menggunakan JSON untuk memberikan perilaku yang konsisten dan deterministik
- Mendukung browser terbaru di desktop, tablet, dan ponsel, serta memberikan perilaku yang sama dan HTML hasil yang konsisten antarplatform
- Dapat digunakan baik di proyek kecil maupun perusahaan Fortune 500, dimulai dari Quill core lalu disesuaikan atau diperluas sesuai kebutuhan
- Jumlah GitHub Star tercantum sebagai 47,204
1 komentar
Komentar Hacker News
Di tempat kerja sebelumnya, saya pernah membuat sistem tempat pengguna memasukkan teks berformat ke kotak teks Quill, lalu menyimpannya ke database dalam format Delta
Belakangan, anggota tim lain mengambil konten itu ke plugin InDesign, membaca format yang diterapkan di Quill, lalu menerapkannya kembali sebagai style di sisi InDesign
Alurnya adalah staf front office memasukkan pengumuman hukum untuk koran, lalu tim produksi meneruskan pekerjaan siap cetak ke InDesign. Jika kami menyimpan HTML seperti kebanyakan editor, pekerjaan ini akan jauh lebih sulit, tetapi format Quill Delta membuatnya jauh lebih mudah
Sudah beberapa tahun saya tidak mendengar atau memakai Quill, jadi senang melihatnya masih hidup
Catatan rilis: https://github.com/quilljs/quill/releases/tag/v2.0.0
Tulisan pengumuman: https://slab.com/blog/announcing-quill-2-0/
Saya cukup banyak memakai Quill; integrasinya mudah, format JSON Delta juga cukup bagus, dan strukturnya cenderung sederhana
Namun setiap kali memakainya, saya terpikir, “Apa sebaiknya pakai ProseMirror saja?”
Saat butuh fitur penyuntingan dengan cepat, Quill adalah solusi sementara yang bagus, tetapi ketika kebutuhan fitur itu makin besar, saya terus menghitung di kepala bahwa suatu saat akan perlu rencana migrasi
Di sisi lain, kadang saya bertanya-tanya mengapa editor teks berformat tidak bisa distandardisasi
[1] https://slab.com/blog/announcing-quill-2-0/
Namun benar-benar pindah terasa berat, dan saya penasaran dengan pengalaman orang lain
Alasannya adalah sifatnya yang sangat low-level dan dokumentasinya yang luas; rasanya sedikit mengingatkan pada D3
Setelah itu kami membuat node kustom, command kustom, toolbar kustom, mengintegrasikannya dengan Markdown dan plugin Markdown kustom, dan dengan sedikit glue code, ia juga cukup rapi dipasangkan dengan Vue
Sejauh ini saya sangat puas dengan pilihan menggunakan ProseMirror
Saya tidak tahu apakah aneh kalau saya punya pendapat yang terlalu kuat tentang bagaimana tombol Return seharusnya ditangani di editor teks
Dalam teks biasa, Return adalah baris baru; dalam teks berformat, Return seharusnya paragraf baru
Kalau ingin baris baru, gunakan Shift+Return
Di versi lama ini masalah besar, dan saya tidak tahu sekarang perilaku ini bisa dikustomisasi sejauh apa
Saya mengakui terlalu memedulikan hal ini, tetapi TipTap cocok untuk saya
Karena itu bukan perilaku yang lebih umum, dan hanya terjadi saat menekan Return pada jenis blok tertentu
Shift+Return juga tidak bisa dipakai di mobile, dan menjengkelkan kalau harus tahu kombinasi tombol tersembunyi untuk mendapatkan perilaku yang diinginkan
Editor berformat Reddit bekerja seperti ini, jadi saya sering bertengkar dengannya
Pada akhirnya, itu hanya demi membuat pengguna tidak perlu menekan Return dua kali
Saya paham kerapian dari selalu menjaga pengguna tetap di dalam paragraf dan membiarkan mereka secara eksplisit memilih ganti baris dengan Shift+Return, tetapi di ranah yang rumit seperti editor teks berformat, saya akan memprioritaskan pengalaman pengguna daripada kerapian
Penanganan paragraf di contoh Quill terlihat janggal
Dokumentasinya bagus. Akan menyenangkan jika semua proyek open source punya halaman seperti “Why Quill”[1], karena itu membantu cepat memahami filosofi proyek dan apakah sesuai dengan tujuan saya
Lebih bagus lagi kalau ada semacam “Why Not Quill”, sehingga kita bisa cepat tahu dalam situasi apa ia tidak cocok
Semua proyek punya trade-off, jadi menyampaikannya secara langsung dan jelas akan memberi pengguna pengalaman yang lebih baik
[1] https://quilljs.com/docs/why-quill
Dari tautannya saja tidak jelas, tetapi sepertinya ini muncul karena v2 dirilis 3 hari lalu
Sampai belum lama ini saya mengerjakan Quill v1, dan itu cukup tidak menyenangkan
Membuat tabel bekerja dengan plugin juga menyakitkan, dan ada masalah scrolling yang aneh
Saya berharap v2 memperbaiki banyak hal, tetapi dari sisi fitur saya akan terus memakai TinyMCE yang lebih baik
Namun saya kesal karena meskipun situs memakai JS statis, tetap perlu API key, dan beberapa hari lalu mereka juga dengan cepat mengurangi “penggunaan” rendering editor di tier gratis, yang terasa merepotkan [0]
Saya penasaran apakah itu tidak menjadi masalah
[0] https://news.ycombinator.com/item?id=40044544
Awalnya saya tidak mengerti mengapa Quill muncul lagi, tetapi sekarang saya tahu bahwa versi 2.0 yang sudah lama ditunggu dirilis 3 hari lalu
Lihat https://slab.com/blog/announcing-quill-2-0/
Saya pernah sangat terkena masalah di proyek lama karena menggunakan Quill
Secara pribadi, masalahnya adalah kami tidak cukup meninjau batasan editor dibandingkan kebutuhan proyek, tetapi cara dokumentasi menekankan ekstensibilitas library juga tampak bisa menimbulkan kerugian
Jika tetap berada dalam batasannya, ini library yang bagus. Misalnya, sebaiknya hindari hal-hal yang terlalu rumit seperti konten bertingkat
Akan cukup membantu kalau di situs web ada bagian seperti “Why You Should NOT Use Quill?”
Tergantung kasusnya, tetapi saya tidak berniat memakai Quill lagi di proyek produksi
Saya mulai memakai Quill 1.x sekitar 2016 dan awalnya cukup menyukainya
Ketika saya men-tweet bahwa saya sedang mengevaluasi Quill, Jason lebih dulu menghubungi saya, dan juga membantu menjawab pertanyaan terkait implementasi
Pada 2019 saya mengalami beberapa bug, Quill 1.x berada dalam mode maintenance, dan 2.0 praktis tidak punya dokumentasi [1]
Saya menghubungi Jason di Twitter untuk mendapatkan gambaran jadwal [2], tetapi pada dasarnya mendapat jawaban seperti disuruh enyah
Perusahaannya, Slab, sekarang juga memblokir saya di Twitter, meski mungkin itu sebenarnya dimaksudkan untuk memblokir dari akun pribadinya
Kalau sedang membangun startup, siapa pun bisa punya hari-hari penuh stres, jadi mungkin waktu saya menghubunginya memang kurang tepat
Dugaan saya, ia sedang berfokus pada perusahaannya sendiri, dan meski masih punya sedikit waktu untuk mempertahankan Quill demi penggunaan internal, hampir tidak ada kelonggaran untuk merilisnya sebagai open source. Kalau memang begitu, saya berharap ia mengatakannya dengan jujur saja
Lima tahun kemudian Quill v2 akhirnya keluar, dan saya senang Slab masih bertahan
Saya berharap ke depannya mereka punya kapasitas untuk memelihara Quill secara publik, tetapi jika ingin memakainya di produksi, sebaiknya pastikan seberapa besar komitmen dukungannya, dan siapkan juga rencana kalau respons terhenti
Jika Jason ada di thread ini, tidak ada perasaan buruk; itu sudah lewat. Silakan abaikan atau tambahkan sudut pandang Anda
[1] https://github.com/quilljs/quill/issues/2435
[2] https://twitter.com/nickbaum/status/1177240103925796865
Yang membuatnya lebih menjengkelkan, alasan memakai library editor rich text alih-alih membuat sendiri justru untuk menghindari hal seperti itu
Saya tidak tahu v2, tetapi struktur kode v1 tidak terlalu tertata dengan baik
Ada juga fitur-fitur dasar yang implementasinya saya tunda karena takut muncul sejuta bug kecil
Hal terbaik dari Quill jelas adalah format Delta
Namun untuk siapa pun yang menginginkan lebih dari sekadar bold/underline/italic, saya akan merekomendasikan ProseMirror
Tulisan terkait. Apakah ada lagi?
Announcing Quill 1.0 - https://news.ycombinator.com/item?id=12437345 - September 2016, 82 komentar
Quill – A cross browser rich text editor with an API - https://news.ycombinator.com/item?id=10446865 - Oktober 2015, 47 komentar
Quill – An Open Source Rich Text Editor with an API - https://news.ycombinator.com/item?id=7716376 - Mei 2014, 60 komentar
Saya ingat pernah memakai https://github.com/facebook/lexical di sebuah proyek sekitar setahun lalu, dan sebagian besar langsung bekerja dengan baik
Apakah ada alasan untuk lebih memilih Quill?