Editor teks kolaboratif online berdasarkan sumber acara.
Contoh kerja dapat ditemukan di sini: https://text-sourcing.tomasz-rewak.com/
Deskripsi proyek yang lebih panjang dapat ditemukan di sini: https://blog.tomasz-rewak.com/text-sourcing/
Semuanya di sini ditulis dari awal: termasuk editor teks serta logika sumber acara di server dan sisi klien.
Editor teks ini memungkinkan banyak orang untuk mengedit file teks yang sama secara bersamaan. Semua pengguna harus bahkan dapat mengedit baris yang sama tanpa penurunan input.
Aplikasi ini tidak mengirim seluruh konten file antara pengguna setelah setiap perubahan dilakukan, tetapi hanya acara dasar. Berdasarkan peristiwa tersebut dan keadaan awal dokumen, setiap klien harus dapat menciptakan kembali keadaan dokumen saat ini. Manajemen acara tidak hanya terbatas pada transformasi negara sederhana. Sejarah acara juga digunakan untuk operasi undo/redo. Urutan peristiwa disinkronkan berdasarkan jam internal server sehingga dampak keterlambatan komunikasi dapat dinetralkan.
Proyek ini dibuat menggunakan JavaScript, socket.io (untuk komunikasi klinet-server) dan bereaksi (kerangka kerja frontend).
Itu hanya demo yang saya buat sebagai proyek hewan peliharaan. Tetapi jika Anda telah menemukan bug, tolong beri tahu saya.