lbryio / lbryio/lbry-sdk

thumbnails in LBRY

Open
#3,703 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
7.2k
Forks
493
PR merge metrics
No merged PRs in 30d

Description

the goal is to store claim thumbnails within the LBRY network

### changes

- every command that takes `thumbnail_url` also takes `thumbnail_path`, a path on the local filesystem to the thumbnail image
- if given, the sdk turns that file into a stream and puts the sd hash into the thumbnail Source. it also makes the file available on the DHT

there might be some complexity in the file manager or stream manager because we used to have the assumption that one claim = one stream. but with this, one claim might have two streams (the stream itself and the thumbnail)

### open questions

- there's no way to store image dimensions. is that ok?
- what filetypes are acceptable for thumbnails?
- how to return thumbnail data back to the app?
- will displaying a list of claims be slow because you have to download all the thumbnails?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the commands that accept thumbnail_url, then trace the file manager, stream manager, and DHT handling described in the issue. Determine how thumbnail_path should become a second stream and how thumbnail data returns to the app. The open questions about dimensions, file types, and list performance must be resolved before completion can be defined.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.