{"id":24379691,"url":"https://github.com/y-js/y-xmpp","last_synced_at":"2025-08-07T15:20:19.589Z","repository":{"id":26795686,"uuid":"30254105","full_name":"y-js/y-xmpp","owner":"y-js","description":"XMPP Connector for Yjs","archived":false,"fork":false,"pushed_at":"2016-05-07T12:31:56.000Z","size":2256,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":11,"default_branch":"master","last_synced_at":"2025-04-10T21:09:40.336Z","etag":null,"topics":["yjs","yjs-connector"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/y-js.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-02-03T17:04:21.000Z","updated_at":"2022-01-21T11:31:03.000Z","dependencies_parsed_at":"2022-07-08T10:25:10.490Z","dependency_job_id":null,"html_url":"https://github.com/y-js/y-xmpp","commit_stats":null,"previous_names":["rwth-acis/y-xmpp"],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y-js%2Fy-xmpp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y-js%2Fy-xmpp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y-js%2Fy-xmpp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/y-js%2Fy-xmpp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/y-js","download_url":"https://codeload.github.com/y-js/y-xmpp/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248298331,"owners_count":21080320,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["yjs","yjs-connector"],"created_at":"2025-01-19T07:18:46.841Z","updated_at":"2025-04-10T21:09:48.416Z","avatar_url":"https://github.com/y-js.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# XMPP Connector for [Yjs](https://github.com/y-js/yjs)\n\nXMPP is a very nice choice as a Connector, because it provides already a lot of functionality.\n\n* Can act as a Connector for thousands of users\n* Sophisticated Rights Management\n* Federated\n* Works with nodejs and in the browser\n\nIn production, you may want to implement a master instance (in Node.js), that holds the state of your shared data types, even when all users are disconnected. You can find such a server implementation [here](https://github.com/DadaMonad/meme-together/blob/master/server.js). Note: Yjs itself does not depend on a server instance. The server implementation is just another client in the XMPP chat room. Also: Having (a) master client(s) in the chatroom, can reduce traffic significantly.\n\n## Use it!\nRetrieve this with bower or npm.\n\n##### NPM\n```\nnpm install y-xmpp --save\n```\n\n##### Bower\n```\nbower install y-xmpp --save\n```\n\n### Example\n\n```\nY({\n  db: {\n    name: 'memory'\n  },\n  connector: {\n    name: 'xmpp',\n\t  room: 'my-xmpp-room'\n  },\n  sourceDir: '/bower_components', // location of the y-* modules\n  share: {\n    textarea: 'Text' // y.share.textarea is of type Y.Text\n  }\n  // types: ['Richtext', 'Array'] // optional list of types you want to import\n}).then(function (y) {\n  // bind the textarea to a shared text element\n  y.share.textarea.bind(document.getElementById('textfield'))\n}\n```\n\n## License\nYjs is licensed under the [MIT License](./LICENSE.txt).\n\n\u003ckevin.jahns@rwth-aachen.de\u003e\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fy-js%2Fy-xmpp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fy-js%2Fy-xmpp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fy-js%2Fy-xmpp/lists"}