Awesome Open Source
Awesome Open Source


NPM Package Actions Status Coverage Status Gitter

Recursive Length Prefix Encoding for node.js.


npm install rlp

install with -g if you want to use the cli.


var RLP = require('rlp')
var assert = require('assert')

var nestedList = [[], [[]], [[], [[]]]]
var encoded = RLP.encode(nestedList)
var decoded = RLP.decode(encoded)
assert.deepEqual(nestedList, decoded)


rlp.encode(plain) - RLP encodes an Array, Buffer or String and returns a Buffer.

rlp.decode(encoded, [skipRemainderCheck=false]) - Decodes an RLP encoded Buffer, Array or String and returns a Buffer or an Array of Buffers. If skipRemainderCheck is enabled, rlp will just decode the first rlp sequence in the buffer. By default, it would throw an error if there are more bytes in Buffer than used by rlp sequence.


rlp decode <hex string>
rlp encode <json String>


Test uses mocha. To run tests and linting: npm test. To auto fix linting problems use: npm run test:fix.


Install dev dependencies npm install

Run npm run coverage

The results are at coverage/lcov-report/index.html


See our organizational documentation for an introduction to EthereumJS as well as information on current standards and best practices.

If you want to join for work or do improvements on the libraries have a look at our contribution guidelines.

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
javascript (66,040
typescript (9,154
ethereum (644
data (350
encoding (93

Find Open Source By Browsing 7,000 Topics Across 59 Categories