# @coboxcoop/seeder

> a JSON API for seeder, the always online peer/node

Latest version **1.0.2-alpha.1** (published 2020-07-29) · AGPL-3.0-or-later license · 0 weekly downloads

## Install

```sh
npm install @coboxcoop/seeder
pnpm add @coboxcoop/seeder
yarn add @coboxcoop/seeder
bun add @coboxcoop/seeder
```

Provides the command `cobox-seeder`.

## Health

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

Positive: no vulnerabilities.

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

Negative: insecure dependencies; abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.2-alpha.1 |
| Published | 2020-07-29 |
| First published | 2020-07-29 |
| Weekly downloads | 0 |
| License | AGPL-3.0-or-later |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 42 |
| Unpacked size | 99.4 KB |
| Known vulnerabilities | 0 (+27 in 3 direct dependencies) |
| Install scripts | no |
| Author | magma collective |
| Maintainers | ameba23, kyphae |
| Keywords | cobox, seeder, cobox-seeder, kappa-core |

## Links

- npm: https://www.npmjs.com/package/@coboxcoop/seeder
- Repository: https://gitlab.com/coboxcoop/seeder
- Homepage: https://cobox.cloud
- Issues: https://gitlab.com/coboxcoop/seeder/issues
- npm.io page: https://npm.io/package/@coboxcoop/seeder

## Dependencies (42)

