Всем привет! Очень классную информацию принёс)



Недавно я прочитал классный пост из канала "Будни разработчика" (кстати, крутой канал) и узнал про существование CRDT. Очень меня воодушевила эта штука, но за делами я про неё просто забыл



А тут недавно разбирался на работе со всякими Wysiwyg редакторами и, оказалось, что за последние несколько лет инфраструктура совместного редактирования в js очень хорошо развилась, за счёт появления библиотеки Yjs



Yjs – это как раз реализация CRDT



Меня эта тема увлекла. Начал копаться в библиотеках около Yjs, и, оказалось, что есть несколько инструментов, которые позволяют буквально за 5 минут реализовать совместное редактирование в любом приложении, благодаря https://syncedstore.org/docs/



В общем, я выпал в осадок, как это круто. По сути, в любую форму вашего приложения вы уже сейчас можете добавить совместное редактирование. Просто заменив обычный стор на стор из этой библиотеки. Сервер писать не нужно, так как это работает на WebRTC + нужно лишь поднять готовый сигнальный сервер (Или не поднимать, из коробки работает с дефолтными сигнальными серверами)



В общем, на радостях сделал видео:

https://youtu.be/LBUgcjWLaDc



И, по-любому, запишу ещё несколько видео с развлекушками с этой библиотекой и созданием условной онлайн игры





Понятное дело, это в прод тащить нужно очень аккуратно. Но накладные расходы от использования этого решения настолько маленькие, что поэкспериментировать точно можно