Skip to content

Commit 986ef37

Browse files
author
DavidQ
committed
Create MASTER_ROADMAP_STYLE and reset /index.html onto the new Toolbox Aid-derived shared theme.
Add the shared style roadmap. Add the new theme foundation under src/engine/theme. Move /index.html to the new shared header and base theme without preserving old project-local styling. PR: BUILD_PR_STYLE_01_INDEX_RESET_AND_MASTER_ROADMAP_STYLE
1 parent 5d31b54 commit 986ef37

8 files changed

Lines changed: 501 additions & 218 deletions
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
Style Migration Notes
2+
3+
Confirmed live Toolbox Aid visible header structure:
4+
- site title: Toolbox Aid
5+
- tagline: Enhancing Skills
6+
- top navigation row with four items
7+
8+
Project adaptation requested by user:
9+
- shared header source under src/engine/theme
10+
- tagline becomes HTML-JavaScript Gaming
11+
- menu becomes Home / Games / Samples / Tools
12+
- no embedded styling in HTML or JS
13+
- start with /index.html only
Lines changed: 268 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,268 @@
1+
# MASTER_ROADMAP_STYLE.md
2+
3+
## Purpose
4+
Track the style-system migration for HTML-JavaScript-Gaming using Toolbox Aid as the visual baseline for shared page structure and styling direction.
5+
6+
## Source-of-Truth Rules
7+
- Base visual direction comes from Toolbox Aid live site assets and CSS behavior, not from existing HTML-JavaScript-Gaming styling.
8+
- Do not inspect old project CSS/HTML/embedded styles to preserve or translate them forward.
9+
- Migration is additive and page-by-page.
10+
- No big-bang rewrite.
11+
- Each PR must be testable.
12+
- No commit-only PRs.
13+
- No embedded `<style>` in HTML.
14+
- No inline `style=""` in HTML.
15+
- No style strings injected from JS.
16+
- Shared theme CSS lives under `src/engine/theme/`.
17+
- Theme does not move into `src/engine/ui/`.
18+
19+
## Folder Responsibilities
20+
### src/engine/theme/
21+
Visual system only:
22+
- reset/base
23+
- tokens
24+
- typography
25+
- spacing
26+
- layout primitives
27+
- header/nav styling
28+
- page shells
29+
- accordion styling
30+
- tool shell styling
31+
- games/samples/tools section styling
32+
- special-case CSS only when validated and needed
33+
34+
### src/engine/ui/
35+
Behavior only:
36+
- mount shared header if needed
37+
- accordion interaction if CSS-only is insufficient
38+
- host-shell launch behavior
39+
- tool shell interaction
40+
- minimal HTML-page JS only
41+
42+
## Platform Decisions
43+
- Four main entry pages stay visually very close:
44+
- `/index.html`
45+
- `/samples/index.html`
46+
- `/games/index.html`
47+
- `/tools/index.html`
48+
- Shared header + shared page intro/title area.
49+
- Header image stretches side-to-side while preserving aspect ratio.
50+
- Menu buttons use the existing Toolbox Aid overline/underline hover treatment where available in the Toolbox Aid CSS baseline.
51+
- Existing vague selectors are not preserved by default.
52+
- Do not depend on old classes or old ids.
53+
- Add only the selectors needed by the new system.
54+
- `hideme` is retired and replaced by `.is-collapsible`.
55+
- Consistent spacing and margin rules are mandatory.
56+
- Tools should use full available page width with:
57+
- fixed left column
58+
- flexible center column
59+
- fixed right column
60+
- only center grows/shrinks
61+
- Minimal JS for HTML pages.
62+
63+
## UX Clarification
64+
### Tool launch labels
65+
- Open Tool = launch the tool directly/standalone
66+
- Open In Host = launch the same tool inside a shared host shell/container
67+
68+
This explanation should be kept visible in related UI/help text so launch choices are understandable.
69+
70+
## Status Legend
71+
- [ ] not started
72+
- [.] in progress
73+
- [x] complete
74+
75+
---
76+
77+
## Track A — Style System Foundation
78+
79+
### A1. Establish Toolbox Aid-derived base theme
80+
[ ] Create `src/engine/theme/main.css` as the shared base theme.
81+
[ ] Base tokens:
82+
- colors
83+
- spacing
84+
- typography
85+
- border radius
86+
- shadows
87+
- transition timings
88+
[ ] Base layout primitives:
89+
- page shell
90+
- content container
91+
- full-width section
92+
- intro/title block
93+
- nav row
94+
[ ] Document which live Toolbox Aid behaviors are intentionally carried forward.
95+
[ ] Do not pull from existing project styling.
96+
97+
### A2. Establish shared file layout
98+
[ ] Create/confirm:
99+
- `src/engine/theme/main.css`
100+
- `src/engine/theme/header.css` or fold into main if still clean
101+
- `src/engine/theme/accordion.css`
102+
- `src/engine/theme/tools.css`
103+
- `src/engine/theme/games.css`
104+
- `src/engine/theme/samples.css`
105+
[ ] Keep `main.css` foundational, not a dumping ground.
106+
107+
### A3. Shared selector hygiene
108+
[ ] Do not preserve existing project classes/ids unless intentionally adopted.
109+
[ ] Introduce new consistent naming where needed.
110+
[ ] Remove embedded styling from migrated pages only.
111+
[ ] Ban new embedded styling in HTML and JS.
112+
113+
---
114+
115+
## Track B — Shared Header System
116+
117+
### B1. Shared header source
118+
[ ] Pull the `<header>` from Toolbox Aid and store it in:
119+
- `src/engine/theme/toolboxaid-header.html`
120+
[ ] Keep structure unchanged except:
121+
- tagline becomes `HTML-JavaScript Gaming`
122+
- menu becomes:
123+
- Home
124+
- Games
125+
- Samples
126+
- Tools
127+
128+
### B2. Shared header assets and styling
129+
[ ] Pull the required Toolbox Aid CSS needed to reproduce the header look.
130+
[ ] Keep the header image behavior:
131+
- full-width feel
132+
- maintain aspect ratio
133+
- no distortion
134+
[ ] Preserve the visual structure:
135+
- site title
136+
- tagline
137+
- nav row
138+
- social area if retained
139+
[ ] Preserve the menu hover line effect from Toolbox Aid baseline.
140+
141+
### B3. Header loading
142+
[ ] Provide one shared import path.
143+
[ ] Avoid duplicating header markup across pages.
144+
[ ] Minimize JS required to place the shared header into HTML pages.
145+
[ ] Keep HTML-page JS minimal and boring.
146+
147+
---
148+
149+
## Track C — Main Entry Pages
150+
151+
### C1. Reset `/index.html`
152+
[ ] Remove dependencies on existing project page-local styling for `/index.html`.
153+
[ ] Move `/index.html` to Toolbox Aid-derived shared theme only.
154+
[ ] Add shared header.
155+
[ ] Add shared page intro/title area.
156+
[ ] Keep page structure simple and inspectable.
157+
[ ] Validate spacing consistency.
158+
[ ] Validate nav behavior.
159+
[ ] Validate responsive behavior.
160+
161+
### C2. Reset `/samples/index.html`
162+
[ ] Apply same shell and shared header.
163+
[ ] Keep page visually very close to `/index.html`.
164+
[ ] Use `samples.css` only for content-specific differences.
165+
166+
### C3. Reset `/games/index.html`
167+
[ ] Apply same shell and shared header.
168+
[ ] Keep page visually very close to `/index.html`.
169+
[ ] Use `games.css` only for content-specific differences.
170+
171+
### C4. Reset `/tools/index.html`
172+
[ ] Apply same shell and shared header.
173+
[ ] Keep page visually very close to `/index.html`.
174+
[ ] Use `tools.css` only for content-specific differences.
175+
176+
---
177+
178+
## Track D — Collapsible Pattern
179+
180+
### D1. Replace `hideme`
181+
[ ] Replace `hideme` usage on the four main index pages.
182+
[ ] Rename to `.is-collapsible`.
183+
184+
### D2. Shared accordion pattern
185+
[ ] Make `.is-collapsible` use the same accordion feel as `.tools-platform-frame__accordion-summary`.
186+
[ ] Prefer CSS-first.
187+
[ ] Add minimal JS only if needed for accessibility or state persistence.
188+
[ ] Use for shared header/page intro compaction where appropriate.
189+
190+
---
191+
192+
## Track E — Tool Shell UX
193+
194+
### E1. Shared tool layout
195+
[ ] Create full-width tool shell.
196+
[ ] Fixed left column.
197+
[ ] Flexible center column.
198+
[ ] Fixed right column.
199+
[ ] Center alone resizes with viewport.
200+
[ ] Validate at common desktop widths.
201+
202+
### E2. Tool shell migration
203+
[ ] Apply tool shell to one tool first as proof.
204+
[ ] Then roll out tool-by-tool.
205+
[ ] Keep header behavior compact enough not to crowd tool workspaces.
206+
207+
### E3. Launch clarity
208+
[ ] Add visible explanation near launch controls:
209+
- Open Tool = launch the tool directly/standalone
210+
- Open In Host = launch the same tool inside a shared host shell/container
211+
212+
---
213+
214+
## Track F — Spacing, Typography, and Consistency
215+
216+
### F1. Spacing scale
217+
[ ] Define one spacing scale.
218+
[ ] Apply consistently to:
219+
- page shells
220+
- section spacing
221+
- cards/panels
222+
- forms/buttons
223+
- tool side rails
224+
- intro/title blocks
225+
226+
### F2. Margin and padding audit
227+
[ ] Standardize margin and padding rules on migrated pages.
228+
[ ] Remove ad hoc spacing in migrated pages.
229+
230+
### F3. Typography
231+
[ ] Standardize:
232+
- page titles
233+
- section titles
234+
- body text
235+
- nav text
236+
- helper text
237+
- tool labels
238+
239+
---
240+
241+
## Track G — Migration Rules
242+
243+
### G1. Per-PR migration rule
244+
[ ] Each PR migrates one narrow slice.
245+
[ ] Remove old CSS only where the new theme fully covers that slice.
246+
[ ] Never orphan a page between systems.
247+
248+
### G2. Validation rule
249+
[ ] Every style PR must be visually testable.
250+
[ ] Every style PR must have rollback clarity.
251+
[ ] Every style PR must avoid repo-wide churn.
252+
253+
### G3. Old-style retirement
254+
[ ] Delete old page-local CSS only after migrated coverage is validated.
255+
[ ] Delete embedded `<style>` only after migrated coverage is validated.
256+
[ ] Delete JS styling only after migrated coverage is validated.
257+
258+
---
259+
260+
## Suggested Execution Order
261+
[ ] STYLE_01 — Reset `/index.html` using Toolbox Aid-derived base.
262+
[ ] STYLE_02 — Reset `/samples/index.html`.
263+
[ ] STYLE_03 — Reset `/games/index.html`.
264+
[ ] STYLE_04 — Reset `/tools/index.html`.
265+
[ ] STYLE_05 — Add `.is-collapsible` shared accordion behavior.
266+
[ ] STYLE_06 — Establish shared tool shell and migrate one tool.
267+
[ ] STYLE_07 — Clarify tool launch labels/help text.
268+
[ ] STYLE_08+ — Continue tool UX migration tool-by-tool.
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# BUILD_PR_STYLE_01_INDEX_RESET_AND_MASTER_ROADMAP_STYLE
2+
3+
## Purpose
4+
Create the style roadmap and execute the first real, testable style migration: reset `/index.html` onto the new Toolbox Aid-derived shared theme.
5+
6+
## Single PR Purpose
7+
Reset `/index.html` to the new shared style foundation without carrying forward existing project-local styling.
8+
9+
## Must Use as Source
10+
- Toolbox Aid live site structure and CSS behavior as the baseline.
11+
- Do not inspect existing HTML-JavaScript-Gaming CSS/HTML to preserve old styles.
12+
13+
## Required Deliverables
14+
1. Add `docs/dev/roadmaps/MASTER_ROADMAP_STYLE.md`.
15+
2. Add `src/engine/theme/main.css` as the new shared foundation.
16+
3. Add `src/engine/theme/toolboxaid-header.html` using Toolbox Aid header source with only these content changes:
17+
- tagline = `HTML-JavaScript Gaming`
18+
- menu = Home / Games / Samples / Tools
19+
4. Add any other theme CSS files needed for a clean separation.
20+
5. Reset `/index.html` to use the new theme and shared header.
21+
6. Remove embedded styling from `/index.html`.
22+
7. Avoid JS-driven styling.
23+
8. Keep HTML-page JS minimal.
24+
25+
## Styling Targets for `/index.html`
26+
- shared Toolbox Aid-derived header
27+
- shared page intro/title area
28+
- consistent spacing and margin rules
29+
- no dependence on old project selectors unless intentionally reintroduced
30+
- no inline style
31+
- no `<style>` block
32+
- no JS style strings
33+
34+
## Acceptance
35+
- `/index.html` is visually testable
36+
- `/index.html` uses only the new shared theme path
37+
- header is loaded from shared source
38+
- existing project-local styling is not preserved as a dependency
39+
- roadmap is added and exhaustive enough to track the remaining migration

0 commit comments

Comments
 (0)