The LBRY app is a graphical browser for the decentralized content marketplace provided by the LBRY protocol. It is essentially the lbry daemon bundled with an UI using Electron.
+
Provides a secured payment gateway and address subscription service between the lbry-sdk and the blockchain protocol.
+ `;
+ }
}
diff --git a/app/dist/type b/app/dist/type
deleted file mode 160000
index e936317..0000000
--- a/app/dist/type
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit e936317f4bd014640789a41f9ce8d9834e55b077
diff --git a/app/dist/type/inter/400.woff b/app/dist/type/inter/400.woff
new file mode 100644
index 0000000..8888d9d
Binary files /dev/null and b/app/dist/type/inter/400.woff differ
diff --git a/app/dist/type/inter/400.woff2 b/app/dist/type/inter/400.woff2
new file mode 100644
index 0000000..8493d15
Binary files /dev/null and b/app/dist/type/inter/400.woff2 differ
diff --git a/app/dist/type/inter/400i.woff b/app/dist/type/inter/400i.woff
new file mode 100644
index 0000000..69d4299
Binary files /dev/null and b/app/dist/type/inter/400i.woff differ
diff --git a/app/dist/type/inter/400i.woff2 b/app/dist/type/inter/400i.woff2
new file mode 100644
index 0000000..019ef84
Binary files /dev/null and b/app/dist/type/inter/400i.woff2 differ
diff --git a/app/dist/type/inter/500.woff b/app/dist/type/inter/500.woff
new file mode 100644
index 0000000..9fcabdd
Binary files /dev/null and b/app/dist/type/inter/500.woff differ
diff --git a/app/dist/type/inter/500.woff2 b/app/dist/type/inter/500.woff2
new file mode 100644
index 0000000..7878abe
Binary files /dev/null and b/app/dist/type/inter/500.woff2 differ
diff --git a/app/dist/type/inter/500i.woff b/app/dist/type/inter/500i.woff
new file mode 100644
index 0000000..9d28b54
Binary files /dev/null and b/app/dist/type/inter/500i.woff differ
diff --git a/app/dist/type/inter/500i.woff2 b/app/dist/type/inter/500i.woff2
new file mode 100644
index 0000000..9581d85
Binary files /dev/null and b/app/dist/type/inter/500i.woff2 differ
diff --git a/app/dist/type/inter/600.woff b/app/dist/type/inter/600.woff
new file mode 100644
index 0000000..f7cd585
Binary files /dev/null and b/app/dist/type/inter/600.woff differ
diff --git a/app/dist/type/inter/600.woff2 b/app/dist/type/inter/600.woff2
new file mode 100644
index 0000000..bf08df5
Binary files /dev/null and b/app/dist/type/inter/600.woff2 differ
diff --git a/app/dist/type/inter/600i.woff b/app/dist/type/inter/600i.woff
new file mode 100644
index 0000000..6257a08
Binary files /dev/null and b/app/dist/type/inter/600i.woff differ
diff --git a/app/dist/type/inter/600i.woff2 b/app/dist/type/inter/600i.woff2
new file mode 100644
index 0000000..5ad9722
Binary files /dev/null and b/app/dist/type/inter/600i.woff2 differ
diff --git a/app/dist/type/inter/700.woff b/app/dist/type/inter/700.woff
new file mode 100644
index 0000000..f1350ee
Binary files /dev/null and b/app/dist/type/inter/700.woff differ
diff --git a/app/dist/type/inter/700.woff2 b/app/dist/type/inter/700.woff2
new file mode 100644
index 0000000..bb570a2
Binary files /dev/null and b/app/dist/type/inter/700.woff2 differ
diff --git a/app/dist/type/inter/700i.woff b/app/dist/type/inter/700i.woff
new file mode 100644
index 0000000..9260375
Binary files /dev/null and b/app/dist/type/inter/700i.woff differ
diff --git a/app/dist/type/inter/700i.woff2 b/app/dist/type/inter/700i.woff2
new file mode 100644
index 0000000..abd6f4b
Binary files /dev/null and b/app/dist/type/inter/700i.woff2 differ
diff --git a/app/dist/type/inter/800.woff b/app/dist/type/inter/800.woff
new file mode 100644
index 0000000..766e19a
Binary files /dev/null and b/app/dist/type/inter/800.woff differ
diff --git a/app/dist/type/inter/800.woff2 b/app/dist/type/inter/800.woff2
new file mode 100644
index 0000000..8a90dcd
Binary files /dev/null and b/app/dist/type/inter/800.woff2 differ
diff --git a/app/dist/type/inter/800i.woff b/app/dist/type/inter/800i.woff
new file mode 100644
index 0000000..cb8dadc
Binary files /dev/null and b/app/dist/type/inter/800i.woff differ
diff --git a/app/dist/type/inter/800i.woff2 b/app/dist/type/inter/800i.woff2
new file mode 100644
index 0000000..4b4412d
Binary files /dev/null and b/app/dist/type/inter/800i.woff2 differ
diff --git a/app/dist/type/inter/900.woff b/app/dist/type/inter/900.woff
new file mode 100644
index 0000000..c456f0d
Binary files /dev/null and b/app/dist/type/inter/900.woff differ
diff --git a/app/dist/type/inter/900.woff2 b/app/dist/type/inter/900.woff2
new file mode 100644
index 0000000..ca99ae3
Binary files /dev/null and b/app/dist/type/inter/900.woff2 differ
diff --git a/app/dist/type/inter/900i.woff b/app/dist/type/inter/900i.woff
new file mode 100644
index 0000000..609f1b0
Binary files /dev/null and b/app/dist/type/inter/900i.woff differ
diff --git a/app/dist/type/inter/900i.woff2 b/app/dist/type/inter/900i.woff2
new file mode 100644
index 0000000..538414d
Binary files /dev/null and b/app/dist/type/inter/900i.woff2 differ
diff --git a/app/helpers/github.js b/app/helpers/github.js
index 6f95415..3d5bd88 100644
--- a/app/helpers/github.js
+++ b/app/helpers/github.js
@@ -30,6 +30,11 @@ String.prototype.escape = function() {
let client;
if (typeof process.env.GITHUB_OAUTH_TOKEN !== "undefined") {
+ // new octokit({
+ // auth: `token ${process.env.GITHUB_OAUTH_TOKEN}`
+ // });
+ // https://github.com/octokit/rest.js/issues/1207
+
octokit.authenticate({
type: "oauth",
token: process.env.GITHUB_OAUTH_TOKEN
diff --git a/app/sass/partials/_navigation.scss b/app/sass/partials/_navigation.scss
index 8b96ee5..1cdb18e 100644
--- a/app/sass/partials/_navigation.scss
+++ b/app/sass/partials/_navigation.scss
@@ -9,7 +9,8 @@
position: fixed;
z-index: 10;
- > div:first-of-type {
+ > ul:first-of-type {
+ overflow: hidden;
position: relative;
@media (min-width: 701px) {
@@ -39,7 +40,7 @@
}
.navigation__item {
- overflow: hidden;
+ // overflow: hidden;
position: relative;
@media (max-width: 700px) {
@@ -53,6 +54,19 @@
}
}
+ &:not(:hover) {
+ a::after {
+ bottom: -3px;
+ }
+ }
+
+ &:hover,
+ &.active {
+ a::after {
+ bottom: 0;
+ }
+ }
+
&:first-of-type {
@include hide-text;
width: 10rem; height: 3rem;
@@ -65,66 +79,99 @@
flex: 1;
}
- &:not(:first-of-type):not([href="http://localhost:8000"]):not([href="https://lbry.io"]) {
- &::after {
- width: 100%; height: 3px;
- left: 0;
+ &:not(.logo) {
+ margin-right: 0.5rem;
- background-color: $lbry-teal-3;
- content: "";
- position: absolute;
- transition: bottom 0.2s;
+ a {
+ color: inherit;
+ font-size: 1rem;
+ line-height: 4rem;
+
+ &:not([href="http://localhost:8000"]):not([href="https://lbry.io"]) {
+ &::after {
+ width: 100%; height: 3px;
+ left: 0;
+
+ background-color: $lbry-teal-3;
+ content: "";
+ position: absolute;
+ transition: bottom 0.2s;
+ }
+ }
}
+ }
+
+ &.parent {
+ display: inline-flex;
&:not(:hover) {
- &::after {
- bottom: -3px;
+ ul {
+ width: 0; height: 0;
+
+ opacity: 0;
+ visibility: hidden;
}
}
- &:hover,
- &.active {
- &::after {
- bottom: 0;
+ &:hover {
+ ul {
+ width: 100%;
+ padding-left: 1rem;
+ }
+ }
+
+ ul {
+ background-color: $lbry-white;
+ display: inline-flex;
+ position: relative;
+ transition: opacity 0.2s;
+
+ &::before {
+ height: 100%;
+ top: 0; left: 0;
+
+ content: "→";
+ font-size: 1rem;
+ line-height: 4rem;
+ opacity: 0.3;
+ position: absolute;
}
}
}
- &:not(:first-of-type) {
- color: inherit;
- font-size: 1rem;
- line-height: 4rem;
- }
+ a {
+ height: 100%;
+ display: block;
- &:not([href="http://localhost:8000"]):not([href="https://lbry.io"]) {
- padding-right: 0.5rem;
- padding-left: 0.5rem;
- }
-
- &[href="http://localhost:8000"],
- &[href="https://lbry.io"] {
- color: $lbry-white;
- margin-right: 0.5rem;
- padding-right: 1rem;
- padding-left: 1rem;
-
- &:not(:hover)::after {
- background-color: $lbry-black;
+ &:not([href="http://localhost:8000"]):not([href="https://lbry.io"]) {
+ padding-right: 0.5rem;
+ padding-left: 0.5rem;
}
- &:hover::after {
- background-color: $lbry-teal-3;
- }
+ &[href="http://localhost:8000"],
+ &[href="https://lbry.io"] {
+ color: $lbry-white;
+ padding-right: 1rem;
+ padding-left: 1rem;
- &::after {
- width: 100%; height: 2rem;
- top: 1rem; left: 0;
+ &:not(:hover)::after {
+ background-color: $lbry-black;
+ }
- border-radius: 3px;
- content: "";
- position: absolute;
- transition: background-color 0.2s;
- z-index: -1;
+ &:hover::after {
+ background-color: $lbry-teal-3;
+ }
+
+ &::after {
+ width: 100%; height: 2rem;
+ top: 1rem; left: 0;
+
+ border-radius: 3px;
+ content: "";
+ position: absolute;
+ transition: background-color 0.2s;
+ z-index: -1;
+ }
}
}
}
diff --git a/documents/contribute.md b/documents/contribute.md
index 4d4edab..7a12774 100644
--- a/documents/contribute.md
+++ b/documents/contribute.md
@@ -21,10 +21,10 @@ If you want to contribute to LBRY, there's definitely something for you! The fir
| Component | Language (Toolset) | What Is It
--- | --- | ---
| [lbrycrd](https://github.com/lbryio/lbrycrd) | C++ | A full node for the LBRY blockchain, including a standalone wallet. Used by miners and some applications. Most consumer applications do not bundle [[lbrycrd]] directly, and instead bundle [[lbry-sdk]].
-| [lbry-sdk](https://github.com/lbryio/lbry) | Python (Twisted) | A daemon that can be used directly or to develop other applications. Provides convenience [APIs](/api/sdk), bundles an SPV wallet ([[torba]]), and contains an implementation of the LBRY data network. |
+| [lbry-sdk](https://github.com/lbryio/lbry) | Python (asyncio) | A daemon that can be used directly or to develop other applications. Provides convenience [APIs](/api/sdk), bundles an SPV wallet ([[torba]]), and contains an implementation of the LBRY data network. |
| [torba](https://github.com/lbryio/torba) | Python | An [[SPV]] (Simple Payment Verification) wallet. Bundled with [[lbry-sdk]]. |
-| [lbryumx](https://github.com/lbryio/lbryumx) | Protobuf, Python | The wallet server used by [[torba]].
-| [lbry-schema](https://github.com/lbryio/lbryschema) | Protobuf, Python | Defines the structure of the metadata stored in the LBRY blockchain.
+| [wallet server](https://github.com/lbryio/lbry/tree/master/lbrynet/extras/wallet/server) | Protobuf, Python | The wallet server used by [[torba]].
+| [schema](https://github.com/lbryio/lbry/tree/master/lbrynet/schema) | Protobuf, Python | Defines the structure of the metadata stored in the LBRY blockchain.
### Official Applications
| Application | Language (Toolset) | What Is It
diff --git a/documents/glossary.md b/documents/glossary.md
index 6aaa97c..97972c7 100644
--- a/documents/glossary.md
+++ b/documents/glossary.md
@@ -12,7 +12,7 @@ We encourage the submission of changes and additions to this glossary.
A Binary Large Object (BLOB) is a collection of binary data stored as a single entity in a database management system. When files are uploaded to the LBRY peer to peer network, they are broken down into 2MB encrypted blobs which are then shared to other peers.
-A [[manifest]] blob is also created to index the multiple content blobs that were created from the file. A [[stream]] is the collection of all these blobs particlar to one published file.
+A [[manifest]] blob is also created to index the multiple content blobs that were created from the file. A [[stream]] is the collection of all these blobs particlar to one published file. See [Encoding](https://spec.lbry.io/#encoding) in the specification.
### Block
@@ -44,19 +44,19 @@ Creating a channel claim certificate allows you to group and identify claims bas
### Claim
-A claim (ClaimTrie) is the data structure which LBRY uses to store claims to names. It uses a trie to efficiently store all claimed names, which can then be hashed the same way a Merkle tree is hashed. The root hash of the ClaimTrie is stored in the block header of each LBRY block, enabling nodes in the LBRY network to efficiently and securely validate the state of the ClaimTrie. [Read more](https://lbry.io/faq/claimtrie-implementation)
+A claim (ClaimTrie) is the data structure which LBRY uses to store claims to names. It uses a trie to efficiently store all claimed names, which can then be hashed the same way a Merkle tree is hashed. The root hash of the ClaimTrie is stored in the block header of each LBRY block, enabling nodes in the LBRY network to efficiently and securely validate the state of the ClaimTrie. See [Stake & Claims](https://spec.lbry.io/#stakes) in the specification and [Read more](https://lbry.io/faq/claimtrie-implementation)
### Claim Deposit
-When creating a channel claim or publishing content onto the LBRY blockchain, a small amount LBC (or more) must be deposited to reserve the name space in the claimtrie. See our [naming documentation](https://lbry.io/faq/naming) for more information.
+When creating a channel claim or publishing content onto the LBRY blockchain, a small amount LBC (or more) must be deposited to reserve the name space in the claimtrie. See [Stake & Claims](https://spec.lbry.io/#stakes) in the specification and [naming documentation](https://lbry.io/faq/naming) for more information.
### Claim Sequence
-The claim sequence provides a way to determine which order a claim was created at a particular claim name and enables claim resolution via this modifier. If someone had the first claim at lbry://one, anyone could reference that claim as `lbry://one:1`. See [URI documentation](https://lbry.tech/resources/uri) for more details.
+The claim sequence provides a way to determine which order a claim was created at a particular claim name and enables claim resolution via this modifier. If someone had the first claim at lbry://one, anyone could reference that claim as `lbry://one:1`. See [Stake & Claims](https://spec.lbry.io/#stakes) in the specification and [URI documentation](https://lbry.tech/resources/uri) for more details.
### Claim Support
-A special type of transaction that includes claim information, a LBC address, and a LBC value. Supports to one's own address increase the bid value of a claim and can be revoked anytime. Supports to an outside address also increase the value, but can only be revoked by the receiver (tip mechanism).
+A special type of transaction that includes claim information, a LBC address, and a LBC value. Supports to one's own address increase the bid value of a claim and can be revoked anytime. Supports to an outside address also increase the value, but can only be revoked by the receiver (tip mechanism). See [supports](https://spec.lbry.io/#supports) in the specification.
### Cold Storage
@@ -194,7 +194,7 @@ Main LBRY network and its blockchain. The term is mostly used in comparison to *
### Manifest
-A blob that contains information about all the other blobs in its stream (the content blobs), in JSON format. Sometimes referred to as the [[Stream Descriptor (SD) Blob]], this blob lists each of the other blobs in the stream, in order, along with the filename for the content, and the cryptographic key needed to decode the content blobs [[the stream key]].
+A blob that contains information about all the other blobs in its stream (the content blobs), in JSON format. Sometimes referred to as the [[Stream Descriptor (SD) Blob]], this blob lists each of the other blobs in the stream, in order, along with the filename for the content, and the cryptographic key needed to decode the content blobs [[the stream key]]. See [Content Blobs](https://spec.lbry.io/#content-blobs) in the specification.
### Main Chain
@@ -288,6 +288,10 @@ The resolve API command returns all available information about a claim or chann
Amount of newly generated LBRY credits that a *miner* may claim in a new block. The first transaction in the block allows a miner to claim currently allowed reward as well as all *transaction fees* from all transactions in the block. For security reasons, rewards cannot be *spent* before 100 blocks have been built on top of the current block.
+### Schema
+
+The schema defines the structure of the data (metadata) that is stored in claims in the LBRY blockchain. See [Metadata](https://spec.lbry.io/#metadata) in the white paper, and [lbry.tech/resources/schema](https://lbry.tech/resources/schema) for more information.
+
### Script
A compact Turing-incomplete programming language used in transaction *inputs* and *outputs*. Scripts are interpreted by a Forth-like stack machine: each operation manipulates data on the stack. Most scripts follow the standard pattern and verify the digital *signature* provided in the transaction *input* against a *public key* provided in the previous transaction's *output*. Both signatures and public keys are provided using scripts. Scripts may contain complex conditions, but can never change any amounts being transferred. Amount is stored in a separate field in a *transaction output*.
@@ -326,11 +330,11 @@ SPV is an abbreviation for [[Simplified Payment Verification]].
### Stream
-Streaming media is multimedia that is constantly received by and presented to an end-user while being delivered by a provider. In LBRY, streams are associated with claim data in order to provide the capability to download files over a Peer to Peer network.
+Streaming media is multimedia that is constantly received by and presented to an end-user while being delivered by a provider. In LBRY, streams are associated with claim data in order to provide the capability to download files over a Peer to Peer network. See [Streams](https://spec.lbry.io/#streams) in the specification.
### Stream Descriptor (SD) Blob
-see [[manifest]] The initial blob of a stream, which contains encryption information as well as points to other blobs required for a stream.
+Same as [[manifest]] The initial blob of a stream, it contains encryption information and points to other blobs required for the stream.
### Stream Hash
@@ -342,11 +346,11 @@ Found in the [[manifest]], this is the cryptographic key needed to decrypt the c
### Support (Claim Support)
-A support is a wallet send transaction that includes claim information, which results in adding to a claim's effective amount. A tip is a special type of support that is sent from one wallet to another, so that the receiver can send it to their own wallet.
+Same as [[Claim Support]]. A support is a wallet send transaction that includes claim information, which results in adding to a claim's effective amount. A tip is a special type of support that is sent from one wallet to another, so that the receiver can send it to their own wallet.
### Takeover Period
-In order to take over a claim at an existing vanity URL, the bid must be higher and the takeover period must pass. In simple terms, the longer the claim is held, the longer the takeover period. For each month held, a day is added to the takeover period for a maximum of 7 days. See [Claimtrie Bid States section here](https://lbry.io/faq/claimtrie-implementation) for more information.
+In order to take over a claim at an existing vanity URL, the bid must be higher and the takeover period must pass. In simple terms, the longer the claim is held, the longer the takeover period. For each month held, a day is added to the takeover period for a maximum of 7 days. See [controlling claims](https://spec.lbry.io/#controlling) in the specification, and [Claimtrie Bid States section here](https://lbry.io/faq/claimtrie-implementation) for more information.
### Target
diff --git a/documents/resources/api-wrappers.md b/documents/resources/api-wrappers.md
index 6db14eb..638b008 100644
--- a/documents/resources/api-wrappers.md
+++ b/documents/resources/api-wrappers.md
@@ -14,4 +14,5 @@ Interested in creating one for a language not shown below? See our [bounties pag
| Lua | [ocornoc](https://github.com/ocornoc/) | [lualbry](https://github.com/ocornoc/luabry) | Completed |
| PHP | [lyoshenka](https://github.com/lyoshenka/) | [php-api](https://github.com/lbryio/php-api) | Completed |
| Ruby | [dan1d](https://github.com/dan1d) | [lbry-api-ruby](https://github.com/dan1d/lbry-api-ruby) / [Ruby Gem](https://rubygems.org/gems/lbry) | Completed |
-| Rust | [dlight](https://github.com/dlight) | [lbry-rs](https://github.com/dlight/lbry-rs) | In progress |
+| Rust | [zxawry](https://github.com/zxawry) | [lbry-rs](https://github.com/zxawry/lbry-rs) | Completed |
+| Dart | [osilkin98](https://github.com/osilkin98) | [lbrydart](https://github.com/osilkin98/lbrydart) | Completed |
diff --git a/documents/resources/daemon-settings.md b/documents/resources/daemon-settings.md
index 4d0ddc2..528fa0e 100644
--- a/documents/resources/daemon-settings.md
+++ b/documents/resources/daemon-settings.md
@@ -72,5 +72,5 @@ Configuration options are organized by their respective areas: Files, Wallet, Ne
### Other
| Setting | Format | Default value | Sample Values | Description |
|--------------------|---------|---------------|--------------------------------|---------------------------------------------------------------------------------------------------------------|
-| components_to_skip | list | [] | ['reflector','hash_announcer'] | Disabe components, [see entire list here](https://github.com/lbryio/lbry/wiki/Component-Dependencies-Table) |
+| components_to_skip | list | [] | ['reflector','hash_announcer'] | Disable components, [see entire list here](https://github.com/lbryio/lbry/wiki/Component-Dependencies-Table) |
| share_usage_data | boolean | true | false | Share analytics data |
diff --git a/package.json b/package.json
index 8e192a1..df57121 100755
--- a/package.json
+++ b/package.json
@@ -3,7 +3,7 @@
"dependencies": {
"@babel/polyfill": "^7.2.5",
"@inc/fastify-ws": "^1.1.0",
- "@octokit/rest": "^16.10.0",
+ "@octokit/rest": "^16.13.1",
"@slack/client": "^4.8.0",
"app-root-path": "^2.1.0",
"async": "^2.6.1",
@@ -42,8 +42,8 @@
"@babel/cli": "^7.2.3",
"@babel/core": "^7.2.2",
"@babel/plugin-external-helpers": "7.2.0",
- "@babel/plugin-proposal-class-properties": "7.2.3",
- "@babel/plugin-proposal-decorators": "7.2.3",
+ "@babel/plugin-proposal-class-properties": "7.3.0",
+ "@babel/plugin-proposal-decorators": "7.3.0",
"@babel/plugin-proposal-export-namespace-from": "7.2.0",
"@babel/plugin-proposal-function-sent": "7.2.0",
"@babel/plugin-proposal-json-strings": "7.2.0",
@@ -51,22 +51,22 @@
"@babel/plugin-proposal-throw-expressions": "7.2.0",
"@babel/plugin-syntax-dynamic-import": "7.2.0",
"@babel/plugin-syntax-import-meta": "7.2.0",
- "@babel/preset-env": "^7.2.3",
+ "@babel/preset-env": "^7.3.1",
"@babel/register": "^7.0.0",
"@inc/eslint-config": "^1.1.2",
"@inc/sasslint-config": "^1.1.2",
"@lbry/color": "^1.1.0",
- "@lbry/components": "^1.8.0",
- "eslint": "^5.12.0",
+ "@lbry/components": "^1.8.1",
+ "eslint": "^5.12.1",
"husky": "^1.3.1",
"nodemon": "^1.18.9",
"npm-run-all": "^4.1.5",
"pino-pretty": "^2.5.0",
- "sass": "^1.16.0",
+ "sass": "^1.16.1",
"sass-lint": "^1.12.1",
"snazzy": "^8.0.0",
"standardx": "^3.0.1",
- "updates": "^6.0.3"
+ "updates": "^6.2.1"
},
"engines": {
"node": ">=10.2 <10.15.1"
@@ -96,5 +96,5 @@
"app/dist"
]
},
- "version": "3.4.0"
+ "version": "3.5.1"
}