Socket.IO — библиотека для двустороннего обмена событиями с низкой задержкой в реальном времени между клиентами и серверами.
share/sharedb
Бэкенд базы данных для JSON-документов с синхронизацией в реальном времени и совместным редактированием на основе Operational Transformation.
- Звёзды
- 6,562
- Форки
- 458
- Открытые issues
- 171
- Последний коммит
- позавчера
Что это?
ShareDB — бэкенд базы данных для JSON-документов, работающий в реальном времени и построенный на Operational Transformation (OT) — технологии, лежащей в основе многих редакторов для совместной работы. Клиенты редактируют документы через синхронный API, а изменения объединяются с правками других пользователей и распространяются среди всех подключённых клиентов с eventual consistency.
ShareDB работает с любой базой данных благодаря простой интеграции через адаптер. Он поддерживает подписки на запросы в реальном времени, проекции, ограничивающие набор отправляемых полей, а также middleware для контроля доступа и пользовательских расширений. Горизонтальное масштабирование возможно благодаря интеграции с pub/sub. Изменения, внесённые офлайн, синхронизируются после восстановления соединения; также доступны предыдущие версии документов.
ShareDB работает в браузерах и на сервере, а для модульного тестирования включает реализации базы данных и pub/sub в памяти. Это бэкенд для работы в реальном времени веб-фреймворка DerbyJS.
Ключевые возможности
- 01Синхронизация JSON-документов между клиентами в реальном времени
- 02Одновременное редактирование несколькими пользователями на основе Operational Transformation
- 03Подписки на запросы в реальном времени
- 04Проекции для выбора отдельных полей
- 05Middleware для контроля доступа и пользовательских расширений
- 06Синхронизация изменений после восстановления соединения
Сценарии использования
- Добавление функций совместного редактирования в веб-приложение
- Создание обновляемых в реальном времени дашбордов и таблиц лидеров для подключённых пользователей
- Добавление синхронизации в реальном времени поверх существующей базы данных
- Тестирование логики работы в реальном времени с помощью встроенных адаптеров в памяти
Что важно знать
- Лицензия не указана в метаданных (NOASSERTION), поэтому перед использованием проверьте лицензию репозитория.
Темы
Частые вопросы
- Что такое sharedb?
- Бэкенд базы данных для JSON-документов с синхронизацией в реальном времени и совместным редактированием на основе Operational Transformation. ShareDB — бэкенд базы данных для JSON-документов, работающий в реальном времени и построенный на Operational Transformation (OT) — технологии, лежащей в основе многих редакторов для совместной работы. Клиенты редактируют документы через синхронный API, а изменения объединяются с правками других пользователей и распространяются среди всех подключённых клиентов с eventual consistency.
- sharedb можно использовать бесплатно? Какая у него лицензия?
- sharedb распространяется с открытым исходным кодом под лицензией Other. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- sharedb всё ещё поддерживается?
- Активно поддерживается. Последний коммит в sharedb — 5 нояб. 2026 г..
- Для чего можно использовать sharedb?
- Добавление функций совместного редактирования в веб-приложение Создание обновляемых в реальном времени дашбордов и таблиц лидеров для подключённых пользователей Добавление синхронизации в реальном времени поверх существующей базы данных Тестирование логики работы в реальном времени с помощью встроенных адаптеров в памяти
- Где скачать sharedb?
- Исходный код и инструкции по установке — на GitHub: https://github.com/share/sharedb
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Open-source пространство для совместной работы: проводите ретроспективы, планирование спринтов, стендапы и анонимные опросы о состоянии команды в реальном времени.
Универсальный open-source-бэкенд на TypeScript со встроенными real-time-уведомлениями, хранением данных с расширенным поиском и управлением пользователями.
Авторитетный мультиплеерный фреймворк для Node.js с синхронизацией состояния, подбором игроков по комнатам и клиентскими SDK для web, Unity, Godot и других платформ.
Лёгкий сервер, который сохраняет и отдаёт данные о местоположении из мобильных приложений OwnTracks через MQTT или HTTP, без внешней базы данных.
Чат-сервер на uWebSockets.js — альтернатива XMPP с бэкендом на Node.js, MongoDB и Redis.