Stack pages: add every pick to the shortlist in one click

Open Beginner friendly
#272 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
82/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
javascript
Domain
frontend

Research direction

Read site/public/stack.js and site/lib/stack-page.mjs to see how stack picks are rendered, then inspect shortlist storage and its storage listener in site/public/shortlist.js. Run npm test and check that one click adds every pick without duplicates, reports the number added, and lets other tabs refresh.

Written by the indexing model from the issue text.

Description

enhancement good first issue priority: medium

Summary

A stack is a curated starter kit, but its page only offers copy-credit buttons. Getting the kit into the shortlist, where the CREDITS export lives, means opening each entry one at a time.

Where

  • site/public/stack.js:1-26 (copy buttons only)
  • site/lib/stack-page.mjs (no shortlist hook)
  • site/public/shortlist.js:12-21 (storage), :171 (storage listener)

Impact

Jam and solo developers following a stack get the whole kit and its attribution file in one step.

Suggested fix

Add an "Add all to shortlist" button that merges the stack's entry ids into the shortlist storage key (dedupe), shows a status line, and relies on the existing storage listener to refresh other tabs.

Acceptance criteria

  • One click adds every stack pick to the shortlist without duplicates
  • Status message confirms how many were added

Getting started

  • Relevant files: site/public/stack.js, site/lib/stack-page.mjs
  • Run the tests: npm test; the full local gate is npm run check (Node 22+, no install step)
  • Related docs: CONTRIBUTING.md, site/README.md

Related: #110


Filed by repo-audit/full-audit at 4adb944. Severity: medium. Effort: S. audit-key: enhancement|site/public/stack.js|addStackToShortlist

Dominant language
JavaScript
Stars
58
Forks
15
Avg merge
1d 15h
Merged PRs (30d)
12

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.