double checked urls
This commit is contained in:
parent
31e80f0727
commit
bba92f6a73
@ -3,7 +3,7 @@
|
|||||||
[](http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/)
|
[](http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/)
|
||||||
|
|
||||||
|
|
||||||
Yatta is a framework for optimistic concurrency control and automatic conflict resolution on arbitrary data types. The framework implements a new OT-like concurrency algorithm and provides similar functionality as [ShareJs] and [OpenCoweb]. Yatta was designed to take away the pain from concurrently editing complex data types like Text, Json, and XML. You can find some applications for this framework [here](https://dadamonad.github.io/Yatta/examples/).
|
Yatta is a framework for optimistic concurrency control and automatic conflict resolution on arbitrary data types. The framework implements a new OT-like concurrency algorithm and provides similar functionality as [ShareJs] and [OpenCoweb]. Yatta was designed to take away the pain from concurrently editing complex data types like Text, Json, and XML. For more information you should check out the [website](https://dadamonad.github.io/Yatta/)!
|
||||||
|
|
||||||
In the future, we want to enable users to implement their own collaborative types. Currently we provide data types for
|
In the future, we want to enable users to implement their own collaborative types. Currently we provide data types for
|
||||||
* Text
|
* Text
|
||||||
|
@ -200,7 +200,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -138,7 +138,7 @@ Known values that are supported:</p><ul>
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -283,7 +283,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -315,7 +315,7 @@ E.g.: let x = {a:[]}. Then x.a.push 1 wouldn't change anything</p>
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -300,7 +300,7 @@ yatta.bind(textbox);</code></pre>
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -38,7 +38,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
</p>
|
</p>
|
||||||
</nav>
|
</nav>
|
||||||
<div id='filecontents'>
|
<div id='filecontents'>
|
||||||
<h1 id="-yatta-https-dadamonad-github-io-files-layout-yatta_logo-png-"><img src="https://dadamonad.github.io/files/layout/Yatta_logo.png" alt="Yatta!"></h1><p><a href="http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/"><img src="http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/badge/icon" alt="Build Status"></a></p><p>Yatta is a framework for optimistic concurrency control and automatic conflict resolution on arbitrary data types. The framework implements a new OT-like concurrency algorithm and provides similar functionality as <a href="https://github.com/share/ShareJS">ShareJs</a> and <a href="https://github.com/opencoweb/coweb">OpenCoweb</a>. Yatta was designed to take away the pain from concurrently editing complex data types like Text, Json, and XML. You can find some applications for this framework <a href="https://dadamonad.github.io/Yatta/examples/">here</a>.</p><p>In the future, we want to enable users to implement their own collaborative types. Currently we provide data types for</p><ul>
|
<h1 id="-yatta-https-dadamonad-github-io-files-layout-yatta_logo-png-"><img src="https://dadamonad.github.io/files/layout/Yatta_logo.png" alt="Yatta!"></h1><p><a href="http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/"><img src="http://layers.dbis.rwth-aachen.de/jenkins/job/Yatta/badge/icon" alt="Build Status"></a></p><p>Yatta is a framework for optimistic concurrency control and automatic conflict resolution on arbitrary data types. The framework implements a new OT-like concurrency algorithm and provides similar functionality as <a href="https://github.com/share/ShareJS">ShareJs</a> and <a href="https://github.com/opencoweb/coweb">OpenCoweb</a>. Yatta was designed to take away the pain from concurrently editing complex data types like Text, Json, and XML. For more information you should check out the <a href="https://dadamonad.github.io/Yatta/">website</a>!</p><p>In the future, we want to enable users to implement their own collaborative types. Currently we provide data types for</p><ul>
|
||||||
<li>Text</li>
|
<li>Text</li>
|
||||||
<li>Json</li>
|
<li>Json</li>
|
||||||
<li>XML</li>
|
<li>XML</li>
|
||||||
@ -64,7 +64,7 @@ But I would become really motivated if you gave me some feedback :) (<a href="ht
|
|||||||
<li>Custom data types</li>
|
<li>Custom data types</li>
|
||||||
</ul>
|
</ul>
|
||||||
<h2 id="support">Support</h2><p>Please report <em>any</em> issues to the <a href="https://github.com/DadaMonad/Yatta/issues">Github issue page</a>!
|
<h2 id="support">Support</h2><p>Please report <em>any</em> issues to the <a href="https://github.com/DadaMonad/Yatta/issues">Github issue page</a>!
|
||||||
I would appreciate if developers give me feedback on how <em>convenient</em> the framework is, and if it is easy to use. Particularly the XML-support may not support every DOM-methods - if you encounter a method that does not cause any change on other peers, please state function name, and sample parameters. However, there are browser-specific features, that Yatta won't support.</p><h2 id="license">License</h2><p>Yatta! is licensed under the <a href="./LICENSE.txt">MIT License</a>.</p><a href="mailto:kevin.jahns@rwth-aachen.de">kevin.jahns@rwth-aachen.de</a>
|
I would appreciate if developers give me feedback on how <em>convenient</em> the framework is, and if it is easy to use. Particularly the XML-support may not support every DOM-methods - if you encounter a method that does not cause any change on other peers, please state function name, and sample parameters. However, there are browser-specific features, that Yatta won't support.</p><h2 id="license">License</h2><p>Yatta! is licensed under the <a href="./LICENSE.txt">MIT License</a>.</p><a href="mailto:kevin.jahns@rwth-aachen.de">kevin.jahns@rwth-aachen.de</a>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@ -73,7 +73,7 @@ I would appreciate if developers give me feedback on how <em>convenient</em> the
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -106,7 +106,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -72,7 +72,7 @@
|
|||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -48,7 +48,7 @@
|
|||||||
</dl>
|
</dl>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -39,7 +39,7 @@
|
|||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -63,7 +63,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -74,7 +74,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div id='footer'>
|
<div id='footer'>
|
||||||
January 23, 15 15:59:30 by
|
January 23, 15 16:14:11 by
|
||||||
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
|
||||||
Codo
|
Codo
|
||||||
</a>
|
</a>
|
||||||
|
@ -1,21 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<meta charset=utf-8 />
|
|
||||||
<title>PeerJs Json Example</title>
|
|
||||||
<script src="../../../Yatta-Connectors/xmpp-connector/xmpp-connector.js"></script>
|
|
||||||
<script src="../../build/browser/yatta.js"></script>
|
|
||||||
<script src="./index.js"></script>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
<h1 contentEditable> PeerJs + Json Tutorial</h1>
|
|
||||||
<p> Collaborative Json editing with <a href="https://github.com/DadaMonad/Yatta/">Yatta</a>
|
|
||||||
and <a href="http://peerjs.com/">PeerJs</a> (WebRTC). </p>
|
|
||||||
|
|
||||||
<textarea style="width:80%;" rows=40 id="textfield"></textarea>
|
|
||||||
|
|
||||||
<p> <a href="https://github.com/DadaMonad/Yatta/">Yatta</a> is a Framework for Real-Time collaboration on arbitrary data structures.
|
|
||||||
You can find the code for this example <a href="https://github.com/DadaMonad/Yatta/tree/master/examples/PeerJs-Json">here</a>.
|
|
||||||
</p>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,59 +0,0 @@
|
|||||||
|
|
||||||
/**
|
|
||||||
## PeerJs + JSON Example
|
|
||||||
Here, I will give a short overview on how to enable collaborative json with the
|
|
||||||
[PeerJs](http://peerjs.com/) Connector and the Json Framework. Open
|
|
||||||
[index.html](http://dadamonad.github.io/Yatta/examples/PeerJs-Json/index.html) in your Browser and
|
|
||||||
use the console to explore Yatta!
|
|
||||||
|
|
||||||
[PeerJs](http://peerjs.com) is a Framework that enables you to connect to other peers. You just need the
|
|
||||||
user-id of the peer (browser/client). And then you can connect to it.
|
|
||||||
|
|
||||||
First you have to include the following libraries in your html file:
|
|
||||||
```
|
|
||||||
<script src="http://cdn.peerjs.com/0.3/peer.js"></script>
|
|
||||||
<script src="../../build/browser/Frameworks/JsonFramework.js"></script>
|
|
||||||
<script src="../../build/browser/Connectors/PeerJsConnector.js"></script>
|
|
||||||
<script src="./index.js"></script>
|
|
||||||
```
|
|
||||||
### Create Connector
|
|
||||||
|
|
||||||
The PeerJs Framework requires an API key, or you need to set up your own PeerJs server.
|
|
||||||
Get an API key from the [Website](http://peerjs.com/peerserver).
|
|
||||||
The first parameter of `createPeerJsConnector` is forwarded as the options object in PeerJs.
|
|
||||||
Therefore, you may also specify the server/port here, if you have set up your own server.
|
|
||||||
*/
|
|
||||||
var yatta, yattaHandler;
|
|
||||||
|
|
||||||
/**
|
|
||||||
This will connect to the server owned by the peerjs team.
|
|
||||||
For now, you can use my API key.
|
|
||||||
*/
|
|
||||||
|
|
||||||
connector = new XMPPConnector("testy-xmpp-json2");
|
|
||||||
connector.debug = true
|
|
||||||
/**
|
|
||||||
### Yatta
|
|
||||||
yatta is the shared json object. If you change something on this object,
|
|
||||||
it will be instantly shared with all the other collaborators.
|
|
||||||
*/
|
|
||||||
yatta = new Yatta(connector);
|
|
||||||
|
|
||||||
window.onload = function(){
|
|
||||||
var textbox = document.getElementById("textfield");
|
|
||||||
yatta.observe(function(events){
|
|
||||||
for(var i=0; i<events.length; i++){
|
|
||||||
var event = events[i];
|
|
||||||
if(event.name === "textfield" && event.type !== "delete"){
|
|
||||||
//yatta.val("textfield").bind(textbox);
|
|
||||||
yatta.val("textfield").bind(document.querySelector("h1"))
|
|
||||||
}
|
|
||||||
}
|
|
||||||
});
|
|
||||||
connector.whenSynced(function(){
|
|
||||||
if(yatta.val("textfield") == null){
|
|
||||||
yatta.val("textfield","stuff", "mutable");
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
};
|
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "yatta",
|
"name": "yatta",
|
||||||
"version": "0.2.0",
|
"version": "0.2.1",
|
||||||
"description": "A Framework that enables Real-Time Collaboration on arbitrary data structures.",
|
"description": "A Framework that enables Real-Time Collaboration on arbitrary data structures.",
|
||||||
"main": "./build/node/yatta.js",
|
"main": "./build/node/yatta.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
@ -25,11 +25,11 @@
|
|||||||
"bugs": {
|
"bugs": {
|
||||||
"url": "https://github.com/DadaMonad/Yatta/issues"
|
"url": "https://github.com/DadaMonad/Yatta/issues"
|
||||||
},
|
},
|
||||||
"homepage": "https://github.com/DadaMonad/Yatta/",
|
"homepage": "https://dadamonad.github.io/Yattay/",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"codo": "^2.0.9"
|
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"codo": "^2.0.9",
|
||||||
"underscore": "^1.6.0",
|
"underscore": "^1.6.0",
|
||||||
"chai": "^1.9.1",
|
"chai": "^1.9.1",
|
||||||
"codo": "^2.0.9",
|
"codo": "^2.0.9",
|
||||||
|
Loading…
x
Reference in New Issue
Block a user