The LBRY SDK for building decentralized, censorship resistant, monetized, digital content apps.
Find a file
2017-03-13 12:05:13 -04:00
docs make loggly logs less verbose 2017-03-08 11:23:28 -05:00
lbrynet fix jsonrpc http headers 2017-03-13 11:54:40 -04:00
packaging/windows/libs restore needed gmpy binary to build lbrynet 2017-02-21 14:08:34 -06:00
scripts update docs 2017-02-28 12:31:55 -05:00
tests fixed my silly mistakes 2017-03-09 07:58:36 -05:00
uri_handler remove packaging 2017-02-16 14:09:59 -06:00
.appveyor.yml use build_script for appveyor 2017-02-16 14:13:01 -06:00
.bumpversion.cfg Bump version: 0.9.0rc16 → 0.9.0rc17 2017-03-10 16:30:28 -05:00
.gitattributes use union merge on CHANGELOG.md 2017-02-20 21:37:50 -06:00
.gitignore add emacs temp files to gitignore 2017-02-21 15:15:52 -06:00
.gitmodules remove submodule 2016-06-20 20:43:47 -05:00
.pylintrc add emacs tmp files to pylint blacklist 2016-12-07 09:38:38 -05:00
.travis.yml still more fixes 2017-02-16 14:13:01 -06:00
app.icns update status bar app 2016-03-02 02:00:45 -05:00
CHANGELOG.md Bump version: 0.9.0rc16 → 0.9.0rc17 2017-03-10 16:30:28 -05:00
Dangerfile fix because the danger.systems code example was wrong 2017-02-07 23:08:35 -06:00
ez_setup.py initial commit 2015-08-20 11:27:15 -04:00
FAQ.md updates based on job's comments 2017-01-11 15:39:28 -05:00
INSTALL.md pip install must be run with upgrade flag 2017-02-07 20:51:10 -05:00
LICENSE MIT license 2016-09-13 22:10:12 -04:00
mkdocs.yml documentation config changes 2017-02-27 17:36:29 -05:00
README.md running and usage 2017-03-13 12:05:13 -04:00
requirements.txt Improvements to exchange rate manager 2017-03-03 12:50:47 -05:00
run_pylint.sh more fixes for build 2017-02-16 14:13:01 -06:00
run_tests.sh add script to run tests 2017-01-21 16:04:38 -06:00
setup.py Merge pull request #501 from lbryio/fix_exchange_rate_manager 2017-03-03 12:54:57 -05:00

Build Status Coverage Status

LBRY

LBRY is an open-source protocol providing distribution, discovery, and purchase of digital content (data) via a decentralized network.

This repo is a reference implementation of the LBRY API.

It provides a daemon that can interact with the network via a json-rpc interface over HTTP.

Installing

Note: This project no longer directly bundles a graphic interface (browser). If you want to use LBRY via a browser, use the LBRY App.

Our releases page contains pre-built binaries of the latest release, pre-releases, and past releases, for macOS, Debian-based Linux, and Windows.

Installing from source is also relatively painless, full instructions are in INSTALL.md

Running

Run lbrynet-daemon to launch the daemon.

Using

By default, lbrynet-daemon will provide a JSON-RPC server at http://localhost:5279. It is easy to interact with via cURL or sane programming languages.

Our quickstart guide provides clear sample usages and free credits for learning.

The full API is documented here.

What is LBRY?

LBRY is a fully decentralized network for distributing data. It consists of peers uploading and downloading data from other peers, possibly in exchange for payments, and a distributed hash table, used by peers to discover other peers.

On LBRY, data is broken into chunks, and each chunk is content addressable, specified by its sha384 hash sum. This guarantees that peers can verify the correctness of each chunk without having to know anything about its contents, and can confidently re-transmit the chunk to other peers. Peers wishing to transmit chunks to other peers announce to the distributed hash table that they are associated with the sha384 hash sum in question. When a peer wants to download that chunk from the network, it asks the distributed hash table which peers are associated with that sha384 hash sum. The distributed hash table can also be used more generally. It simply stores IP addresses and ports which are associated with 384-bit numbers, and can be used by any type of application to help peers find each other. For example, an application for which clients don't know all of the necessary chunks may use some identifier, chosen by the application, to find clients which do know all of the necessary chunks.

Contributions

To contribute, join us on Slack or contact jeremy@lbry.io. Pull requests are also welcome.

Support

Please open an issue and describe your situation in detail. We will respond as soon as we can.

For private issues, contact jeremy@lbry.io.

License

See LICENSE