mirror of
https://github.com/olehomelchenko/astrolabe.git
synced 2026-08-08 02:02:33 +00:00
Landing: add marketing page at /, move the app to /app/
Multi-page Vite build: index.html serves a new standalone landing (src/landing), app/index.html serves the app at /app/. The PWA service worker and manifest are scoped to /app/, so the landing stays uncontrolled and always-fresh; hash view-state routing is unchanged. The landing reuses src/core and the chart-renderer service only (never stores/orchestration/modals/components) and lazy-loads Vega. Its demos drive the real core: a hero snippet switcher over CHART_EXAMPLES, an interactive Chart Builder over a new profiled core fixture (sample-dataset), and a Theme Builder gallery with three from-scratch custom themes plus built-in presets.
This commit is contained in:
@@ -38,6 +38,12 @@ the spec_; do not port legacy code.
|
||||
- **Modals** go through a registry + coordinator + shell, not ad-hoc rendering.
|
||||
- **CSS Modules + design tokens** (`styles/tokens.css`); themes flip `[data-theme]`.
|
||||
- **No shared library with Syto** — patterns are adapted, never imported.
|
||||
- **The app is served at `/app/`; `/` is a standalone marketing landing** (`src/landing/`).
|
||||
Multi-page Vite build — `index.html` → the landing, `app/index.html` → the app (hash
|
||||
view-state routing is unchanged by the base path). The landing reuses `src/core` and the
|
||||
`chart-renderer` service only — never stores, orchestration, modals, or components — and
|
||||
lazy-loads Vega, so `/` stays light. The PWA service worker and manifest are scoped to
|
||||
`/app/`, leaving the landing uncontrolled and always-fresh.
|
||||
|
||||
See [`docs/architecture/`](docs/architecture/00-overview.md) for the patterns behind each
|
||||
layer (state, persistence, modals, routing, rendering, inference, relationships) and
|
||||
@@ -49,8 +55,11 @@ external repo is needed to work from them.
|
||||
## Directory Structure
|
||||
|
||||
```
|
||||
index.html # Landing entry (served at /)
|
||||
app/index.html # App entry (served at /app/)
|
||||
src/
|
||||
├── main.tsx # App entry (font wiring, startup, render)
|
||||
├── main.tsx # App bootstrap (font wiring, startup, render)
|
||||
├── landing/ # Marketing landing at / — standalone page; reuses core + chart-renderer
|
||||
├── core/ # Portable spec engine (no browser/React/Monaco)
|
||||
├── app/
|
||||
│ ├── components/ # React UI (CSS Modules co-located)
|
||||
|
||||
Reference in New Issue
Block a user