adhit-r / adhit-r/holocron

Battle ships interactive — clickable from BattleMarker tooltip

Open
#7 0 comments 0 reactions 0 assignees View on GitHub
area: data area: ux enhancement
Dominant language
TypeScript
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Description

> **Skills:** TypeScript · React · data resolution patterns · responsive UX
> **Time:** ~4 hours
> **Good for:** UX-minded engineers · lore matchers · battle-trivia people
> **Difficulty:** Intermediate

---

## Context

Each `Battle` in `data/build/wars.json` includes `shipsInvolved: string[]` — a
list of canonical ship class names that fought there. The BattleMarker
currently doesn't expose them.

## Goal

When a battle is selected, surface its ships as clickable chips that
cross-pivot to the matching ship entity (or display an info tooltip if the
ship class isn't in our kb).

## Where to start

- `components/timeline/BattleMarker.tsx` — currently the marker has a small
HTML label; expand into a tooltip on hover or click
- `components/explorer/Datapad.tsx` — when a battle entity is selected, render
the ships array as a row of chips
- Match the chip style to the existing relations rows
- Resolve each ship name against `kb.json` by name (case-insensitive). Capture
unmatched names so we can identify schema gaps.

## Acceptance criteria

- Battle of Yavin: ships chip-row shows Death Star, X-wing, Y-wing, TIE
Fighter, Imperial Star Destroyer
- Click a chip whose ship is in kb → cross-pivot to that ship
- Click a chip whose ship is NOT in kb → tooltip "Ship not in archive yet"
- Mobile-friendly: chip row scrolls horizontally below md

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.