Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

perf(packages): optimize package-index data and filtering

Aperta
#1,375 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
cypress, react

Direzione di ricerca

Start at the /packages route and establish the #1371 production-artifact baseline before changing loader data, filtering, or interaction boundaries. Use the requested Vitest/Cypress coverage to check direct loads, navigation, filters, ordering, empty states, and accessibility behavior. Done means the measured payload and DOM improve without losing existing behavior, media dimensions, build, compilation, and route checks passing.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

enhancement react

Context

/packages is a data-heavy interactive route: its loader supplies package data and the client supports text, keyword, source, maintenance, and official-package filtering. It needs a dedicated stack rather than being treated as ordinary static content. The goal is a faster usable index, not merely fewer initial bytes at the expense of filtering.

The shared route/CSS/search boundaries from #1354 already isolate the page from the homepage. Build on them and use #1371 for the first production-artifact baseline.

Suggested PR stack

  • Add a /packages profile and browser coverage for direct load, text search, keyword selection/removal, filter toggles, result ordering, empty states, and navigation away/back to the index.
  • Measure the loader-data payload, rendered-card count, DOM cost, and the cost of the local search index separately. Normalize, partition, or defer data/search work only where it improves initial usability while retaining deterministic local filtering and existing result semantics.
  • Refactor filter state and effects into explicit, testable transitions. Avoid stale filter/search state after client navigation and preserve keyboard and assistive-technology behavior.
  • Reserve dimensions for package imagery/icons and audit any media priority. Keep small fixed assets simple; generate responsive variants only where measurement justifies them.
  • Split optional package-index work at interaction boundaries, then opt stable, measured leaf components into React Compiler annotation mode only when the emitted artifact and behavior are protected.

Acceptance criteria

  • The initial package-index payload and DOM are measured separately from post-interaction filtering work, with before/after raw and gzip totals, requests, DOM/media counts, and loader-data tradeoffs recorded for every layer.
  • Direct loads and client navigations preserve all existing text, keyword, category, official/community, maintenance, and empty-result behaviors without hydration or console errors.
  • The route does not pull in homepage, playground/compiler, or unrelated content-only dependencies until an explicitly supported interaction requires them.
  • Rendered media has numeric intrinsic dimensions and no unnecessary initial preload candidates.
  • ReScript compilation, production build, focused Vitest/Cypress coverage, and the #1371 route report pass. Do not update visual snapshots without approval.

Relates to #1354 and depends on #1371 for the common measurement contract.

Lingua principale
MDX
Stelle
1.9k
Fork
261
Merge medio
3g 13h
PR unite (30g)
37

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di rescript-lang/rescript-lang.org

Tutte le issue di rescript-lang/rescript-lang.org

Issue simili

Altre issue su Build System

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.