MCPcopy Index your code
hub / github.com/lbryio/lbry-desktop

github.com/lbryio/lbry-desktop @v0.53.9 sqlite

repository ↗ · DeepWiki ↗ · release v0.53.9 ↗
2,751 symbols 8,666 edges 1,092 files 40 documented · 1%
README

LBRY App

This repo contains the UI code that powers the official LBRY desktop app. 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 a UI using Electron.

npm Build Status GitHub contributors

forthebadge forthebadge

App GIF

Table of Contents

  1. Install
  2. Usage
  3. Running from Source
  4. Contributing
  5. License
  6. Security
  7. Contact

Install

Windows Linux MacOS

We provide installers for Windows, macOS (v10.12.4, Sierra, or greater), and Debian-based Linux. See community maintained builds section for alternative Linux installations.

Windows macOS Linux
Latest Stable Release Download Download Download
Latest Pre-release Download Download Download

Our releases page also contains the latest release, pre-releases, and past builds. Note: If the deb fails to install using the Ubuntu Software Center, install manually via sudo dpkg -i <path to deb>. You'll need to run sudo apt-get install -f if this is the first time installing it to install dependencies

To install from source or make changes to the application, continue to the next section below.

Community maintained builds for Arch Linux and Flatpak are available, see below. These installs will need to be updated manually as the in-app update process only supports Debian installs at this time. Note: If coming from a deb install, the directory structure is different and you'll need to migrate data.

Flatpak Arch Nixpkgs ARM/ARM64
Latest Release FlatHub Page AUR Package Nixpkgs Build Guide
Maintainers @kcSeb @RubenKelevra @Enderger @Madiator2011

Usage

Start the installed application to interact with the LBRY network.

Running from Source

Prerequisites

  • Git
  • Node.js (v16 required)
  • Corepack npm i -g corepack (Included in nodejs 14 LTS, 16 LTS and 17)
  • Yarn

  • Clone (or fork) this repository: git clone https://github.com/lbryio/lbry-desktop

  • Change directory into the cloned repository: cd lbry-desktop
  • If corepack is not enabled, run sudo corepack enable (the sudo is necessary for system-wide installation, if you use container, nvm etc... you might not be forced to use it)
  • Install the dependencies: yarn

Run the electron app

yarn dev

  • If you want to build and launch the production app you can run yarn build. This will give you an executable inside the /dist folder. We use electron-builder to create distributable packages.

Resetting your Packages

If the app isn't building, or yarn xxx commands aren't working you may need to just reset your node_modules. To do so you can run: rm -r node_modules && yarn or del /s /q node_modules && yarn on Windows.

If you really think something might have gone wrong, you can force your repo to clear everything that doesn't match the repo with git reset --hard HEAD && git clean -fxd && git pull -r

Contributing

We :heart: contributions from everyone and contributions to this project are encouraged, and compensated. We welcome bug reports, bug fixes and feedback is always appreciated. For more details, see CONTRIBUTING.md.

contributions welcome GitHub contributors

License

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

Security

We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is here if you need it. Previous versions up to v0.50.2 were signed by Sean Yesmunt. New Releases are signed by Jessop Breth.

Contact

The primary contact for this project is @jessopb.

Extension points exported contracts — how you extend this code

Props (Interface)
(no doc)
ui/component/common/debounced-input.jsx
Chalk (Interface)
(no doc)
flow-typed/npm/chalk_v2.x.x.js
express$RouteMethodType (Interface)
(no doc)
flow-typed/npm/express_v4.16.x.js
Stats (Interface)
(no doc)
flow-typed/npm/webpack_v4.x.x.js

Core symbols most depended-on inside this repo

buildIcon
called by 127
ui/component/common/icon-custom.jsx
doToast
called by 95
ui/redux/actions/notifications.js
makeSelectClientSetting
called by 91
ui/redux/selectors/settings.js
makeSelectClaimForUri
called by 82
ui/redux/selectors/claims.js
log
called by 81
ui/component/viewers/videoViewer/internal/plugins/videojs-recsys/plugin.js
buildEmote
called by 80
ui/constants/emotes.js
parseURI
called by 72
ui/util/lbryURI.js
on
called by 69
ui/component/fileThumbnail/FreezeframeLite/index.js

Shape

Function 2,213
Method 321
Class 213
Interface 4

Languages

TypeScript100%

Modules by API surface

static/webworkers/wasm-gen/libarchive.js96 symbols
ui/redux/selectors/claims.js86 symbols
static/webworkers/worker-bundle.js58 symbols
ui/redux/actions/app.js51 symbols
ui/redux/selectors/comments.js47 symbols
ui/redux/actions/comments.js37 symbols
ui/redux/actions/wallet.js32 symbols
ui/redux/actions/claims.js28 symbols
ui/redux/actions/user.js25 symbols
ui/redux/actions/settings.js23 symbols
ui/component/viewers/threeViewer/index.jsx23 symbols
ui/redux/selectors/collections.js20 symbols

Dependencies from manifests, versioned

@babel/core7.0.0 · 1×
@babel/plugin-proposal-class-properties7.0.0 · 1×
@babel/plugin-proposal-decorators7.3.0 · 1×
@babel/plugin-proposal-object-rest-spread7.6.2 · 1×
@babel/plugin-proposal-optional-chaining7.14.5 · 1×
@babel/plugin-syntax-dynamic-import7.2.0 · 1×
@babel/plugin-transform-flow-strip-types7.2.3 · 1×
@babel/plugin-transform-runtime7.4.3 · 1×
@babel/polyfill7.12.1 · 1×
@babel/preset-env7.12.11 · 1×
@babel/preset-flow7.12.1 · 1×
@babel/preset-react7.0.0 · 1×

For agents

$ claude mcp add lbry-desktop \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact