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

Testing: unit tests for the seeded random helpers

Closed Beginner friendly
#246 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
85/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
testing

Research direction

Start with the exports of lib/background/random.ts (createRandom, randomSeed, range, pick) and the determinism tests in lib/background/registry.test.ts to match their style. Add a new Vitest test file for the helpers covering same-seed and different-seed sequences, bounds for range, membership for pick, and one fixed expected first value for a known seed. Done when the four acceptance criteria hold and pnpm test passes.

Written by the indexing model from the issue text.

Description

area: backgrounds difficulty: easy good first issue testing

Summary

Add Vitest tests for lib/background/random.ts (createRandom, randomSeed, range, pick), which every generator relies on for deterministic output.

Where to look

  • lib/background/random.ts
  • lib/background/registry.test.ts: how determinism is tested today

Acceptance criteria

  • The same seed gives the same sequence and different seeds give different ones.
  • range stays inside its bounds and pick only returns items from the list.
  • A known seed gives a fixed first value, so accidental changes to the algorithm are noticed (this would change every saved background).
  • pnpm test passes.

Getting started: fork the repo, then pnpm install and pnpm dev (Node 22+, pnpm 11, no API keys). Before opening a PR, run pnpm typecheck && pnpm test && pnpm lint && pnpm format:check && pnpm check:dashes && pnpm build. See CONTRIBUTING.md and the first contribution walkthrough.

Everything needed is in the repository. This doesn't need maintainer access, secrets or paid services. Comment below to claim it, and ask questions here any time.

Dominant language
TypeScript
Stars
11
Forks
3
Avg merge
4h 4m
Merged PRs (30d)
74

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 yakew7/DesignHub

All issues in yakew7/DesignHub

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.