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

Testing: unit tests for the animated logo export

Closed Beginner friendly
#183 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
Half a day
Newbie friendliness
82/100
Issue type
Feature
Clarity
Clearly specified
Activity status
Active
Tech stack
typescript
Domain
design, testing

Research direction

Start by reading drawOnSvg in lib/logo/animate.ts to see how it builds the SVG and where the loop and reduced-motion output come from, then check lib/test/xml.ts for the well-formedness helper. Add a Vitest file that covers the four criteria: well-formed XML with a prefers-reduced-motion rule, the iteration count changing with loop on and off, and an uploaded <script> staying sanitized. Done when pnpm test passes with those cases.

Written by the indexing model from the issue text.

Description

area: logo difficulty: easy good first issue testing

Summary

Add Vitest tests for lib/logo/animate.ts (drawOnSvg).

Where to look

  • lib/logo/animate.ts
  • lib/test/xml.ts: XML well-formedness checker

Acceptance criteria

  • The output is well-formed XML and contains a prefers-reduced-motion rule.
  • Loop on and off change the animation iteration count.
  • An uploaded logo with a <script> stays sanitized in the output.
  • 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.