• Stars
    star
    7,193
  • Rank 5,364 (Top 0.2 %)
  • Language
    Python
  • License
    MIT License
  • Created about 9 years ago
  • Updated about 1 month ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

The LBRY SDK for building decentralized, censorship resistant, monetized, digital content apps.

LBRY LBRY SDK build coverage

LBRY is a decentralized peer-to-peer protocol for publishing and accessing digital content. It utilizes the LBRY blockchain as a global namespace and database of digital content. Blockchain entries contain searchable content metadata, identities, rights and access rules. LBRY also provides a data network that consists of peers (seeders) uploading and downloading data from other peers, possibly in exchange for payments, as well as a distributed hash table used by peers to discover other peers.

LBRY SDK for Python is currently the most fully featured implementation of the LBRY Network protocols and includes many useful components and tools for building decentralized applications. Primary features and components include:

  • Built on Python 3.7 and asyncio.
  • Kademlia DHT (Distributed Hash Table) implementation for finding peers to download from and announcing to peers what we have to host (lbry.dht).
  • Blob exchange protocol for transferring encrypted blobs of content and negotiating payments (lbry.blob_exchange).
  • Protobuf schema for encoding and decoding metadata stored on the blockchain (lbry.schema).
  • Wallet implementation for the LBRY blockchain (lbry.wallet).
  • Daemon with a JSON-RPC API to ease building end user applications in any language and for automating various tasks (lbry.extras.daemon).

Installation

Our releases page contains pre-built binaries of the latest release, pre-releases, and past releases for macOS, Debian-based Linux, and Windows. Automated travis builds are also available for testing.

Usage

Run lbrynet start to launch the API server.

By default, lbrynet 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 a simple walkthrough and examples for learning.

With the daemon running, lbrynet commands will show you a list of commands.

The full API is documented here.

Running from source

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

Contributing

Contributions to this project are welcome, encouraged, and compensated. For more details, please check this link.

License

This project is MIT licensed. For the full license, see LICENSE.

Security

We take security seriously. Please contact [email protected] regarding any security issues. Our PGP key is here if you need it.

Contact

The primary contact for this project is @eukreign.

Additional information and links

The documentation for the API can be found here.

Daemon defaults, ports, and other settings are documented here.

Settings can be configured using a daemon-settings.yml file. An example can be found here.

More Repositories

1

lbry-desktop

A browser and wallet for LBRY, the decentralized, user-controlled content marketplace.
JavaScript
3,568
star
2

lbrycrd

The blockchain that provides the digital content namespace for the LBRY protocol
C++
2,582
star
3

lbry-android

The LBRY Android app
Java
2,440
star
4

torba

Torba makes it easy to create fast and correct bitcoin based crypto wallets.
Python
2,196
star
5

lbry.com

lbry.com, the website for the LBRY protocol
PHP
263
star
6

spee.ch

An image hosting service on top of the LBRY protocol.
JavaScript
185
star
7

lbry-fdroid

The LBRY Android app (on F-Droid)
Java
64
star
8

lbry.tech

Technical documentation website for the LBRY protocol
JavaScript
50
star
9

ytsync

An overly complex tool to mirror youtube content to LBRY
Go
42
star
10

aioupnp

UPnP for asyncio
Python
29
star
11

lbry.go

Go
29
star
12

dmca

Repository with text of DMCA takedown notices as received. LBRY Inc. does not endorse or adopt any assertion contained in the following notices. Users identified in the notices are presumed innocent until proven guilty. Additional information about our DMCA policy can be found at https://lbry.io/faq/dmca and content policy at https://lbry.io/faq/content
DIGITAL Command Language
26
star
13

lbrycrd-gpu

Please use https://github.com/lbryio/sgminer-gm or https://github.com/lbryio/ccminer or https://github.com/lbryio/cpuminer instead.
22
star
14

lbrypress

LBRY WordPress plugin
PHP
21
star
15

herald.go

Go
20
star
16

block-explorer

The new LBRY block explorer
JavaScript
18
star
17

hub

Python
16
star
18

lbry-redux

Common shared app components for desktop and mobile
JavaScript
15
star
19

reflector.go

Go
14
star
20

lighthouse.js

Lighthouse - A lightning fast search for the LBRY blockchain
JavaScript
14
star
21

lbry-ios

LBRY on iOS
Objective-C
13
star
22

lbry-docker

This repository will be for Dockerfiles for the various LBRY packages.
CSS
11
star
23

lbry-react-native

The React Native frontend for the LBRY mobile app
JavaScript
11
star
24

php-api

LBRY API wrapper
PHP
10
star
25

piratebay.com

A pretty implementation for the homepage at piratebay
CSS
10
star
26

lbry-format

The LBRY format is an application format designed to promote interoperability and transmission of complex digital media.
JavaScript
10
star
27

comment-server

comment server implemented in python to host comments on lbry
Python
10
star
28

lbry-gentoo-overlay

[needs some love] Gentoo Portage overlay for LBRY
Shell
9
star
29

types

Cross-language definitions for standard LBRY types
JavaScript
8
star
30

spec

LBRY protocol specification
CSS
7
star
31

electron-starter

A bare bones electron app with the lbry-sdk and lbry-redux already added
JavaScript
7
star
32

twitter-tipbot

A tipbot for twitter that speaks LBRY!
JavaScript
7
star
33

lbryinc

JavaScript
6
star
34

web-daemon

A web-based API for using LBRY (used by lbry.tech)
JavaScript
5
star
35

docker-lbrynet

Shell
5
star
36

www.spee.ch

A web app that uses the spee.ch codebase
JavaScript
5
star
37

lbrycrd-dependencies

Copies of the libraries that lbrycrd depends on
HTML
4
star
38

lbryschema.go

Go
4
star
39

lbry-social-tipbot

LBRY reddit tipbot
JavaScript
4
star
40

claimtrie

Go
4
star
41

lbry-first

One stop shop for uploading digital content to alternatives to empower LBRY First!
Go
4
star
42

components

Styling for shared components across LBRY properties...IN PROGRESS
CSS
4
star
43

research

Jupyter Notebook
4
star
44

lbry-unity

Unity Package SDK for LBRY
JavaScript
4
star
45

open.lbry.com

A simple page that allows hotlinking content on the LBRY blockchain
HTML
3
star
46

speechbot

A Slack bot for https://spee.ch
JavaScript
3
star
47

SpeechVR

VR model viewer prototype, works with AltspaceVR
JavaScript
2
star
48

lbry-android-sdk

The LBRY SDK packaged as an Android AAR library
C
2
star
49

cantina

Go
2
star
50

lbry.id

Own your identity online
HTML
2
star
51

errors.go

Better error handling
Go
2
star
52

lbry-desktop-alpha-releases

Repo for testing updates
2
star
53

query.go

Utils for working with queries in Go
Go
2
star
54

dashboard

Python
1
star
55

proposals

Discussion of large projects
1
star
56

SpeechShare

Objective-C
1
star
57

timing-scripts

A work in progress collection of timing scripts
JavaScript
1
star
58

sentinel

Watcher of the Blockchain
Go
1
star
59

web-wallet

Non-custodial transaction signing for web apps
TypeScript
1
star
60

wallet-sync-server

Go
1
star
61

lightseeker.go

This project benchmarks search results from lighthouse
Go
1
star