Collaborative Form Editing
SurveyJS supports real-time collaborative survey editing with Survey Creator, which enables multiple users to design and modify the same survey simultaneously. To start a collaborative session, click Copy invite link and open the link in another browser tab, window, or on another device. Changes made by one participant—including new questions, modified choices, and updated survey settings—are instantly reflected for everyone else in the session.
How It Works
- Users join a shared editing session using a unique session ID.
- The server stores a Survey Creator model and session state in memory.
- Every change made in Survey Creator is captured as a serialized update message.
- Updates are sent to the server through WebSocket and broadcast to all other participants in the session.
- Receiving clients apply incoming updates to their local Survey Creator instance, keeping all editors synchronized.
- Temporary suppression of local change listeners prevents update loops.
- Concurrent edits are resolved using a server-driven last-write-wins strategy.
For implementation details and source code, refer to the following GitHub repository:
Collaborative Form Editing by SurveyJS
See Also
SurveyJS also supports real-time collaborative form filling. See the following demo: