diff --git a/.env.defaults b/.env.defaults index 2b9c4e373..48c0ebb66 100644 --- a/.env.defaults +++ b/.env.defaults @@ -15,10 +15,7 @@ COMMENT_SERVER_API=https://comments.odysee.com/api/v2 COMMENT_SERVER_NAME=Odysee SEARCH_SERVER_API=https://lighthouse.odysee.com/search SOCKETY_SERVER_API=wss://sockety.odysee.com/ws -THUMBNAIL_CDN_URL=https://thumbnails.odysee.com/optimize/ -THUMBNAIL_HEIGHT=220 -THUMBNAIL_WIDTH=390 -THUMBNAIL_QUALITY=85 +THUMBNAIL_CDN_URL=https://image-processor.vanwanet.com/optimize/ WELCOME_VERSION=1.0 # STRIPE diff --git a/.env.ody b/.env.ody new file mode 100644 index 000000000..2d9e1313e --- /dev/null +++ b/.env.ody @@ -0,0 +1,92 @@ +# Copy this file to .env to make modifications + +# Base config + +WEBPACK_WEB_PORT=9090 +WEBPACK_ELECTRON_PORT=9091 +WEB_SERVER_PORT=1337 + +WELCOME_VERSION=1.0 + +# Custom Site info +DOMAIN=lbry.tv +URL=https://lbry.tv + +# UI +SITE_TITLE=lbry.tv +SITE_NAME=local.lbry.tv +SITE_DESCRIPTION=Meet LBRY, an open, free, and community-controlled content wonderland. +LOGO_TITLE=local.lbry.tv + +##### ODYSEE SETTINGS ####### + +MATOMO_URL=https://analytics.lbry.com/ +MATOMO_ID=4 + +# Base config +WEBPACK_WEB_PORT=9090 +WEBPACK_ELECTRON_PORT=9091 +WEB_SERVER_PORT=1337 + +## APIS +LBRY_API_URL=https://api.odysee.com +#LBRY_WEB_API=https://api.na-backend.odysee.com +#LBRY_WEB_STREAMING_API=https://cdn.lbryplayer.xyz +# deprecated: +#LBRY_WEB_BUFFER_API=https://collector-service.api.lbry.tv/api/v1/events/video +#COMMENT_SERVER_API=https://comments.lbry.com/api/v2 +WELCOME_VERSION=1.0 + +# STRIPE +STRIPE_PUBLIC_KEY='pk_live_e8M4dRNnCCbmpZzduEUZBgJO' + +## UI + +LOADING_BAR_COLOR=#e50054 + +# IMAGE ASSETS +YRBL_HAPPY_IMG_URL=https://spee.ch/spaceman-happy:a.png +YRBL_SAD_IMG_URL=https://spee.ch/spaceman-sad:d.png +LOGIN_IMG_URL=https://spee.ch/login:b.png +LOGO=https://spee.ch/odysee-logo-png:3.png +LOGO_TEXT_LIGHT=https://spee.ch/odysee-white-png:f.png +LOGO_TEXT_DARK=https://spee.ch/odysee-png:2.png +AVATAR_DEFAULT=https://spee.ch/spaceman-png:2.png +FAVICON=https://spee.ch/favicon-png:c.png + +# LOCALE +DEFAULT_LANGUAGE=en + +## LINKED CONTENT WHITELIST +KNOWN_APP_DOMAINS=open.lbry.com,lbry.tv,lbry.lat,odysee.com + +## CUSTOM CONTENT +# If the following is true, copy custom/homepage.example.js to custom/homepage.js and modify +CUSTOM_HOMEPAGE=true + +# Add channels to auto-follow on firstrun (space delimited) +AUTO_FOLLOW_CHANNELS=lbry://@Odysee#80d2590ad04e36fb1d077a9b9e3a8bba76defdf8 lbry://@OdyseeHelp#b58dfaeab6c70754d792cdd9b56ff59b90aea334 + +## FEATURES AND LIMITS +SIMPLE_SITE=true +BRANDED_SITE=odysee +# SIMPLE_SITE REPLACEMENTS +ENABLE_MATURE=false +ENABLE_UI_NOTIFICATIONS=true +ENABLE_WILD_WEST=true +SHOW_TAGS_INTRO=false + +# CENTRALIZED FEATURES +ENABLE_COMMENT_REACTIONS=true +ENABLE_FILE_REACTIONS=true +ENABLE_CREATOR_REACTIONS=true +ENABLE_NO_SOURCE_CLAIMS=true +ENABLE_PREROLL_ADS=false +SHOW_ADS=true + +CHANNEL_STAKED_LEVEL_VIDEO_COMMENTS=4 +CHANNEL_STAKED_LEVEL_LIVESTREAM=3 +WEB_PUBLISH_SIZE_LIMIT_GB=4 + +#SEARCH TYPES - comma-delimited +LIGHTHOUSE_DEFAULT_TYPES=audio,video diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 000000000..6f10abc1c --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,100 @@ +name: Node.js CI + +on: + push: + branches: [master] + pull_request: + branches: [master] + +jobs: + lint: + name: lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: Borales/actions-yarn@v2.3.0 + - run: yarn lint + + build: + needs: ['lint'] + name: 'build' + strategy: + matrix: + node-version: [14.x] + os: + - ubuntu-latest + - macos-latest + - windows-latest + runs-on: ${{ matrix.os }} + + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-node@v2-beta + with: + node-version: ${{ matrix.node-version }} + + - uses: maxim-lobanov/setup-xcode@v1 + if: startsWith(runner.os, 'mac') + with: + xcode-version: '10.3.0' + + - name: Download blockchain headers + run: | + mkdir -p ./static/daemon + curl -o ./static/daemon/headers https://headers.lbry.io/blockchain_headers_latest + ls ./static/daemon + + - name: Build + run: | + yarn global add cross-env + yarn + yarn build + node ./build/afterSignHook.js + env: + GH_TOKEN: ${{ secrets.GH_TOKEN }} + NOTARIZATION_USERNAME: ${{ secrets.NOTARIZATION_USERNAME }} + NOTARIZATION_PASSWORD: ${{ secrets.NOTARIZATION_PASSWORD }} + WIN_CSC_KEY_PASSWORD: ${{ secrets.WIN_CSC_KEY_PASSWORD }} + CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }} + WIN_CSC_LINK: https://s3.amazonaws.com/files.lbry.io/cert/win-csc-2020-2021-08.p12 + CSC_LINK: https://s3.amazonaws.com/files.lbry.io/cert/osx-csc-2021-2022.p12 + + # UI + MATOMO_URL: https://analytics.lbry.com/ + MATOMO_ID: 4 + WELCOME_VERSION: 1.0 + DOMAIN: lbry.tv + URL: https://lbry.tv + SHARE_DOMAIN_URL: https://open.lbry.com + SITE_TITLE: lbry.tv + SITE_NAME: lbry.tv + SHOW_ADS: false + YRBL_HAPPY_IMG_URL: https://cdn.lbryplayer.xyz/api/v3/streams/free/yrbl-happy/7aa50a7e5adaf48691935d55e45d697547392929/839d9a + YRBL_SAD_IMG_URL: https://cdn.lbryplayer.xyz/api/v3/streams/free/yrbl-sad/c2d9649633d974e5ffb503925e1f17d951f1bd0f/f262dd + ENABLE_COMMENT_REACTIONS: true + ENABLE_NO_SOURCE_CLAIMS: false + + DEFAULT_LANGUAGE: en + KNOWN_APP_DOMAINS: lbry.tv,lbry.lat,odysee.com + CHANNEL_STAKED_LEVEL_VIDEO_COMMENTS: 0 + + - uses: actions/upload-artifact@v2 + if: | + startsWith(runner.os, 'linux') + with: + name: Linux + path: ./dist/electron/*.* + + - uses: actions/upload-artifact@v2 + if: | + startsWith(runner.os, 'mac') + with: + name: macOS + path: ./dist/electron/*.* + + - uses: actions/upload-artifact@v2 + if: | + github.event.pull_request.head.repo.full_name == github.repository + with: + name: Windows + path: ./dist/electron/*.* diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml deleted file mode 100644 index 85a1436b9..000000000 --- a/.github/workflows/node.js.yml +++ /dev/null @@ -1,59 +0,0 @@ -# This workflow will do a clean install of node dependencies, cache/restore them, build the source code and run tests across different versions of node -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions - -name: Node.js CI - -on: - push: - branches: [master] - pull_request: - branches: [master] - -jobs: - lint: - name: lint - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v2 - - uses: Borales/actions-yarn@v2.3.0 - - run: yarn lint - - build: - needs: ['lint'] - name: 'build' - strategy: - matrix: - node-version: [14.x] - os: - - ubuntu-latest - runs-on: ${{ matrix.os }} - - steps: - - uses: actions/checkout@v2 - - uses: actions/setup-node@v2-beta - with: - node-version: ${{ matrix.node-version }} - - - name: Build - run: | - yarn global add cross-env - yarn - yarn compile:web - env: - # UI - MATOMO_URL: https://analytics.lbry.com/ - MATOMO_ID: 4 - WELCOME_VERSION: 1.0 - DOMAIN: odysee.com - URL: https://odysee.com - SHARE_DOMAIN_URL: https://odysee.com - SITE_TITLE: Odysee - SITE_NAME: Odysee - SHOW_ADS: false - YRBL_HAPPY_IMG_URL: https://cdn.lbryplayer.xyz/api/v3/streams/free/yrbl-happy/7aa50a7e5adaf48691935d55e45d697547392929/839d9a - YRBL_SAD_IMG_URL: https://cdn.lbryplayer.xyz/api/v3/streams/free/yrbl-sad/c2d9649633d974e5ffb503925e1f17d951f1bd0f/f262dd - ENABLE_COMMENT_REACTIONS: true - ENABLE_NO_SOURCE_CLAIMS: true - DEFAULT_LANGUAGE: en - KNOWN_APP_DOMAINS: lbry.tv,lbry.lat,odysee.com - CHANNEL_STAKED_LEVEL_VIDEO_COMMENTS: 4 diff --git a/.gitignore b/.gitignore index f3adf8f8a..cef7245af 100644 --- a/.gitignore +++ b/.gitignore @@ -33,6 +33,6 @@ package-lock.json !/custom/robots.disallowall !/custom/robots.allowall .env -.env.ody +!.env.ody .env.desktop .env.lbrytv diff --git a/README.md b/README.md index 0daf9f8b8..924bfa557 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,11 @@ + -# Odysee Frontend - Odysee.com +# LBRY App - https://lbry.tv -This repo contains the UI and front end code that powers Odysee.com. +This repo contains the UI code that powers the official LBRY desktop app, as well as lbry.tv. The LBRY app is a graphical browser for the decentralized content marketplace provided by the +[LBRY](https://lbry.com) protocol. It is essentially the +[lbry daemon](https://github.com/lbryio/lbry) bundled with a UI using +[Electron](https://electron.atom.io/). npm @@ -25,6 +29,7 @@ This repo contains the UI and front end code that powers Odysee.com. +![App GIF](https://spee.ch/ba/lbry-joule.gif) ## Table of Contents @@ -165,6 +170,9 @@ This project is MIT licensed. For the full license, see [LICENSE](LICENSE). ## Security -We take security seriously. Please contact security@odysee.com regarding any security issues. Our PGP key is [here](https://lbry.com/faq/pgp-key) if you need it. Previous versions up to v0.50.2 were signed by [Sean Yesmunt](https://keybase.io/seanyesmunt/key.asc). +We take security seriously. Please contact security@lbry.com regarding any security issues. Our PGP key is [here](https://lbry.com/faq/pgp-key) if you need it. Previous versions up to v0.50.2 were signed by [Sean Yesmunt](https://keybase.io/seanyesmunt/key.asc). New Releases are signed by [Jessop Breth](https://keybase.io/jessopb/key.asc). +## Contact + +The primary contact for this project is [@jessopb](https://github.com/jessopb). diff --git a/config.js b/config.js index 7f25155ad..49e215c5b 100644 --- a/config.js +++ b/config.js @@ -22,9 +22,6 @@ const config = { SHARE_DOMAIN_URL: process.env.SHARE_DOMAIN_URL, URL: process.env.URL, THUMBNAIL_CDN_URL: process.env.THUMBNAIL_CDN_URL, - THUMBNAIL_HEIGHT: process.env.THUMBNAIL_HEIGHT, - THUMBNAIL_WIDTH: process.env.THUMBNAIL_WIDTH, - THUMBNAIL_QUALITY: process.env.THUMBNAIL_QUALITY, SITE_TITLE: process.env.SITE_TITLE, SITE_NAME: process.env.SITE_NAME, SITE_DESCRIPTION: process.env.SITE_DESCRIPTION, diff --git a/package.json b/package.json index 9b31e806e..6826b3296 100644 --- a/package.json +++ b/package.json @@ -157,7 +157,7 @@ "imagesloaded": "^4.1.4", "json-loader": "^0.5.4", "lbry-format": "https://github.com/lbryio/lbry-format.git", - "lbry-redux": "lbryio/lbry-redux#0f930c4a7bfc7f164e6b3c6044050c1bc73f6ab8", + "lbry-redux": "lbryio/lbry-redux#32b578707116d45f5b51b7ab523d200e75668676", "lbryinc": "lbryio/lbryinc#0b4e41ef90d6347819dd3453f2f9398a5c1b4f36", "lint-staged": "^7.0.2", "localforage": "^1.7.1", diff --git a/ui/component/claimListDiscover/view.jsx b/ui/component/claimListDiscover/view.jsx index c244b4206..e450a2c45 100644 --- a/ui/component/claimListDiscover/view.jsx +++ b/ui/component/claimListDiscover/view.jsx @@ -450,7 +450,7 @@ function ClaimListDiscover(props: Props) {

, + contact_support: