API overview
Events
The user may subscribe to certain events triggered by Webstrates, allowing the user to get notified when Webstrates has loaded, an element changes, a user joins, a signal arrives, etc.
Transient
Transient data is temporary, local data, i.e. data that does not get persisted or synchronized to other clients, and disappears on reload. Transient data is made through transient elements and attributes.
Cookies
Webstrates has a built-in cookie mechanism that allows logged in users to persist JavaScript objects across devices.
Oplog and Activity History
webstrate.getOps()
lets the user access the oplog. webstrate.user.history()
makes it possible
to query the server for a list of webstrates the user recently has been active in.
Assets
Assets (or files) can be attached to webstrates through POST requests. Just like webstrates, assets are versioned. Steps can be made when uploading CSV files to make them searchable.
Client Management
Tools for monitoring clients currently connected to a webstrate, as well as monitoring all the current user’s connected clients to any webstrate on the server.
Signaling
Send messages to other connected users through DOM elements, both primitive (serializable) objects, but also WebRTC-based peer-to-peer data streaming.
Messaging
Messaging allows users to send cross-webstrate messages between users, even when a user isn’t online. It’s basically emails for Webstrates.
Tagging
To easier manage versions of webstrate documents, Webstrates implements tagging. Tagging allows users to attach unique string identifiers (tag labels) to specific versions of a webstrate.
Throttle and Compose
Performance can suffer for webstrates with lots of activity. To remedy this, developers can use the
op-compose
attribute to lessen the strain of operations by combining them. Likewise, ot-throttle
can be used to reduce the number of operations sent to the server altogether.
Protected Mode
Protected mode allows developers to make the creation of all new elements or attributes transient to prevent accidental DOM pollution by extensions and libraries.
Permissions
Create and manage read and write permissions on a per-webstrate basis on OAuth-enabled Webstrates servers.
Access Tokens
An access tokens allows users to temporarily grant permissions to other users to act on their behalf. An access token grants a user the same permissions to a webstrate as the user who generated the access token.
Prototype, Restore and Delete
Webstrates has very fine-grained versioning control, saving every key stroke in the operations history. This allows users to restore documents to previous versions (or tags). A complete deletion of a webstrate is also possible, as well as prototyping from other webstrates.