Make the gallery thumbnail keyboard-operable
Maintainers usually reply within 1 day
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 35/100
- Issue type
- Feature
- Clarity
- Clearly specified
- Activity status
- Stale
- Tech stack
- html, python
- Domain
- accessibility
Research direction
Start in easyedit/web/index.html at tile() (lines 286–288), the .bar i element (line 272), and the progress/log region. Check how thumbnails play edits and how render progress is updated. Done when thumbnails are keyboard-operable and named after their edits, progress bars expose the displayed percentage, and the status region uses aria-live="polite"; verify with the issue's stated browser checks. An open pull request (#40) is already linked.
Written by the indexing model from the issue text.
Description
The gallery thumbnail is the primary way to play an edit, and it's a <div data-play> with no tabindex, no role and no accessible name — so it is mouse-only. The progress bar (.bar i) has no role="progressbar" or aria-valuenow, and the live progress and log region has no aria-live, so a screen-reader user gets no indication that a render is advancing.
Task: make the thumbnail a real <button> (or give it role="button", tabindex="0" and key handling), name it after the edit, add the progressbar roles, and mark the status region aria-live="polite".
Where: easyedit/web/index.html:286-288 (the thumbnail in tile()), :272 (.bar i), and the progress/log region.
Done when: in python -m easyedit.web, pressing Tab reaches each finished edit's thumbnail, Enter or Space plays it, and the DevTools Accessibility pane shows a name that includes the edit's title. A running job's .bar exposes role="progressbar" with aria-valuenow equal to the percent shown, and the progress/log region has aria-live="polite".
Getting started: Python 3.10+, Node 22+, FFmpeg on PATH. npm install, pip install -r requirements.txt, then python -m easyedit.doctor. Run python -m unittest discover before opening a PR. Passing --llm none skips the model entirely, which is the fastest way to test. Comment here to claim it. Questions → Discord.
- Dominant language
- Python
- Stars
- 168
- Forks
- 24
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 14
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from blixvip/easyedit
-
help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
Maintainers usually reply within 1 day
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
good first issue help wanted
Difficulty 2/5 1-3 hours Newbie friendliness 92/100
Maintainers usually reply within 1 day
-
enhancement good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Maintainers usually reply within 1 day
-
bug good first issue
Difficulty 2/5 1-3 hours Newbie friendliness 83/100
Maintainers usually reply within 1 day
All issues in blixvip/easyedit
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
adafruit/Fruit-Jam-OS#98 ·
-
python triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
microsoft/semantic-kernel#14753 ·
Maintainers usually reply within 5 days
-
area:cli area:configuration documentation priority:low size:small
Difficulty 1/5 1-3 hours Newbie friendliness 80/100
RonaldHensbergen/composable-data-stack#1222 ·
Maintainers usually reply within 1 day
-
bug python
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
pvlib/pvlib-python#2939 ·
Maintainers usually reply within 1 day