Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/craiggleso/empireengine

Let's build a connected world together
https://github.com/craiggleso/empireengine

empire engine p2p webrtc websocket

Last synced: 11 days ago
JSON representation

Let's build a connected world together

Awesome Lists containing this project

README

        

# Empire Engine [![travis][travis-image]][travis-url] [![npm][npm-image]][npm-url] [![downloads][downloads-image]][downloads-url] [![Greenkeeper badge](https://badges.greenkeeper.io/CraigglesO/EmpireEngine.svg)](https://greenkeeper.io/)

[travis-image]: https://travis-ci.org/CraigglesO/EmpireEngine.svg?branch=master
[travis-url]: https://travis-ci.org/CraigglesO/EmpireEngine
[npm-image]: https://img.shields.io/npm/v/empire-engine.svg
[npm-url]: https://npmjs.org/package/empire-engine
[downloads-image]: https://img.shields.io/npm/dm/empire-engine.svg
[downloads-url]: https://npmjs.org/package/empire-engine

### Let's build a connected world together

This is the underlining engine that fuels our P2P connections.

## Install

``` javascript
npm install empire-engine
```

## Usage
``` javascript
const Empire = require("empire-engine").default; // CommonJS

let E = new Empire();

```

#### Modules

These are the main modules that make up Empire:

| module | tests | version | description |
|---|---|---|---|
| **[EmpireEngine][EmpireEngine]** | [![][EmpireEngine-ti]][EmpireEngine-tu] | [![][empireengine-ni]][empireengine-nu] | **Torrent Client Engine (this module)**
| [peer-tracker][peer-tracker] | [![][peer-tracker-ti]][peer-tracker-tu] | [![][peer-tracker-ni]][peer-tracker-nu] | The first persistent Bittorent Tracker
| [bittorrent-wire][bittorrent-wire] | [![][bittorrent-wire-ti]][bittorrent-wire-tu] | [![][bittorrent-wire-ni]][bittorrent-wire-nu] | stream ready Bittorrent Protocol
| [webRTC-Socket][webRTC-Socket] | [![][webRTC-Socket-ti]][webRTC-Socket-tu] | [![][webRTC-Socket-ni]][webRTC-Socket-nu] | Send WebRTC data to and from users
| [ut-extensions][ut-extensions] | [![][ut-extensions-ti]][ut-extensions-tu] | [![][ut-extensions-ni]][ut-extensions-nu] | Extensions for The Bittorent Protocol
| [torrent-piece-handler][torrent-piece-handler] | [![][torrent-piece-handler-ti]][torrent-piece-handler-tu] | [![][torrent-piece-handler-ni]][torrent-piece-handler-nu] | Quickly prep for downloads without polluting your code.
| [binary-bitfield][binary-bitfield] | [![][binary-bitfield-ti]][binary-bitfield-tu] | [![][binary-bitfield-ni]][binary-bitfield-nu] | Track the blocks downloaded
| [torrent-parser][torrent-parser] | [![][torrent-parser-ti]][torrent-parser-tu] | [![][torrent-parser-ni]][torrent-parser-nu] | Parse torrents and create torrent files
| [parse-magnet-uri][parse-magnet-uri] | [![][parse-magnet-uri-ti]][parse-magnet-uri-tu] | [![][parse-magnet-uri-ni]][parse-magnet-uri-nu] | Parse a magnet link to something useful for a Bittorent app

[EmpireEngine]: https://github.com/CraigglesO/EmpireEngine
[EmpireEngine-ti]: https://img.shields.io/travis/CraigglesO/EmpireEngine/master.svg
[EmpireEngine-tu]: https://travis-ci.org/CraigglesO/EmpireEngine
[empireengine-ni]: https://img.shields.io/npm/v/empireengine.svg
[empireengine-nu]: https://www.npmjs.com/package/empireengine

[peer-tracker]: https://github.com/CraigglesO/peer-tracker
[peer-tracker-ti]: https://travis-ci.org/CraigglesO/peer-tracker.svg?branch=master
[peer-tracker-tu]: https://travis-ci.org/CraigglesO/peer-tracker
[peer-tracker-ni]: https://img.shields.io/npm/v/peer-tracker.svg
[peer-tracker-nu]: https://npmjs.org/package/peer-tracker

[bittorrent-wire]: https://github.com/CraigglesO/bittorrent-wire
[bittorrent-wire-ti]: https://travis-ci.org/CraigglesO/bittorrent-wire.svg?branch=master
[bittorrent-wire-tu]: https://travis-ci.org/CraigglesO/bittorrent-wire
[bittorrent-wire-ni]: https://img.shields.io/npm/v/bittorrent-wire.svg
[bittorrent-wire-nu]: https://npmjs.org/package/bittorrent-wire

[webRTC-Socket]: https://github.com/CraigglesO/webRTC-Socket
[webRTC-Socket-ti]: https://travis-ci.org/CraigglesO/webRTC-Socket.svg?branch=master
[webRTC-Socket-tu]: https://travis-ci.org/CraigglesO/webRTC-Socket
[webRTC-Socket-ni]: https://img.shields.io/npm/v/webrtc-socket.svg
[webRTC-Socket-nu]: https://npmjs.org/package/webrtc-socket

[ut-extensions]: https://github.com/CraigglesO/ut-extensions
[ut-extensions-ti]: https://travis-ci.org/CraigglesO/ut-extensions.svg?branch=master
[ut-extensions-tu]: https://travis-ci.org/CraigglesO/ut-extensions
[ut-extensions-ni]: https://img.shields.io/npm/v/ut-extensions.svg
[ut-extensions-nu]: https://npmjs.org/package/ut-extensions

[torrent-piece-handler]: https://github.com/CraigglesO/torrent-piece-handler
[torrent-piece-handler-ti]: https://travis-ci.org/CraigglesO/torrent-piece-handler.svg?branch=master
[torrent-piece-handler-tu]: https://travis-ci.org/CraigglesO/torrent-piece-handler
[torrent-piece-handler-ni]: https://img.shields.io/npm/v/torrent-piece-handler.svg
[torrent-piece-handler-nu]: https://npmjs.org/package/torrent-piece-handler

[binary-bitfield]: https://github.com/CraigglesO/binary-bitfield
[binary-bitfield-ti]: https://travis-ci.org/CraigglesO/binary-bitfield.svg?branch=master
[binary-bitfield-tu]: https://travis-ci.org/CraigglesO/binary-bitfield
[binary-bitfield-ni]: https://img.shields.io/npm/v/binary-bitfield.svg
[binary-bitfield-nu]: https://npmjs.org/package/binary-bitfield

[torrent-parser]: https://github.com/CraigglesO/torrent-parser
[torrent-parser-ti]: https://travis-ci.org/CraigglesO/torrent-parser.svg?branch=master
[torrent-parser-tu]: https://travis-ci.org/CraigglesO/torrent-parser
[torrent-parser-ni]: https://img.shields.io/npm/v/torrent-parser.svg
[torrent-parser-nu]: https://npmjs.org/package/torrent-parser

[parse-magnet-uri]: https://github.com/CraigglesO/parse-magnet-uri
[parse-magnet-uri-ti]: https://travis-ci.org/CraigglesO/parse-magnet-uri.svg?branch=master
[parse-magnet-uri-tu]: https://travis-ci.org/CraigglesO/parse-magnet-uri
[parse-magnet-uri-ni]: https://img.shields.io/npm/v/parse-magnet-uri.svg
[parse-magnet-uri-nu]: https://npmjs.org/package/parse-magnet-uri