Coder Social home page Coder Social logo

interledger-deprecated / ilp-kit Goto Github PK

View Code? Open in Web Editor NEW
74.0 20.0 39.0 17.46 MB

Everything needed to create a ledger and connect it to the Interledger

Home Page: https://interledgerjs.github.io/ilp-kit/apidoc/

JavaScript 53.49% CSS 45.11% HTML 1.30% Shell 0.10%
ledger ui wallet payments ilp interledger

ilp-kit's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ilp-kit's Issues

Command failed

Good morning.

I tried to install five-bells-wallet on Ubuntu 16.04, but it won't.

npm ERR! git clone --template=/home/m***_/.npm/_git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**__/.npm/git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63: 간략한 저장소로('/home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63') 복제합니다...
npm ERR! git clone --template=/home/m**/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63: ERROR: Repository not found.
npm ERR! git clone --template=/home/m**
/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63: fatal: Could not read from remote repository.
npm ERR! git clone --template=/home/m**/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63:
npm ERR! git clone --template=/home/m**
/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63: Please make sure you have the correct access rights
npm ERR! git clone --template=/home/m**/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63: and the repository exists.
npm ERR! Linux 4.4.0-38-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! node v4.2.6
npm ERR! npm v3.5.2
npm ERR! code 128
npm ERR! Command failed: git clone --template=/home/m**
/.npm/git-remotes/templates --mirror [email protected]:interledger/js-ilp-plugin-bells-admin.git /home/m**/.npm/git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63
npm ERR! 간략한 저장소로('/home/m**
*/.npm/_git-remotes/git-github-com-interledger-js-ilp-plugin-bells-admin-git-e12e5d63') 복제합니다...
npm ERR! ERROR: Repository not found.
npm ERR! fatal: Could not read from remote repository.
npm ERR!
npm ERR! Please make sure you have the correct access rights
npm ERR! and the repository exists.
npm ERR!
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! https://github.com/npm/npm/issues

Please check that js-ilp-plugin-bells-admin exists.

Many thanks,

misnuge

Send Money Clarification

Under the homepage sending money should be similar to:

Sending Receiving (after fees)
[ x ] [ x - fee ]

Otherwise as is, it appears as if to send a round trip zero sum transaction.

List Postgres as a dependency

This is not listed in the README or in the README of five-bells-ledger
The result is a very obscure error when npm install tries to install libpq because of:

/bin/sh: pg_config: command not found

unexpected server response (404)

[4] 2016-11-02T00:16:15.913Z sequelize DEBUG Executing (default): SELECT "id", "username", "account", "name", "email", "email_verified", "github_id", "profile_picture", "created_at", "updated_at" FROM "Users" AS "User" WHERE "User"."username" = 'mspark' LIMIT 1;
[1] [2016-11-02T00:16:15.927Z] INFO: ledger/21225 on interledger: <-- GET /accounts/mspark (req_id=c50c9a67-48b6-4d14-badb-a3007b3462d3, module=app, query={})
[1] [2016-11-02T00:16:15.944Z] INFO: ledger/21225 on interledger: --> GET /accounts/mspark 200 17ms (req_id=c50c9a67-48b6-4d14-badb-a3007b3462d3, module=app, duration=17, status=200)
[4] normal account
[1] [2016-11-02T00:16:15.960Z] INFO: ledger/21225 on interledger: <-- GET /accounts/mslee (req_id=c4b642de-d199-4f26-88ae-a8719e95cf5b, module=app, query={})
[1] [2016-11-02T00:16:15.965Z] INFO: ledger/21225 on interledger: --> GET /accounts/mslee 200 5ms (req_id=c4b642de-d199-4f26-88ae-a8719e95cf5b, module=app, duration=5, status=200)
[4] 2016-11-02T00:16:15.982Z http INFO <-- GET /receivers/mslee
[4] 2016-11-02T00:16:15.986Z sequelize DEBUG Executing (default): SELECT "id", "username", "account", "name", "email", "email_verified", "github_id", "profile_picture", "created_at", "updated_at" FROM "Users" AS "User" WHERE "User"."username" = 'mslee' LIMIT 1;
[4] 2016-11-02T00:16:15.995Z http INFO --> GET /receivers/mslee 200 13ms -
[4] 2016-11-02T00:16:15.997Z http INFO --> GET /parse/destination?destination=mslee 200 97ms -
[4] 2016-11-02T00:16:23.416Z http INFO <-- POST /payments/quote
[4] 2016-11-02T00:16:23.421Z sequelize DEBUG Executing (default): SELECT "id", "username", "account", "name", "email", "email_verified", "github_id", "profile_picture", "created_at", "updated_at" FROM "Users" AS "User" WHERE "User"."username" = 'mspark' LIMIT 1;
[1] [2016-11-02T00:16:23.442Z] INFO: ledger/21225 on interledger: <-- GET /accounts/mspark (req_id=cad9fb68-5776-4282-b7b9-8c179ce61c1f, module=app, query={})
[1] [2016-11-02T00:16:23.451Z] INFO: ledger/21225 on interledger: --> GET /accounts/mspark 200 9ms (req_id=cad9fb68-5776-4282-b7b9-8c179ce61c1f, module=app, duration=9, status=200)
[4] normal account
[1] [2016-11-02T00:16:23.463Z] INFO: ledger/21225 on interledger: <-- GET /accounts/mslee (req_id=ae5bd936-057d-48a4-91ed-d06d682cdb3f, module=app, query={})
[1] [2016-11-02T00:16:23.466Z] INFO: ledger/21225 on interledger: --> GET /accounts/mslee 200 3ms (req_id=ae5bd936-057d-48a4-91ed-d06d682cdb3f, module=app, duration=3, status=200)
[4] 2016-11-02T00:16:23.474Z http INFO <-- GET /receivers/mslee
[4] 2016-11-02T00:16:23.476Z sequelize DEBUG Executing (default): SELECT "id", "username", "account", "name", "email", "email_verified", "github_id", "profile_picture", "created_at", "updated_at" FROM "Users" AS "User" WHERE "User"."username" = 'mslee' LIMIT 1;
[4] 2016-11-02T00:16:23.484Z http INFO --> GET /receivers/mslee 200 10ms -
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-kit:spsp created a sender object
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin connecting to account https://./ledger/accounts/mspark
[1] [2016-11-02T00:16:23.503Z] INFO: ledger/21225 on interledger: <-- GET /accounts/mspark (req_id=c2f29cbc-c16a-488f-ad12-d89b5f0c6cee, module=app, query={})
[1] [2016-11-02T00:16:23.509Z] INFO: ledger/21225 on interledger: --> GET /accounts/mspark 200 6ms (req_id=c2f29cbc-c16a-488f-ad12-d89b5f0c6cee, module=app, duration=6, status=200)
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin request ledger metadata http://
.:3000
[1] [2016-11-02T00:16:23.515Z] INFO: ledger/21225 on interledger: <-- GET / (req_id=0cb9b8d8-8daf-4e97-b5fa-3835354ec1bd, module=app, query={})
[1] [2016-11-02T00:16:23.518Z] INFO: ledger/21225 on interledger: --> GET / 200 3ms (req_id=0cb9b8d8-8daf-4e97-b5fa-3835354ec1bd, module=app, duration=3, status=200)
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin subscribing to wss://
./ledger/accounts//transfers
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin 'websocket: connected'
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp:sender got source amount quote response { sourceAmount: '1', destinationAmount: '1' }
[4] 2016-11-02T00:16:23.524Z http INFO --> POST /payments/quote 200 109ms -
[1] [2016-11-02T00:16:23.528Z] INFO: ledger/21225 on interledger: <-- GET /accounts//transfers (req_id=5e912344-a377-4ff3-aac0-9b0b60c198b6, module=app, query={})
[1] [2016-11-02T00:16:23.535Z] WARN: ledger/21225 on interledger: --> GET /accounts/
/transfers 404 7ms (req_id=5e912344-a377-4ff3-aac0-9b0b60c198b6, module=app, duration=7, status=404)
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin 'websocket: error' [Error: unexpected server response (404)]
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin ws error on wss://./ledger/accounts//transfers: Error: unexpected server response (404)
[4] Wed, 02 Nov 2016 00:16:23 GMT ilp-plugin-bells-admin:plugin 'websocket: disconnected'
[1] [2016-11-02T00:16:23.645Z] INFO: ledger/21225 on interledger: <-- GET /accounts/
/transfers (req_id=4e845565-daeb-4f5c-ae42-6550820c4459, module=app, query={})
[1] [2016-11-02T00:16:23.646Z] WARN: ledger/21225 on interledger: --> GET /accounts/*/transfers 404 1ms (req_id=4e845565-daeb-4f5c-ae42-6550820c4459, module=app, duration=1, status=404)
[4] [piping] can't execute file: /home/mspark/ilp-kit/bin/api.js
[4] [piping] error given was: Error: unexpected server response (404)
[4] at ClientRequest.response (/home/mspark/ilp-kit/node_modules/ws/lib/WebSocket.js:719:15)
[4] at ClientRequest.g (events.js:260:16)
[4] at emitOne (events.js:77:13)
[4] at ClientRequest.emit (events.js:169:7)
[4] at HTTPParser.parserOnIncomingClient [as onIncoming] (_http_client.js:414:21)
[4] at HTTPParser.parserOnHeadersComplete (_http_common.js:88:23)
[4] at TLSSocket.socketOnData (_http_client.js:304:20)
[4] at emitOne (events.js:77:13)
[4] at TLSSocket.emit (events.js:169:7)
[4] at readableAddChunk (_stream_readable.js:146:16)
[4] at TLSSocket.Readable.push (_stream_readable.js:110:10)
[4] at TLSWrap.onread (net.js:523:20)

I am testing ilp-kit on Ubuntu 16.04. I think I have set all the environments variables and apache2 proxy configuration correctly on separate two machines as the README.MD says. The two machines cooperates well except the error above.

Many thanks,

misnuge

Avatars not showing up

When users receive money from me, my avatar is not visible to them. The URL it is trying to access is:

https://[domain]/upload_6248c52f66bc12db22c808ec99e65fe6.jpg

Move "set default" to logged-in state

There is no point to set the wallet as your default when you're not logged in. The call to action on the front page should be to register.

The set to default feature should be on the front page when you're logged in.

Feedback after sending a transfer

We need some way to see the actual payment after it went through. Some button that you can click in the account history that shows you the JSON for the payment would be sufficient for now.

(Optionally) run five-bells-ledger inside five-bells-wallet

It's becoming clear that a lot of the time developers will want to run five-bells-wallet themselves (instead of just using the public instances or running a naked five-bells-ledger.)

In order to make that as easy as possible we should make it so that if you don't provide config options that point to an external five-bells-ledger instance (i.e. no API_LEDGER_URI), five-bells-wallet should run five-bells-ledger internally automatically.

Add Invite Codes

The admin should be able to generate invite codes to let a user sign up. These should be one-time-use and there should be a field to enter your invite code on the registration page. Related: #40

Docs: Improve README for first-time users

Currently, it's not clear how to set up five-bells-wallet just from looking at the README. Here is the feedback we got from some developers trying to do it during the hackathon:

  • Indicate which config parameters are required or optional
  • Show default and/or example values for all config parameters
  • Show how to generate ED25519_SECRET_KEY
  • Provide (verified) step-by-step instructions for setting up five-bells-wallet
  • Provide a starter config (a complete, minimal example config which will get you up and running)
  • State which Node.js and NPM versions the wallet works with
  • Explain that you need a five-bells-ledger instance
  • List the different components of five-bells-wallet (API, UI backend, UI) and how they relate to each other

[API] Add memo to payments

I would like to be able to set a destinationMemo and sourceMemo on the payments.

To prevent conflicts with the memo keys used by OWPS, maybe it should put the whole user-defined memo in some nested object like userMemo.

chalk dependency

when running npm configure:

_./node_modules/ilp-kit-cli/bin/configure.js -o env.list

module.js:327
throw err;
^

Error: Cannot find module 'chalk'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module.load (module.js:276:25)
at Module.require (module.js:353:17)

update to use ilp-kit-cli

On a fresh install running npm run configure doesn't work because of the rename of ilp-connector-cli to ilp-kit-cli

Option to Disable Registration

There should be a setting which prevents users from creating accounts by default. They would instead be able to register if the admin user generates an invite code. Related: #41

Trouble getting five bells wallet ledger instance to work

After using the initial config options in the readme i've got a wallet up and running, am having trouble registering a user, whether using the five bells wallet client or creating my own client using the API. I am running into the following error, whilst registering a user. I've tried to use my own ledger as well as the red.ilpdemo hosted ledger but I get the same error making me think its something else, haven't been able to workout what it is, any help appreciated.

users.js:113 TypeError: Cannot read property 'body' of undefined [3] at Ledger.putAccount (/home/amohame9/five-bells-wallet/api/src/lib/ledger.js:251:20) [3] at throw (native) [3] at onRejected (/home/amohame9/five-bells-wallet/node_modules/koa.io/node_modules/co/index.js:77:24) [3] at process._tickCallback (internal/process/next_tick.js:103:7) [3] 2016-08-16T07:50:37.122Z error-handler ERROR TypeError: Cannot read property 'id' of undefined [3] at Object.postResource (/home/amohame9/five-bells-wallet/api/src/controllers/users.js:138:35) [3] at throw (native) [3] at onRejected (/home/amohame9/five-bells-wallet/node_modules/koa.io/node_modules/co/index.js:77:24) [3] at process._tickCallback (internal/process/next_tick.js:103:7) [3] 2016-08-16T07:50:37.123Z error-handler ERROR TypeError: Cannot read property 'id' of undefined [3] at Object.postResource (/home/amohame9/five-bells-wallet/api/src/controllers/users.js:138:35) [3] at throw (native) [3] at onRejected (/home/amohame9/five-bells-wallet/node_modules/koa.io/node_modules/co/index.js:77:24) [3] at process._tickCallback (internal/process/next_tick.js:103:7) [3] 2016-08-16T07:50:37.123Z http INFO xxx POST /users/alice 500 1,223ms - [3] [3] InternalServerError: TypeError: Cannot read property 'id' of undefined [3] at Object.module.exports.throw (/home/amohame9/five-bells-wallet/node_modules/koa.io/node_modules/koa/lib/context.js:90:23) [3] at Object.handleError (/home/amohame9/five-bells-wallet/node_modules/five-bells-shared/middlewares/error-handler.js:18:19) [3] at throw (native) [3] at onRejected (/home/amohame9/five-bells-wallet/node_modules/koa.io/node_modules/co/index.js:77:24) [3] at process._tickCallback (internal/process/next_tick.js:103:7)

UPDATE: issue was me working on an outdated dependency** see below.

Connector should start after the ledger

Right now, there's a 10 second delay in package.json to make the connector start up after the ledger. On lower-resource systems, the ledger will not be fully running after 10 seconds, causing the connector to get a Could not get ledger URI from account URI error. The delay has to be changed to 20 seconds on those systems.

We should change the way ilp-kit launches components to ensure that connector is always started after the ledger is up and running

Pathfind returns inconsistent format

Depending on whether it's a local transfer or not it'll return a different format. This should be the same no matter what. This should be fixed by updating to the latest connector.

Epic: Simplify wallet installation

I just did a run-through of installing five-bells-wallet from scratch and suggest the following changes:

  • Remove notification signing keys in the ledger (interledger-deprecated/five-bells-ledger#338)
  • Not having to manually rebuild node-sass (35649d8)
  • Not having to create upload folder
  • Provide only a single secret (and five-bells-wallet generates secrets for subcomponents from that)
  • Remove dependency on expect (#31)
  • Remove the need to manually create wallet-ledger database in postgres (#23)
  • Remove the need to run with LEDGER_DB_SYNC to initialize ledger database (interledger-deprecated/five-bells-ledger#339)
  • Unify connector with other configuration (connector.list vs env variables)
  • Rename to ilp-connector-kit (#33)

Return wallet API endpoint in webfinger results

In addition to looking up the account and ledger, 3rd party clients will also need to look up the endpoint they can use to talk to the wallet API (e.g. for using webhook subscriptions for incoming payments)

Remove dependency on expect

It's annoying to have to install some other apt package which depends on X11 and a bunch of other big libraries. It might even prevent installation on other architectures or operating systems if those libraries aren't available.

Can we remove that dependency by using an npm package or some flags like --colors.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.