search: index entry bodies (Notes and Evidence) with a lazily loaded prebuilt index
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 42/100
- Loại issue
- Tính năng
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- javascript
- Lĩnh vực
- search
Hướng nghiên cứu
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.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
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-29searchFields(e)builds three fields (name/publisher/tags, summary, licence); body text is excluded.data.jsis already ~326 KB (see #75), so appending full bodies would roughly double it.
Suggested approach
- 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. - Score body hits below name/tag hits in
scoreFieldsso current ranking holds. - Show a one-line snippet around the match on the card when the hit came from the body.
- 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.
- Ngôn ngữ chính
- JavaScript
- Star
- 58
- Fork
- 15
- Merge trung bình
- 16 giờ 53 phút
- Pull request đã merge (30 ngày)
- 14
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của TMHSDigital/Free-Game-Dev-Assets
-
community marketing priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
TMHSDigital/Free-Game-Dev-Assets#151 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
documentation priority: medium
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
TMHSDigital/Free-Game-Dev-Assets#72 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
enhancement
Độ khó 1/5 1-3 giờ Mức phù hợp với người mới 68/100
TMHSDigital/Free-Game-Dev-Assets#3 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
marketing priority: low
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 55/100
TMHSDigital/Free-Game-Dev-Assets#152 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
feature priority: medium
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 25/100
TMHSDigital/Free-Game-Dev-Assets#144 ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của TMHSDigital/Free-Game-Dev-Assets
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
type/bug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
flarum/framework#5301 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
AOSSIE-Org/BabyNest#284 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
status:untriaged
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 86/100
midnightntwrk/servicedesk#275 ·
Maintainer thường phản hồi trong vòng 1 ngày