- [ora](https://npm.io/package/ora.md) ^4.0.5
- [cors](https://npm.io/package/cors.md) ^2.8.5
- [axios](https://npm.io/package/axios.md) ^0.19.2
- [chalk](https://npm.io/package/chalk.md) ^4.0.0
- [debug](https://npm.io/package/debug.md) ^4.1.1
- [yargs](https://npm.io/package/yargs.md) ^15.1.0
- [assert](https://npm.io/package/assert.md) ^2.0.0
- [mkdirp](https://npm.io/package/mkdirp.md) ^0.5.1
- [thunky](https://npm.io/package/thunky.md) ^1.1.0
- [express](https://npm.io/package/express.md) ^4.17.1
- [find-up](https://npm.io/package/find-up.md) ^4.1.0
- [js-yaml](https://npm.io/package/js-yaml.md) ^3.13.1
- [prompts](https://npm.io/package/prompts.md) ^2.3.2
- [corestore](https://npm.io/package/corestore.md) ^5.6.0
- [JSONStream](https://npm.io/package/JSONStream.md) ^1.3.5
- [lodash.get](https://npm.io/package/lodash.get.md) ^4.4.2
- [lodash.set](https://npm.io/package/lodash.set.md) ^4.3.2
- [body-parser](https://npm.io/package/body-parser.md) ^1.19.0
- [lodash.pick](https://npm.io/package/lodash.pick.md) ^4.4.0
- [capture-exit](https://npm.io/package/capture-exit.md) ^2.0.0
- [http-shutdown](https://npm.io/package/http-shutdown.md) ^1.2.2
- [lodash.sortby](https://npm.io/package/lodash.sortby.md) ^4.7.0
- [sodium-native](https://npm.io/package/sodium-native.md) ^3.0.0
- [collect-stream](https://npm.io/package/collect-stream.md) ^1.2.1
- [lodash.isempty](https://npm.io/package/lodash.isempty.md) ^4.4.0
- [broadcast-stream](https://npm.io/package/broadcast-stream.md) ^0.2.2
- [lodash.transform](https://npm.io/package/lodash.transform.md) ^4.6.0
- [@coboxcoop/client](https://npm.io/package/@coboxcoop/client.md) ^1.0.2-alpha.1
- [@coboxcoop/config](https://npm.io/package/@coboxcoop/config.md) ^1.0.1-alpha.1
- [@coboxcoop/crypto](https://npm.io/package/@coboxcoop/crypto.md) ^1.0.2-alpha.1
- [@coboxcoop/logger](https://npm.io/package/@coboxcoop/logger.md) ^1.0.0-alpha.1
- [express-validator](https://npm.io/package/express-validator.md) ^6.4.0
- [level-live-stream](https://npm.io/package/level-live-stream.md) ^1.4.13
- [@coboxcoop/schemas](https://npm.io/package/@coboxcoop/schemas.md) ^1.0.0-alpha.1
- [@coboxcoop/constants](https://npm.io/package/@coboxcoop/constants.md) ^1.0.1-alpha.1
- [@corestore/networker](https://npm.io/package/@corestore/networker.md) ^1.0.2
- [@coboxcoop/replicator](https://npm.io/package/@coboxcoop/replicator.md) ^1.0.4-alpha.1
- [@coboxcoop/repository](https://npm.io/package/@coboxcoop/repository.md) ^1.0.1-alpha.1
- [@coboxcoop/seeder-cli](https://npm.io/package/@coboxcoop/seeder-cli.md) ^1.0.5-alpha.1
- [@coboxcoop/superusers](https://npm.io/package/@coboxcoop/superusers.md) ^1.0.4-alpha.1
- [@coboxcoop/key-exchange](https://npm.io/package/@coboxcoop/key-exchange.md) ^1.0.2-alpha.1
- [@frando/corestore-multifeed](https://npm.io/package/@frando/corestore-multifeed.md) git+https://gitlab.com/coboxcoop/multifeed.git#production

## Recent versions

- 1.0.2-alpha.1 (latest) — 2020-07-29
- 1.0.1-alpha.1 — 2020-07-29
- 1.0.0-alpha.1 — 2020-07-29

## README

# seeder

<div align="center">
  <img src="https://cobox.cloud/src/svg/logo.svg">
</div>

## Table of Contents

* [About](#about)
* [Installing and Updating](#installing-and-updating)
  * [Install & Update Script](#install-and-update-script)
  * [Troubleshooting on Linux](#troubleshooting-on-linux)
  * [Verify Installation](#verify-installation)
  * [NPM Install](#npm-install)
  * [Git Install](#git-install)
* [Usage](#usage)
* [Contributing](#contributing)
* [License](#license)


## About
**CoBox** is an encrypted p2p file system and distributed back-up tool. [README](https://gitlab.com/coboxcoop/readme) provides a map of the project.

`seeder` provides an 'always on' blind replicator seeder designed to be hosted in your office or home. It exposes an ExpressJS HTTP JSON API, pairing with [CoBox Server](https://gitlab.com/coboxcoop/server) and a Yargs CLI enabling issuing remote commands from a registered and authenticated CoBox Server instance over the [Hyperswarm DHT](https://github.com/hyperswarm/hyperswarm) using the [Hypercore Protocol](https://github.com/mafintosh/hypercore-protocol/).


## Installing and Updating

### Install and Update Script

To install or update cobox-server, you should run the [install script](./download.sh). To do that, you may either download and run the script manually, or use the following cURL or Wget command:

```
curl -o- https://cobox.cloud/releases/cobox-seeder_v1.0.0-alpha.1/download.sh | bash
```

```
wget -qO- https://cobox.cloud/releases/cobox-seeder_v1.0.0-alpha.1/download.sh | bash
```

Running either of the above commands downloads a script and runs it. The script downloads a tarball that contains the release binary required by your operating system with additional assets and unpacks the contents to the install directory.

### Troubleshooting on Linux

On Linux, after running the install script, if you get `cobox-seeder: command not found` or see no feedback from your terminal after you type `command -v cobox-seeder`, simply close your current terminal, open a new terminal, and try verifying again.

### Verify Installation

To verify that CoBox has been installed correctly, do:

```
command -v cobox-seeder
```

### NPM Install

```
npm install -g @coboxcoop/seeder

cobox-seeder
```

### Git Install

Before you get started, ensure you have `git` and `node` installed. We currently release using `v12.16.3` which we recommend using. You can download and install nodejs from your distribution package manager, or [direct from their website](https://nodejs.org/en/download/).

```
# clone the repository
git clone http://gitlab.com/coboxcoop/server && cd server

npm install -g yarn

# install dependencies
yarn

# start the app
yarn start

# use the cli
node bin
```

## Usage

CoBox Seeder can be administrated in two ways.

1. Directly on the seeder that is running it using the CLI
2. By sending commands across the hypercore-protocol from an authenticated CoBox Server instance

### CLI

```
CoBox Hub 1.0 - a tool for distributed and mutual backup infrastructure

  Copyright (C) 2019 Magma Collective T&DT, License GNU AGPL v3+
  This is free software: you are free to change and redistribute it
  For the latest sourcecode go to <https://code.cobox.cloud/>

Usage: bin <command> [options]

Commands:
  bin backups <command>    back-up your peers' spaces
  bin broadcast <command>  announce authentication details over the local area
                           network
  bin keys <command>       manage your hub's keys
  bin down [options]       stop the seeder app
  bin up [options]         start the seeder app

Options:
  -h, --help, --help        Show help                                  [boolean]
  -v, --version, --version  Show version number                        [boolean]

For more information on cobox read the manual: man cobox-hub
Please report bugs on <http://gitlab.com/coboxcoop/core/issues>.
```

### Commands

When first initialised, CoBox Seeder begins broadcasting UDP packets announcing its authentication keys. You can use [CoBox Server](https://gitlab.com/coboxcoop/server) to retrieve these keys over the LAN, either with the `cobox seeders pair` CLI command or through the admin dashboard in the UI. With these keys you can send commands to the Seeder app and request it to perform backups. See the [CoBox CLI](https://gitlab.com/coboxcoop/server) for more details.

# Contributing

PRs accepted.

Small note: If editing the README, please conform to the [standard-readme](https://github.com/RichardLitt/standard-readme) specification.

# License

[`AGPL-3.0-or-later`](./LICENSE)

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