site: small interaction bugs — sticky filter bar covers 28% of a desktop viewport; arrow keys push history; hash navigation wipes typing; no cap on `q`
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- javascript
- Área
- frontend
Línea de trabajo
Start with site/public/app.js for chip keyboard handling, popstate behavior, and the existing is-collapsed machinery; check site/public/styles.css for sticky controls and anchor offsets. Read site/lib/search.mjs for query parsing and inspect how input updates the URL. Done when the bar is under 100 px on desktop, arrowing across chips adds at most one history entry, hash navigation preserves typing, and q is bounded.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Why it matters
Each one breaks a small expectation: a quarter of the screen should not be a permanent control panel, Back should undo a choice rather than every key press, typing should never be erased, and the URL should not grow without bound.
Evidence (at 69387df, local build)
.controls { position: sticky; top: 0 }(site/public/styles.css:297-299). At 1440x900 while scrolled into the catalog the bar is 252 px tall (283 px with an active-filter row), and--sticky-hdrivesscroll-margin-top(styles.css:1109), so anchor jumps ("Show all", chip links) land 300 px down.site/public/app.js:231-242keydown handler callsapply({ push: true })per arrow press: 5 ArrowRight presses ->history.length+5.app.js:693-697popstate handler runsreadUrl(); syncControls(); apply()on every popstate, which also fires on hash-only navigation (topnav#stacks,#catalog): type "ken" then click#stackswithin the 120 ms debounce -> the search input is emptied.site/lib/search.mjs:117if (p.has("q")) state.q = p.get("q")has no cap; a 4000-character query produced a 4 KB URL and a 4 KB active-filter chip.
Suggested approach
Collapse the controls to one row (search, active chips, a "Filters" disclosure) once scrolled past, using the existing is-collapsed machinery (app.js:773-780) driven by an IntersectionObserver, or make only the search row sticky. Arrows -> apply() (replace) and push only on click/Enter/Space. In popstate, return early when location.search equals the query string last written by writeUrl. Clamp q to about 200 characters in readState and on input.
Done when
The stuck bar is under 100 px on desktop; arrowing across all chips adds at most one history entry; hash navigation never changes the search box; q is bounded.
- Lenguaje dominante
- JavaScript
- Estrellas
- 58
- Forks
- 15
- Merge medio
- 16 h 53 min
- PR fusionados (30 d)
- 14
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de TMHSDigital/Free-Game-Dev-Assets
-
community marketing priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
TMHSDigital/Free-Game-Dev-Assets#151 ·
Los mantenedores suelen responder en 1 día
-
documentation priority: medium
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
TMHSDigital/Free-Game-Dev-Assets#72 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 1/5 1-3 horas Aptitud para principiantes 68/100
TMHSDigital/Free-Game-Dev-Assets#3 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
marketing priority: low
Dificultad 2/5 1-3 horas Aptitud para principiantes 55/100
TMHSDigital/Free-Game-Dev-Assets#152 ·
Los mantenedores suelen responder en 1 día
-
feature priority: medium
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
TMHSDigital/Free-Game-Dev-Assets#144 ·
Los mantenedores suelen responder en 1 día
Todos los issues de TMHSDigital/Free-Game-Dev-Assets
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
awesome-dsh-plugin/awesome-dsh-plugin#9184 ·
Los mantenedores suelen responder en 1 día
-
CloudredirectAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
Los mantenedores suelen responder en 1 día
-
0.2.1-rc.3 compatibility: 21 peer ranges enumerate exact versions, so rc.3 is rejectedPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
NanmiCoder/dsh-agent-teams#277 ·
Los mantenedores suelen responder en 1 día
-
[ordering-review] workshop order graph: 1 confirmed ordering problem, 3 cycles are false positivesAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
githubnext/gh-aw-workshop#4943 ·
Los mantenedores suelen responder en 1 día