A browser and wallet for LBRY, the decentralized, user-controlled content marketplace.
Find a file
saltrafael b75a4014b6
Re-design comment threads (#1489)
* Redesign threadline and fetching state

- threadline goes right below channel avatar, mimicking reddits implementation, has a increase effect on hover and is slimmer, creating more space for comments on screen
- fetching state now replaces show/hide button, also mimicking reddit, and now says that it is loading, instead of a blank spinner, and also improves space a bit

* Redesign comment threads

- Allow for infinite comment chains
- Can go back and forth between the pages
- Can go back to all comments or to the first comment in the chain
- Some other improvements, which include:
- add title on non-drawer comment sections (couldn't see amount of comments)
- fix Expandable component (would begin expanded and collapse after the effect runs, which looked bad and shifted the layout, now each comments greater than the set length begins collapsed)
- used constants for consistency

* Fix replying to last thread comment

* Fix buttons condition (only on fetched comment to avoid deleted case)

* Fix auto-scroll

* Bring back instant feedback for Show More replies

* Improve thread back links

- Now going back to all comments links the top-level comment for easier navigation
- Going back to ~ previous ~ now goes back into the chain instead of topmost level

* Clear timeouts due to unrelated issue

* Fix deep thread linked comment case and more scroll improvements

* More minor changes

* Flow

* Fix commentList tile style

* Fix long channel names overflowing on small screens

* More scroll changes

* Fix threadline

* Revert "Fix long channel names overflowing on small screens"

This reverts commit e4d2dc7da5861ed8136a60f3352e41a690cd4d33.

* Fix replies fetch

* Revert "Fix replies fetch"

This reverts commit ec70054675a604a7a5f3764ba07c36bf7b0f49c8.

* Cleanup and make smooth

* Always use linked comment on threads

* Cleanup

* Higlight thread comment

* Fix comment body styles
2022-05-16 06:22:13 -04:00
.github update videoplayer 2022-02-08 13:34:37 -05:00
.tx make "I Understand" acknowledgement work for i18n case 2019-10-13 12:42:55 -04:00
build working 2020-12-16 10:52:22 -05:00
custom initial PR for custom homepages - take 2 2020-11-10 12:08:19 -05:00
electron Remove use-zoom 2021-11-09 15:57:12 +08:00
extras rename field 2022-05-12 18:35:20 -04:00
flow-typed Re-design comment threads (#1489) 2022-05-16 06:22:13 -04:00
homepages Revert "Code-split homepages" 2021-10-28 01:33:46 +08:00
static Fix comment_create verification 2022-05-06 11:31:42 -04:00
ui Re-design comment threads (#1489) 2022-05-16 06:22:13 -04:00
web Temporarily prevent invalid get calls until we figure it out 2022-05-13 12:08:28 -04:00
.env.defaults getHtml/routes/rss: fetch streaming_url instead of generating it. 2022-05-13 20:23:17 +08:00
.eslintignore inline-attachment: move to local copy + handle xhr errors 2022-04-01 12:36:49 -04:00
.eslintrc Add pre-roll ads 2021-07-13 00:06:32 -04:00
.flowconfig Category: Hide "Repost" from ContentType filter, except for WildWest 2022-04-25 08:49:46 -04:00
.gitignore Ignore .vscode directory to allow disabling js typechecking. (#712) 2022-01-17 08:39:40 -05:00
.lintstagedrc.json Lint '/extras/*' + fixes 2021-10-19 20:40:08 +08:00
.prettierignore Use non-VHS link when "auto" matches non-VHS quality 2022-04-14 02:41:23 -04:00
.prettierrc.json redesign channel page 2019-05-06 23:29:50 -04:00
.sentryclirc update iframe type + sentry 2022-03-02 12:45:26 -05:00
babel.config.js use same code for handling open links on lbry.tv and desktop 2019-12-03 13:25:17 -05:00
config.js getHtml/routes/rss: fetch streaming_url instead of generating it. 2022-05-13 20:23:17 +08:00
CONTRIBUTING.md More cleanup 2022-01-31 11:39:03 -05:00
electron-builder.json remove 32 bit build 2021-01-25 14:24:57 -05:00
LICENSE Bump copyright year to 2021 2021-02-17 17:40:00 -05:00
package.json Bump @mui/material 2022-04-25 09:24:07 -04:00
postcss.config.js redesign channel page 2019-05-06 23:29:50 -04:00
README.md README: remove obsolete items + improve formatting 2022-02-26 21:19:01 +08:00
webpack.base.config.js Enable BundleAnalyzerPlugin + remove 'yarn analyze' 2021-11-11 00:07:18 +08:00
webpack.electron.config.js Initial commit for LBRY-First 2020-07-08 14:23:43 -04:00
yarn.lock De-dup packages 2022-04-25 09:24:07 -04:00

Odysee Frontend - Odysee.com

This repo contains the UI and front end code that powers Odysee.com.

npm chat on Discord

Table of Contents

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

Usage

Go to the website to interact on this frontend.

Running from Source

Prerequisites

  1. Clone (or fork) this repository: git clone https://github.com/OdyseeTeam/odysee-frontend
  2. Change directory into the cloned repository: cd odysee-frontend
  3. Install the dependencies: yarn

Run the web app for development

yarn dev:web

  • This uses webpack-dev-server and includes hot-reloading. If you want to debug the web server we use in production you can run yarn dev:web-server. This starts a server at localhost:1337 and does not include hot reloading.

Customize the web app

  • In root directory, duplicate the .env.default file as .env and make customizations there.
    cp .env.defaults .env
    nano .env
    
  • To specify your own OG-IMAGE:
    • Either place a png named v2-og.png in the /custom folder or specify the OG_IMAGE_URL in .env file.
  • To specify your own channels to be followed on first run:
    • AUTO_FOLLOW_URLS=lbry://@chan#123...a lbry://@chan2#456...a
  • To customize the homepage content:
    1. Add CUSTOM_HOMEPAGE=true to the .env file.
    2. Copy /custom/homepage.example.js to /custom/homepage.js and make desired changes to homepage.js.
  • Finally, run NODE_ENV=production yarn compile:web to rebuild.
    • Note: You do not need to edit the .env file in the /web folder - that is copied during compilation.

Deploy the web app (experimental)

  1. Create a server with a domain name and a reverse proxy https to port 1337.
  2. Install pm2, node v10, yarn
  3. Clone this repo
  4. Make any customizations as above
  5. Run yarn to install
  6. Run NODE_ENV=production yarn compile:web to build
  7. Set up pm2 to start ./web/index.js

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 ❤️ 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

For security issues, please reach out to security@odysee.com