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

mtg: unread dot on the "What's new" menu entry

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

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
66/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
typescript
Domain
frontend

Research direction

Start with the Release notes module and the menu entry and page entry points that use it; inspect how Releases expose their notes and how the app currently stores device-local state. Add vitest coverage through the module’s public functions for the four listed cases, then verify the menu dot and page behavior match them. Done means unread notes show a dot, opening the page clears it, first visit stores the current Release silently, and storage failures do not break the app.

Written by the indexing model from the issue text.

Description

ready-for-agent

Parent

#175

What to build

A player sees a small dot on the "What's new" menu entry when a Release brought Release notes they have not seen yet, and the dot disappears once they open the page. There is no popup, dialog or toast; the PWA's silent autoUpdate stays unchanged.

The unread logic lives in the Release notes module: given the last-seen Release (or none) and the Releases, it decides whether the dot shows and what value to store.

  • First visit (nothing stored): store the current Release silently, show no dot, so a new visitor is not nagged about history.
  • Stored Release older than a Release with notes: show the dot.
  • Stored Release older only than Releases without notes: no dot.
  • Opening the page stores the newest Release.

The last-seen Release is kept per device in localStorage, wrapped so that blocked or throwing storage degrades to "no dot". No per-Account tracking.

Acceptance criteria

  • The menu entry shows a dot exactly when the unread logic says so
  • Opening the "What's new" page clears the dot; a later Release with notes brings it back
  • A first visit shows no dot and stores the current Release
  • Blocked localStorage shows no dot and does not break the app
  • No update popup or dialog is added
  • vitest tests, through the module's public functions, cover: first visit; older stored Release with newer notes; older stored Release where the newer Releases have no notes; opening the page stores the newest Release
Dominant language
TypeScript
Stars
0
Forks
1
Avg merge
11h 20m
Merged PRs (30d)
31

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

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 myOmikron/code

All issues in myOmikron/code

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.