# utp

> utp (micro transport protocol) implementation in node

Latest version **0.0.10** (published 2018-03-23) · 0 weekly downloads

## Install

```sh
npm install utp
pnpm add utp
yarn add utp
bun add utp
```

## Health

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

Positive: no vulnerabilities.

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

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.10 |
| Published | 2018-03-23 |
| First published | 2013-06-14 |
| Weekly downloads | 0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Unpacked size | 19.3 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 92 |
| Author | Mathias Buus Madsen |
| Maintainers | mafintosh |
| Keywords | utp, micro, transport, protocol, stream, p2p, udp |

## Links

- npm: https://www.npmjs.com/package/utp
- Repository: https://github.com/mafintosh/utp
- Homepage: https://github.com/mafintosh/utp#readme
- Issues: https://github.com/mafintosh/utp/issues
- npm.io page: https://npm.io/package/utp

## Dependencies (2)

- [cyclist](https://npm.io/package/cyclist.md) ~0.1.0
- [buffer-alloc](https://npm.io/package/buffer-alloc.md) ^1.1.0

## Alternatives

- [byte-size](https://npm.io/package/byte-size.md) — 2.1M weekly downloads
- [speed-limiter](https://npm.io/package/speed-limiter.md) — 16.0K weekly downloads
- [@powersync/node](https://npm.io/package/@powersync/node.md) — 10.9K weekly downloads
- [@ledgerhq/coin-cardano](https://npm.io/package/@ledgerhq/coin-cardano.md) — 1.0K weekly downloads
- [@jayesol/jayeson.lib.streamfinder](https://npm.io/package/@jayesol/jayeson.lib.streamfinder.md) — 1.0K weekly downloads

## Recent versions

- 0.0.10 (latest) — 2018-03-23
- 0.0.9 — 2015-11-03
- 0.0.8 — 2015-02-27
- 0.0.7 — 2014-04-11
- 0.0.6 — 2013-07-04
- 0.0.5 — 2013-07-03
- 0.0.4 — 2013-06-20
- 0.0.3 — 2013-06-16
- 0.0.1 — 2013-06-14

## README

# utp

utp (micro transport protocol) implementation in node.
It is available through npm

	npm install utp

## What is utp?

utp (micro transport protocol) is a network protocol similar to tcp that runs on top of udp.
Since it build on top of udp it can provide great peer to peer connectivity
through techniques like hole punching and similar while still providing a stream interface.
It is currently the main network protocol powering bittorrent.

## BEWARE BEWARE BEWARE

*This module is a work in progress! So beware of dragons!*

## Usage

utp has the same interface as the net module in node.

``` js
var utp = require('utp');

var server = utp.createServer(function(socket) {
	console.log('new connection!');
	socket.on('data', function(data) {
		console.log('client says '+data);
	});
});

server.listen(10000, function() {
	var client = utp.connect(10000, 'localhost');

	client.write('hello world');
});
```

`server.listen()` also accepts a udp socket to listen on instead of a port.


## License

MIT

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