--- id: pycrdt-websocket version: "0.16.4" license: MIT License Copyright (c) 2022 David Brochart Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to… (full text in the JSON record) license_treatment: permissive maintenance: active --- # pycrdt-websocket — WebSocket connector for pycrdt License: permissive · Maintenance: active · Downloads: 853.4K/mo ## What it is and what it does Pycrdt-websocket is a Python library for building WebSocket-based collaborative applications. It wraps the pycrdt CRDT library with async WebSocket transport, allowing multiple clients to connect to a server, each holding a local view of a shared document. The server maintains a room for each document, persisting updates to a store and broadcasting changes to all connected clients. The WebsocketProvider handles synchronization logic automatically, so developers focus on application logic rather than conflict resolution or network protocol details. The library is designed for real-time collaborative editing scenarios—think shared documents, whiteboards, or any multi-user application where eventual consistency and offline-first behavior are acceptable. It depends on anyio for async I/O portability, pycrdt for the core CRDT data structures, and pycrdt-store for persistence. The package is actively maintained, supports Python 3.10 through 3.14, and carries no known security vulnerabilities. Use it for: - Build a collaborative text editor where multiple users edit a document simultaneously with automatic conflict resolution. - Create a shared whiteboard or canvas application where drawing updates sync across all connected clients in real time. - Implement a multiplayer game or interactive application where game state is synchronized across players via WebSocket. - Build a note-taking or task-management app where changes persist and sync instantly to all open sessions. - Develop a collaborative spreadsheet or data-entry form where multiple users contribute to the same document concurrently. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Pycrdt-websocket provides an async WebSocket connector that synchronizes shared documents across multiple clients and a server using CRDT (Conflict-free Replicated Data Type) semantics. Yes. Pycrdt-websocket is actively maintained, has low install friction, carries no known vulnerabilities, and solves a specific and well-defined problem—WebSocket-based CRDT synchronization for collaborative applications. The MIT license is permissive. Install it if you are building a real-time multi-user application and want automatic conflict resolution without managing your own sync protocol. ## Install pip install pycrdt-websocket uv add pycrdt-websocket poetry add pycrdt-websocket ## Installing pycrdt-websocket Before you install: Low install friction with a pure-Python wheel and only three runtime dependencies (anyio, pycrdt, pycrdt-store). The package is actively maintained with a recent release and supports current Python versions. License in practice: MIT License permits unrestricted use, modification, and distribution in both open-source and commercial projects with minimal obligations—only attribution and inclusion of the license text are required. Quickstart: pip install pycrdt-websocket from pycrdt_websocket import WebsocketProvider from pycrdt import Doc # Client connects to WebSocket server at a room path provider = WebsocketProvider("ws://localhost/room-1", Doc()) Requires Python 3.10 or later; WebSocket server endpoint must be running and accessible. Verify before relying: - Whether pycrdt-store supports the persistence backends (file vs. database) you need - Performance characteristics under high client concurrency or large document sizes - Whether the package handles network reconnection and conflict resolution transparently ## Package facts - License: MIT License Copyright (c) 2022 David Brochart Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to… (full text in the JSON record) (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 853.4K/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags websocket crdt synchronization, collaborative document sync, async websocket server, pycrdt websocket provider, real-time document sharing, crdt client server, shared document collaboration, crdt, collaborative-editing, websocket [View on SkillFed](https://skillfed.io/packages/pycrdt-websocket) · [View on PyPI](https://pypi.org/project/pycrdt-websocket/)