# 3id-connect

> Account management for 3Box

Latest version **0.1.0** (published 2020-05-30) · MIT license · 0 weekly downloads

## Install

```sh
npm install 3id-connect
pnpm add 3id-connect
yarn add 3id-connect
bun add 3id-connect
```

## 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.1.0 |
| Published | 2020-05-30 |
| First published | 2020-04-20 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 6 |
| Unpacked size | 684.1 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 27 |
| Author | 3box |
| Maintainers | zachferland |

## Links

- npm: https://www.npmjs.com/package/3id-connect
- Repository: https://github.com/3box/3id-connect
- Homepage: https://github.com/3box/3id-connect#readme
- Issues: https://github.com/3box/3id-connect/issues
- npm.io page: https://npm.io/package/3id-connect

## Dependencies (6)

- [store](https://npm.io/package/store.md) ^2.0.12
- [url-parse](https://npm.io/package/url-parse.md) ^1.4.7
- [postmsg-rpc](https://npm.io/package/postmsg-rpc.md) ^2.4.0
- [@babel/runtime](https://npm.io/package/@babel/runtime.md) ^7.1.2
- [identity-wallet](https://npm.io/package/identity-wallet.md) ^1.3.0
- [3id-blockchain-utils](https://npm.io/package/3id-blockchain-utils.md) ^0.4.0

## Recent versions

- 0.1.0 (latest) — 2020-05-30
- 1.0.0-beta.15 (beta) — 2021-03-23
- 1.0.0-alpha.15 (next) — 2021-01-21
- 1.0.0-alpha.14 — 2021-01-21
- 1.0.0-alpha.13 — 2021-01-19
- 1.0.0-alpha.12 — 2021-01-15
- 1.0.0-alpha.11 — 2021-01-15
- 1.0.0-alpha.10 — 2021-01-12
- 1.0.0-alpha.9 — 2020-12-23
- 1.0.0-alpha.8 — 2020-12-18
- 1.0.0-alpha.7 — 2020-12-18
- 1.0.0-alpha.6 — 2020-12-04
- 1.0.0-alpha.4 — 2020-11-12
- 1.0.0-alpha.3 — 2020-11-03
- 1.0.0-alpha.2 — 2020-10-26
- … 4 more at https://npm.io/package/3id-connect/versions

## README

[![Discord](https://img.shields.io/discord/484729862368526356.svg?style=for-the-badge)](https://discordapp.com/invite/Z3f3Cxy)
[![Twitter Follow](https://img.shields.io/twitter/follow/3boxdb.svg?style=for-the-badge&label=Twitter)](https://twitter.com/3boxdb)

# <a name="intro"></a> 3ID-Connect

![3ID Connect Image](./assets/3id-connect_readme-image.png)

3ID-Connect is a 3ID account management service run in an iframe. It allows you to authenicate, manage, and permission your 3ID keys to applications. Used by default in [3box-js](https://github.com/3box/3box-js). [identity-wallet-js](https://github.com/3box/identity-wallet-js) handles most operations and the parent window (application) communicates with iframe service over RPC layer as defined by [3ID JSON-RPC](https://github.com/3box/3box/blob/master/3IPs/3ip-10.md)

Right now you authenticate and link ethereum accounts to mange your 3ID, in the future other keypairs, blockchain accounts, and authentication methods can be added.

## <a name="structure"></a> Structure

* **/src** - Core logic and consumable interfaces for clients and iframe
  *  **/threeIdConnect.js** -  Application interface (RPC client) to load iframe and return 3ID provider.
  *  **/threeIdConnectService.js** - Identity wallet instance and RPC 'server' to handle requests
  *  **/threeIdProviderProxy.js** -  3ID provider interface that relays request through RPC layer
* **/iframe** - all html, css, js, design assets for iframe and flow
* **/public** - build assets deployed for iframe

## <a name="development"></a> Development

Clone and install dependencies

#### Run Locally

Will serve iframe locally on port 30001

```
$ npm run start
```

#### Build

```
$ npm run build
```

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