# y-xmpp

> XMPP Connector for Yjs

Latest version **7.0.4** (published 2016-05-07) · MIT license · 0 weekly downloads

## Install

```sh
npm install y-xmpp
pnpm add y-xmpp
yarn add y-xmpp
bun add y-xmpp
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 7.0.4 |
| Published | 2016-05-07 |
| First published | 2015-02-15 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 7 |
| Author | Kevin Jahns |
| Maintainers | dmonad |
| Keywords | Yjs, OT, Collaboration, Synchronization, ShareJS, Coweb, Concurrency |

## Links

- npm: https://www.npmjs.com/package/y-xmpp
- Repository: https://github.com/rwth-acis/y-xmpp
- Homepage: http://y-js.org
- Issues: https://github.com/y-js/y-xmpp/issues
- npm.io page: https://npm.io/package/y-xmpp

## Dependencies (2)

- [ltx](https://npm.io/package/ltx.md) ^0.8.0
- [node-xmpp-client](https://npm.io/package/node-xmpp-client.md) ^2.0.0

## Alternatives

- [@sveltejs/kit](https://npm.io/package/@sveltejs/kit.md) — 2.2M weekly downloads
- [@atlaskit/theme](https://npm.io/package/@atlaskit/theme.md) — 402.0K weekly downloads
- [@tangle-network/brand](https://npm.io/package/@tangle-network/brand.md) — 10.0K weekly downloads
- [seneca](https://npm.io/package/seneca.md) — 7.4K weekly downloads
- [@bsb/base](https://npm.io/package/@bsb/base.md) — 7.2K weekly downloads

## Recent versions

- 7.0.4 (latest) — 2016-05-07
- 7.0.3 — 2016-04-26
- 7.0.2 — 2016-03-23
- 7.0.1 — 2016-02-23
- 0.7.1 — 2016-01-11
- 0.4.0 — 2015-02-15

## README

# XMPP Connector for [Yjs](https://github.com/y-js/yjs)

XMPP is a very nice choice as a Connector, because it provides already a lot of functionality.

* Can act as a Connector for thousands of users
* Sophisticated Rights Management
* Federated
* Works with nodejs and in the browser

In 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.

## Use it!
Retrieve this with bower or npm.

##### NPM
```
npm install y-xmpp --save
```

##### Bower
```
bower install y-xmpp --save
```

### Example

```
Y({
  db: {
    name: 'memory'
  },
  connector: {
    name: 'xmpp',
	  room: 'my-xmpp-room'
  },
  sourceDir: '/bower_components', // location of the y-* modules
  share: {
    textarea: 'Text' // y.share.textarea is of type Y.Text
  }
  // types: ['Richtext', 'Array'] // optional list of types you want to import
}).then(function (y) {
  // bind the textarea to a shared text element
  y.share.textarea.bind(document.getElementById('textfield'))
}
```

## License
Yjs is licensed under the [MIT License](./LICENSE.txt).

<kevin.jahns@rwth-aachen.de>

---
_Source: https://npm.io/package/y-xmpp · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
