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

search: index entry bodies (Notes and Evidence) with a lazily loaded prebuilt index

Aperta
#92 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
42/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
javascript
Ambito
search

Direzione di ricerca

Start with site/lib/search.mjs, especially searchFields(e) and scoreFields, then check the build flow that produces dist/search-index.json and the existing search tests. Add a fixture whose Notes contain a unique word and verify it is found with body hits ranked below name and tag hits. Done when the index loads on first keystroke, the initial home page payload is unchanged, snippets appear for body matches, and the ROADMAP item moves to Done.

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

Descrizione

enhancement priority: medium

Why it matters
Searching "GDPR", "share-alike", "Steam disclosure", "AGPL export" or "file conversion" finds nothing, although those phrases are exactly what the Notes sections record. The catalog's differentiator is the licence reading, and that text is unsearchable. ROADMAP.md lists full-text search as planned.

Evidence

  • site/lib/search.mjs:23-29 searchFields(e) builds three fields (name/publisher/tags, summary, licence); body text is excluded.
  • data.js is already ~326 KB (see #75), so appending full bodies would roughly double it.

Suggested approach

  1. At build time tokenise each body (lowercase, stop words out, light stemming) and emit a compact inverted index dist/search-index.json (token → entry ids), fetched on the first keystroke rather than on page load.
  2. Score body hits below name/tag hits in scoreFields so current ranking holds.
  3. Show a one-line snippet around the match on the card when the hit came from the body.
  4. Test with a fixture entry whose Notes contain a unique word.

Done when
A word that only appears in an entry's Notes returns that entry, the home-page payload before the first search is unchanged, and the ROADMAP item moves to Done.

Lingua principale
JavaScript
Stelle
58
Fork
15
Merge medio
16h 53m
PR unite (30g)
14

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 TMHSDigital/Free-Game-Dev-Assets

Tutte le issue di TMHSDigital/Free-Game-Dev-Assets

Issue simili

Altre issue su JavaScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.