Rename in-app IP references and rewrite README for end users

Apply the ship/vessel and terminology rename mappings throughout the
live app (index.html, css/style.css, js/*.js) and reference docs, per
Ship_IP_Changes.md and Theme_Terminology_IP_Changes.md, including:
- Ship/theme names and generic terminology (Starfleet, LCARS, Warp
  Core, TARDIS, etc.) in both code strings and visible UI text, while
  leaving internal code identifiers (theme keys, CSS classes, preset
  IDs) untouched.
- Made "Species 8675309" canonical and fixed the dotted T.A.R.D.I.X.
  acronym on the Whataverse theme.
- Replaced the per-preset era/pulseShape franchise tag in the preset
  list with the existing safe universe category name, since those
  codes are also used functionally by the audio and observation
  engines and weren't covered by either mapping document.

Also rewrite README.md to lead with end-user ambience usage (how to
run it, universe/vessel overview, mixer channels, sleep timer,
observation mode, hotkeys) with the developer/build notes moved into
a collapsed section.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Jt872nc9Fi2WMaJhAKGyDq
This commit is contained in:
Claude
2026-09-04 21:16:11 +00:00
co-authored by Claude Sonnet 5
parent 9dc48e94d9
commit 977d348c4f
15 changed files with 1130 additions and 956 deletions
+14 -14
View File
@@ -34,13 +34,13 @@ window.ObservationBezels = {
<rect x="1040" y="195" width="30" height="515" fill="#171310" stroke="#dc2626" stroke-width="2.5" opacity="0.9"/>
` : ''}
<text x="800" y="865" text-anchor="middle" fill="#f59e0b" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">U.S.S. ENTERPRISE NCC-1701 // BRIDGE VIEWSCREEN</text>
<text x="800" y="865" text-anchor="middle" fill="#f59e0b" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">U.S.S. INTERPRISE NCC-1701.5 // BRIDGE VIEWSCREEN</text>
</svg>
`;
}
if (era === 'voyager') {
// Voyager Intrepid Class - sleeker rounded modern arch, cyan accent
// Wayfarer Intrepid Class - sleeker rounded modern arch, cyan accent
return `
<svg viewBox="0 0 1600 900" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<defs>
@@ -62,14 +62,14 @@ window.ObservationBezels = {
<g transform="translate(500, 838)">
<rect x="0" y="0" width="600" height="20" rx="10" fill="#22d3ee" opacity="0.85"/>
<text x="300" y="15" text-anchor="middle" fill="#000" font-family="'Antonio', sans-serif" font-weight="700" font-size="12" letter-spacing="3">USS VOYAGER // BRIDGE VIEWPORT</text>
<text x="300" y="15" text-anchor="middle" fill="#000" font-family="'Antonio', sans-serif" font-weight="700" font-size="12" letter-spacing="3">USS WAYFARER // BRIDGE VIEWPORT</text>
</g>
</svg>
`;
}
if (era === 'ds9') {
// Defiant Class / DS9 Ops - angular, aggressive warship framing
// Defiance Class / DS9 Ops - angular, aggressive warship framing
return `
<svg viewBox="0 0 1600 900" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<defs>
@@ -83,13 +83,13 @@ window.ObservationBezels = {
<path d="M0,900 H1600 V840 L1300,730 H300 L0,840 Z" fill="url(#defMetal)" stroke="#f97316" stroke-width="3"/>
<path d="M0,0 V900 H150 L190,730 V170 L150,0 Z" fill="url(#defMetal)" stroke="#f97316" stroke-width="3"/>
<path d="M1600,0 V900 H1450 L1410,730 V170 L1450,0 Z" fill="url(#defMetal)" stroke="#f97316" stroke-width="3"/>
<text x="800" y="865" text-anchor="middle" fill="#f97316" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">USS DEFIANT // TACTICAL BRIDGE VIEWPORT</text>
<text x="800" y="865" text-anchor="middle" fill="#f97316" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">USS DEFIANCE // TACTICAL BRIDGE VIEWPORT</text>
</svg>
`;
}
if (era === 'nx') {
// Enterprise NX-01 - early, industrial, submarine-like bulkhead
// Interprise NS-01 - early, industrial, submarine-like bulkhead
return `
<svg viewBox="0 0 1600 900" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<defs>
@@ -103,7 +103,7 @@ window.ObservationBezels = {
<path d="M0,900 H1600 V790 L1420,725 H180 L0,790 Z" fill="url(#nxMetal)" stroke="#a16207" stroke-width="3"/>
<path d="M0,0 V900 H120 L150,725 V175 L120,0 Z" fill="url(#nxMetal)" stroke="#a16207" stroke-width="3"/>
<path d="M1600,0 V900 H1480 L1450,725 V175 L1480,0 Z" fill="url(#nxMetal)" stroke="#a16207" stroke-width="3"/>
<text x="800" y="865" text-anchor="middle" fill="#a16207" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">ENTERPRISE NX-01 // COMMAND BRIDGE VIEWPORT</text>
<text x="800" y="865" text-anchor="middle" fill="#a16207" font-family="'Share Tech Mono', monospace" font-size="16" letter-spacing="4">INTERPRISE NS-01 // COMMAND BRIDGE VIEWPORT</text>
</svg>
`;
}
@@ -144,7 +144,7 @@ window.ObservationBezels = {
}
if (universeId === 'whoniverse') {
// Gallifreyan Observatory Roundel Viewing Portal / TARDIS Frame
// Gallifreyan Observatory Roundel Viewing Portal / TARDIX Frame
// Console era (classic/revival/modern) tints the rings and label.
let era = 'revival';
const wUniverse = (typeof UniverseRegistry !== 'undefined') ? UniverseRegistry['whoniverse'] : null;
@@ -152,10 +152,10 @@ window.ObservationBezels = {
if (preset && preset.era) era = preset.era;
let ringA = '#d4af37', ringB = '#00e5ff', dash = '16 12', labelColor = '#d4af37';
let label = 'T.A.R.D.I.S. TEMPORAL VORTEX OBSERVATION PORTAL';
let label = 'T.A.R.D.I.X. TEMPORAL VORTEX OBSERVATION PORTAL';
if (era === 'classic') {
ringA = '#b45309'; ringB = '#f5deb3'; dash = '22 10'; labelColor = '#f5deb3';
label = 'TYPE 40 CLASSIC CONSOLE // TEMPORAL VIEWPORT';
label = 'TYPE 4D CLASSIC CONSOLE // TEMPORAL VIEWPORT';
} else if (era === 'modern') {
ringA = '#e2e8f0'; ringB = '#94a3b8'; dash = '4 6'; labelColor = '#e2e8f0';
label = 'INFINITE WHITE // TEMPORAL OBSERVATION PORTAL';
@@ -195,7 +195,7 @@ window.ObservationBezels = {
if (universeId === 'bioships' || universeId === 'retrofuture' || universeId === 'military' || universeId === 'comedy') {
// These four universes previously had no case here at all and silently fell through
// to the Starfleet default below, which hardcodes "USS ENTERPRISE" into the plaque --
// to the Starflight default below, which hardcodes "USS INTERPRISE-G" into the plaque --
// showing the wrong ship name in every one of these themes' Observation view.
// Fix: reuse the same bulkhead shape (it already themes correctly via the CSS
// accent variables set per universe), but pull the REAL ship/deck name for the
@@ -233,7 +233,7 @@ window.ObservationBezels = {
`;
}
// Default: Iconic Starfleet Ten Forward / Galaxy-Class Observation Lounge
// Default: Iconic Starflight Ten Forward / Galaxy-Class Observation Lounge
return `
<svg viewBox="0 0 1600 900" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
<defs>
@@ -259,10 +259,10 @@ window.ObservationBezels = {
<path d="M1090,95 L1065,95 L1055,765 L1100,765 Z" fill="#151922" stroke="var(--tertiary-accent, #99ccff)" stroke-width="2.5" opacity="0.95"/>
` : ''}
<!-- Authentic LCARS Display Bar along lower sill -->
<!-- Authentic LCARD Display Bar along lower sill -->
<g transform="translate(480, 830)">
<rect x="0" y="0" width="640" height="24" rx="12" fill="var(--primary-accent, #ff9900)" opacity="0.85"/>
<text x="320" y="17" text-anchor="middle" fill="#000" font-family="'Antonio', sans-serif" font-weight="700" font-size="14" letter-spacing="3">USS ENTERPRISE // OBSERVATION LOUNGE // DECK 10 FORWARD</text>
<text x="320" y="17" text-anchor="middle" fill="#000" font-family="'Antonio', sans-serif" font-weight="700" font-size="14" letter-spacing="3">USS INTERPRISE-G // OBSERVATION LOUNGE // DECK 10 FORWARD</text>
</g>
</svg>
`;