Skip to content

feat(home): add SnarkyLoader secret easter egg#81

Open
xeroc wants to merge 4 commits intodevelopfrom
77-add-a-secretly-s
Open

feat(home): add SnarkyLoader secret easter egg#81
xeroc wants to merge 4 commits intodevelopfrom
77-add-a-secretly-s

Conversation

@xeroc
Copy link
Copy Markdown
Member

@xeroc xeroc commented Apr 1, 2026

Add SnarkyLoader component displaying rotating snarky messages
about slow internet with CSS-animated spinner.

Add useMultiClick hook for detecting rapid consecutive clicks
with configurable threshold and time window.

Integrate as hidden easter egg on Home page, triggered by
5x-click on 'Welcome to ChaosCraft' heading with 2-second
window. Dismissible via Escape key, outside click, or overlay.

Includes comprehensive test coverage:

  • SnarkyLoader.test.tsx: 14 tests
  • useMultiClick.test.tsx: 10 tests
  • Home.easter-egg.test.tsx: 10 tests

All 45 tests pass, typecheck clean, build successful.

Chris Cross added 4 commits April 1, 2026 21:51
Add a reusable loading spinner component that displays rotating
snarky messages about slow internet connections.

- Accepts `visible` and optional `rotationSpeed` props
- 10 unique snarky messages rotating at configurable intervals
- Animated spinner with CSS animations (animate-spin, animate-pulse)
- Accessibility: role='status', aria-live='polite', aria-label='Loading'
- Proper interval cleanup on unmount and visibility changes
- Message index resets to 0 when component becomes visible
- Full test suite with 14 tests covering rendering, rotation, toggling,
  accessibility, and styling
Add complete test coverage for SnarkyLoader component with 14
 tests spanning rendering, message rotation, visibility toggle,
 accessibility, and styling.

 Rendering: Verifies visibility prop, spinner structure, and
 initial message display.

 Message Rotation: Tests default 2500ms interval, custom
 rotationSpeed, full message cycling, and loop-back behavior.

 Visibility Toggle: Confirms prop-driven show/hide and interval
 cleanup when hidden.

 Accessibility: Validates aria-live, aria-label, and status role.

 Styling: Checks Tailwind classes and gradient element presence.
Add a hidden SnarkyLoader component that activates when the user
clicks the title 5 times within 2 seconds. The loader displays
rotating snarky messages about slow internet with a spinning
animation.

- useMultiClick hook for detecting rapid clicks with configurable
  threshold and time window
- SnarkyLoader component with customizable rotation speed
- Dismissal via ESC key, click outside, or overlay click
- One-time dismissal guard to prevent re-triggering
- Full ARIA accessibility support

Tests: 45/45 passing across 4 test files
Add SnarkyLoader component displaying rotating snarky messages
about slow internet with CSS-animated spinner.

Add useMultiClick hook for detecting rapid consecutive clicks
with configurable threshold and time window.

Integrate as hidden easter egg on Home page, triggered by
5x-click on 'Welcome to ChaosCraft' heading with 2-second
window. Dismissible via Escape key, outside click, or overlay.

Includes comprehensive test coverage:
- SnarkyLoader.test.tsx: 14 tests
- useMultiClick.test.tsx: 10 tests
- Home.easter-egg.test.tsx: 10 tests

All 45 tests pass, typecheck clean, build successful.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant