Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

catalog: tag and subcategory vocabulary has sprawled (63% of tags used once, licence-ish tags, duplicate concepts)

Aberta
#96 0 comentários 0 reações 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 1 dia

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
5/5
Tempo estimado
Mais de uma semana
Facilidade para iniciantes
35/100
Tipo de issue
Refatoração
Clareza
Claramente especificada
Status de atividade
Ativa
Stack de tecnologia
javascript, json
Domínio
data, search

Direção de pesquisa

Start by reading the V19 validation rule, site/value-aliases.json, site/config.json, and the validator run by npm run validate; inspect how tags, subcategories, and search values are normalized. Use the supplied audit and the validation output to track singleton tags, licence-shaped tags, category-specific subcategories, and merged aliases. Done when singleton tags are below about 20%, licence-shaped tags are gone, subcategories follow per-category lists, and searches for merged spellings return the same results.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

enhancement priority: medium

Why it matters
Tags drive search and the chip filters. When 428 of 675 tags are used exactly once, they add bytes to data.js but almost never help a search, and near-synonyms split results: a search for "pixel" and a search for "pixel-art" return different sets. Rule V19 (tags do not restate the licence) was applied to licence names, but a second generation of licence-shaped tags has grown back. Subcategories have the same problem (190 values, 71 singletons, 66 in tools alone) and leak across categories.

Evidence (data audit 2026-10-21)

  • 1,507 tag uses, 675 unique, 428 singletons; 88 entries have two or fewer tags.
  • Duplicate concepts: pixel (27) vs pixel-art (14); godot (30) vs godot-4 (22); unreal (1) vs unreal-engine (22).
  • Licence-shaped tags: freemium (8), per-model-license, mixed-license, per-item-license, cc0-exports, cc0-custom, cc0-filter, not-cc0, non-commercial-free-tier, free-tier, per-file-license, per-listing-license, per-film-license.
  • Subcategory leakage: audio as a 2d subcategory (2), video/audio/images as video subcategories, characters under characters, models/textures under environment.

Suggested approach

  1. Decide a closed tag vocabulary for the top ~150 tags plus a free-text tail, and add the licence-shaped tags to the V19 check (the information already lives in license, commercial and the Notes).
  2. Merge the duplicate concepts with site/value-aliases.json so old spellings keep validating but normalise.
  3. Give each category a short allowed subcategory list in site/config.json and have the validator enforce it; the long tail becomes tags.
  4. Report singleton tags in npm run validate output as a warning so they are visible.

Done when
Singleton tags are below ~20%, no licence-shaped tags remain, subcategories are drawn from a per-category list, and search for either spelling of a merged concept returns the same set.

Linguagem predominante
JavaScript
Estrelas
58
Forks
15
Merge médio
16h 53min
PRs com merge (30d)
14

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de TMHSDigital/Free-Game-Dev-Assets

Todas as issues de TMHSDigital/Free-Game-Dev-Assets

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.