lbry-desktop/README.md

57 lines
2.6 KiB
Markdown
Raw Normal View History

2017-02-20 21:50:06 +01:00
# LBRY App
2017-01-16 20:06:53 +01:00
2017-03-09 18:31:07 +01:00
This is a graphical browser for the decentralized content marketplace provided by the [LBRY](https://lbry.io) protocol. It is essentially the [lbry daemon](https://github.com/lbryio/lbry) bundled with a UI using [Electron](http://electron.atom.io/).
2017-01-16 20:06:53 +01:00
2017-06-02 00:24:20 +02:00
![App Screenshot](https://lbry.io/img/lbry-ui.png)
2017-02-21 19:10:20 +01:00
## Installing
2017-01-18 17:32:01 +01:00
We provide installers for Windows, macOS, and Debian-based Linux.
2017-05-19 16:30:13 +02:00
| | Windows | macOS | Linux |
| --- | --- | --- | --- |
| Latest Stable Release | [Download](https://lbry.io/get/lbry.exe) | [Download](https://lbry.io/get/lbry.dmg) | [Download](https://lbry.io/get/lbry.deb) |
| Latest Prerelease | [Download](https://lbry.io/get/lbry.pre.exe) | [Download](https://lbry.io/get/lbry.pre.dmg) | [Download](https://lbry.io/get/lbry.pre.deb) |
Our [releases page](https://github.com/lbryio/lbry-app/releases/latest) also contains the latest release, pre-releases, and past builds.
2017-01-16 20:06:53 +01:00
2017-02-21 19:10:20 +01:00
To install from source or make changes to the application, continue reading below.
2017-01-16 20:06:53 +01:00
2017-02-21 19:10:20 +01:00
## Development
2017-01-16 20:06:53 +01:00
2017-06-02 00:20:29 +02:00
### One-time Setup
2017-01-16 20:06:53 +01:00
1. Install npm and node (v6 and above required, use [nvm](https://github.com/creationix/nvm/blob/master/README.md) if having trouble)
2. Install keytar and libsecret (see [keytar repository](https://github.com/atom/node-keytar) )
3. Install yarn by running: npm install -g yarn (may require elevated permissions)
4. Check out this repo.
5. Set up a Python virtual environment, or live on the wild side.
6. Run `./build.sh`. This builds the UI assets and puts them into `app/dist`. It also downloads [lbry daemon](https://github.com/lbryio/lbry/releases).
2017-01-16 20:06:53 +01:00
2017-06-02 00:20:29 +02:00
### Running
2017-01-16 20:06:53 +01:00
2017-06-02 00:20:29 +02:00
Run `./node_modules/.bin/electron app`
2017-02-20 21:50:06 +01:00
2017-06-02 00:20:29 +02:00
### Ongoing Development
1. `cd ui`
2. `./watch.sh`
2017-02-20 21:50:06 +01:00
2017-06-02 00:21:07 +02:00
This will set up a monitor that will automatically compile any changes to JS or CSS folders inside of the `ui` folder. This allows you to make changes and see them immediately by reloading the app.
2017-01-16 20:06:53 +01:00
2017-06-02 00:20:29 +02:00
### Packaging
2017-01-16 20:06:53 +01:00
2017-02-20 21:50:06 +01:00
We use [electron-builder](https://github.com/electron-userland/electron-builder)
to create distributable packages, which is run by calling:
2017-01-16 20:06:53 +01:00
2017-02-20 21:50:06 +01:00
`node_modules/.bin/build -p never`
2017-02-21 19:10:20 +01:00
### Development on Windows
This project has currently only been worked on in Linux and macOS. If you are on Windows, you can
checkout out the build steps in [appveyor.yml](https://github.com/lbryio/lbry-app/blob/master/.appveyor.yml) and probably figure out something from there.
2017-05-31 12:59:58 +02:00
## Internationalization
If you want to help translating the lbry-app, you can copy the en.json file in /app/locales and modify the values while leaving the keys as their original English strings. An example for this would be: `"Skip": "Überspringen",` Translations should automatically show up in options.