Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

seo: 94 entry descriptions open with a raw licence value and five per-file aggregators promise "no credit needed"; entry pages lack image and breadcrumb structured data, category pages have none

Open
#158 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
50/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
javascript
Domain
search, web-dev

Research direction

Start with site/lib/shared.mjs:165-180 for seoDescription and site/lib/entry-page.mjs:20-35 for entry JSON-LD, then inspect category-page.mjs and validate.mjs for the suggested changes. Check generated entry, stack, and category pages against the stated description and structured-data criteria; done means the descriptions avoid the misleading credit claim and the specified pages expose the required structured data.

Written by the indexing model from the issue text.

Description

enhancement marketing priority: low

Why it matters

The meta description is the search-result snippet. "custom, commercial use OK, no credit needed." reads as a data dump, and for per-file aggregators "no credit needed" is a wrong promise. Separately, 192 entries have a licence-cleared image the site may show, yet the CreativeWork carries none; breadcrumbs exist in HTML but not as data; category pages, the natural landing pages for "free 3D assets", have no structured data while stack pages have an ItemList.

Evidence (at 69387df, local build)

  • site/lib/shared.mjs:165-180 seoDescription leads with entry.license verbatim. Across dist: 61 descriptions start "custom,", 25 "varies,", 4 "unknown,", 4 "public-domain,". Five with varies plus "no credit needed": blenderkit, destockd, fontshare, pixel-frog, prelinger-archives.
  • site/lib/entry-page.mjs:20-35 jsonLd builds WebPage + CreativeWork with name, url, description, publisher, license, dateModified only. 0 of 416 entry pages contain "image" or BreadcrumbList; category/3d/index.html has no ld+json block.

Suggested approach

Map raw values to prose ("Custom licence:", "Mixed licences, per file:", "Licence unknown:", "Public domain:"); when commercial === "varies" write "credit varies per file" regardless of attribution_required, or have validate.mjs reject attribution_required: false together with commercial: varies. Add image (absolute thumb URL with width/height) to the CreativeWork; add a BreadcrumbList to entry and stack pages; add CollectionPage + ItemList to category-page.mjs.

Done when

Every description starts with a capitalised phrase and no varies entry claims "no credit needed"; the Rich Results test shows Breadcrumb for entry and stack pages; category pages validate as CollectionPage + ItemList.

Dominant language
JavaScript
Stars
58
Forks
15
Avg merge
16h 53m
Merged PRs (30d)
14

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from TMHSDigital/Free-Game-Dev-Assets

All issues in TMHSDigital/Free-Game-Dev-Assets

Similar issues

More JavaScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.