Skip to content

Feat/issue 30 time machine#38

Open
theshantanujoshi wants to merge 4 commits into
adhit-r:mainfrom
theshantanujoshi:feat/issue-30-time-machine
Open

Feat/issue 30 time machine#38
theshantanujoshi wants to merge 4 commits into
adhit-r:mainfrom
theshantanujoshi:feat/issue-30-time-machine

Conversation

@theshantanujoshi

Copy link
Copy Markdown

Summary

This PR implements the Cinematic Time Machine feature as requested in Issue #30. It provides an automated, paced navigation experience through 25,000 years of Star Wars history.

Key Changes

  • TimeMachine Component: A new high-fidelity UI component that auto-scrubs the era from -25,025 BBY to 35 ABY.
  • Lore-Aware Pacing: Implemented a Gaussian-based slowdown mechanism that decelerates the animation near major canonical events (Order 66, Battle of Yavin, etc.) to allow users to absorb the cinematic interrupts.
  • HUD Overlay: Added a premium holographic ticker showing the current year, a progress bar, and the next upcoming canonical event.
  • Store Integration: Added timeMachine state management to useSelection store with support for pausing and cancellation.
  • UI Integration: Added a "Rocket" trigger button to the NavRail and integrated the overlay into the AppShell.
  • UX Refinements: Added keyboard support (Space to pause/resume, Escape to exit) and optimized the animation loop to resolve React state update warnings and R3F hook errors.

Verification Results

  • Verified auto-scrubbing duration (~120s).
  • Verified cinematic interrupts fire correctly during the automated scrub.
  • Verified pause/resume and exit functionality.
  • Verified visual fidelity and responsiveness on mobile/desktop.

Fixes #30

@safedep

safedep Bot commented May 14, 2026

Copy link
Copy Markdown

SafeDep Report Summary

Green Malicious Packages Badge Green Vulnerable Packages Badge Green Risky License Badge

No dependency changes detected. Nothing to scan.

Installation is not linked with SafeDep Tenant. Click here to optionally link your GitHub App installation with SafeDep Tenant.

This report is generated by SafeDep Github App

@adhit-r

adhit-r commented May 14, 2026

Copy link
Copy Markdown
Owner

This currently fails local TypeScript validation.

npm run typecheck reports:

  • components/cinematic/TimeMachine.tsx(37,22): Expected 1 arguments, but got 0.
  • components/cinematic/TimeMachine.tsx(38,23): Expected 1 arguments, but got 0.
  • components/cinematic/TimeMachine.tsx(57,7): Type 'undefined' is not assignable to type 'number'.

Please initialize the refs with an explicit nullable type/value, for example useRef<number | null>(null), and reset them to null instead of undefined. This branch also fails git diff --check on trailing whitespace.

This was referenced May 14, 2026
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.

Time machine: auto-scrub 25,000 BBY → 35 ABY with variable speed

2 participants