This commit is contained in:
Kevin Jahns 2016-11-09 14:17:00 +01:00
commit 1e30a877e6
7 changed files with 13 additions and 3642 deletions

View File

@ -36,17 +36,4 @@ Y({
});
// bind quill to richtext type
y.share.richtext.bind(window.quill)
})
Y({
db: {
name: 'indexeddb'
},
connector: {
name: 'websockets-client',
room: 'test42'
},
share: {
state : 'Map'
}
}).then((y) => { window.y = y })
})

View File

@ -1,8 +1,8 @@
# ![Yjs](http://y-js.org/images/yjs.png)
Yjs is a framework for p2p shared editing on structured data like (rich-)text, json, and XML.
It is similar to [ShareJs] and [OpenCoweb], but easy to use.
Yjs is a framework for offline-first p2p shared editing on structured data like text, richtext, json, or XML.
It is fairly easy to get started, as Yjs hides most of the complexity of concurrent editing.
For additional information, demos, and tutorials visit [y-js.org](http://y-js.org/).
### Extensions
@ -42,7 +42,7 @@ Connectors, Databases, and Types are available as modules that extend Yjs. Here
|[richtext](https://github.com/y-js/y-richtext) | Collaborate on rich text. Supports two way binding to the [Quill Rich Text Editor](http://quilljs.com/)|
## Use it!
Install Yjs, and its modules with [bower](http://bower.io/), or [npm](https://www.npmjs.org/package/yjs).
Install Yjs, and its modules with [bower](http://bower.io/), or [npm](https://www.npmjs.org/package/yjs).
### Bower
```
@ -91,17 +91,17 @@ bower i yjs y-memory y-webrtc y-array y-text
```
Here is a simple example of a shared textarea
```
```HTML
<!DOCTYPE html>
<html>
<body>
<script src="./bower_components/yjs/y.js"></script>
<!-- Yjs automatically includes all missing dependencies (browser only) -->
<script>
Y({
db: {
name: 'memory' // use memory database adapter.
// name: 'indexeddb'
// name: 'leveldb'
// name: 'indexeddb' // use indexeddb database adapter instead for offline apps
},
connector: {
name: 'webrtc', // use webrtc connector
@ -117,9 +117,9 @@ Here is a simple example of a shared textarea
// The Yjs instance `y` is available
// y.share.* contains the shared types
// Bind the textarea to y.share.textarea
// Bind `y.share.textarea` to `<textarea/>`
y.share.textarea.bind(document.querySelector('textarea'))
}
})
</script>
<textarea></textarea>
</body>
@ -134,6 +134,9 @@ Report _any_ issues to the [Github issue page](https://github.com/y-js/yjs/issue
# API
### Y(options)
* Y.extend(module1, module2, ..)
* Add extensions to Y
* `Y.extend(require('y-webrtc'))` has the same semantics as `require('y-webrtc')(Y)`
* options.db
* Will be forwarded to the database adapter. Specify the database adaper on `options.db.name`.
* Have a look at the used database adapter repository to see all available options.
@ -259,6 +262,3 @@ Yjs is licensed under the [MIT License](./LICENSE).
<yjs@dbis.rwth-aachen.de>
[ShareJs]: https://github.com/share/ShareJS
[OpenCoweb]: https://github.com/opencoweb/coweb/wiki

View File

@ -1,6 +1,6 @@
{
"name": "yjs",
"version": "12.0.4",
"version": "12.1.0",
"homepage": "y-js.org",
"authors": [
"Kevin Jahns <kevin.jahns@rwth-aachen.de>"

3610
y.es6

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

4
y.js

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long