From 7300091bb6179c3754442a4edb754f6375ed69e7 Mon Sep 17 00:00:00 2001 From: Danila Khodjaef Date: Wed, 2 Sep 2026 13:42:46 +0300 Subject: [PATCH] Cross-link timeline and UI standards docs; record completed layout work in Plans. Co-authored-by: Cursor --- Documentation/FAC.md | 3 +++ Documentation/Plans.md | 3 +++ Documentation/i18n-russian.md | 1 + Documentation/setup.md | 4 +++- 4 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Documentation/FAC.md b/Documentation/FAC.md index 1ce4f1b..86f39de 100644 --- a/Documentation/FAC.md +++ b/Documentation/FAC.md @@ -373,6 +373,9 @@ Remote: https://gitea.mysuperlab.netcraze.pro/Danilka/Art-gallery | Document | Contents | |----------|----------| +| [basics.md](basics.md) | Architecture, navigation, user flow | +| [movement-tree.md](movement-tree.md) | Tree of Art layout rules | +| [ui-interaction-and-component-standards.md](ui-interaction-and-component-standards.md) | UI interaction and component standards | | [deploy-dev-to-prod.md](deploy-dev-to-prod.md) | Step-by-step release runbook (code, DB, data, images) | | [environments.md](environments.md) | Full dev/prod walkthrough | | [setup.md](setup.md) | Install, env vars, troubleshooting | diff --git a/Documentation/Plans.md b/Documentation/Plans.md index ae1b893..ac7fb27 100644 --- a/Documentation/Plans.md +++ b/Documentation/Plans.md @@ -15,4 +15,7 @@ this file contains draft for future releases and features 6. ~~create search by entity (painting, artist, movement)~~ — done: timeline header + `GET /api/search` 7. ~~create guided tours (with text/extra infor, set of entities)~~ — done: `tours` / `tour_stops`, public Tours popup + 3D tour hall, curator Tour editor — [tours.md](tours.md) 8. ~~curator role + multi-user accounts with permissions~~ — done: `admin`/`curator` roles, permission flags, Users page + `/api/users`, per-user audit — [API.md](API.md#authentication) / [basics.md](basics.md#user-roles-and-access) +9. ~~vertical bottom-up timeline (alternative start page)~~ — done: `VerticalTimeline` + `VerticalMovementBands`, header layout switch — [basics.md](basics.md#timeline-and-movement-flow) +10. ~~Tree of Art timeline (lineage as a growing tree)~~ — done: `MovementTree` + `movementTree.ts`, shareable `?layout=tree` — [movement-tree.md](movement-tree.md) +11. ~~UI interaction and component standards~~ — done: shared doc + Cursor rule for client screens — [ui-interaction-and-component-standards.md](ui-interaction-and-component-standards.md) diff --git a/Documentation/i18n-russian.md b/Documentation/i18n-russian.md index ee736cc..86a7736 100644 --- a/Documentation/i18n-russian.md +++ b/Documentation/i18n-russian.md @@ -35,6 +35,7 @@ Timeline **layout** chrome and chart hints are also localised in `home.json`: | `captionTreeFlow` | Tree of Art chart | Shareable layout URLs (`?layout=tree` etc.) are language-independent; captions follow the active locale. + --- ## Setup (dev) diff --git a/Documentation/setup.md b/Documentation/setup.md index 7198956..60de1a3 100644 --- a/Documentation/setup.md +++ b/Documentation/setup.md @@ -120,7 +120,7 @@ Image fetch can take hours if you run it for the entire catalog. The first line | `npm run dev:server` | API with nodemon reload (local HMR workflow) | | `npm run dev:client` | Vite dev server on :5173 | -See [environments.md](environments.md) for dev/prod URLs, database split, Docker deploy, and sync commands. For Russian UI + catalog text, see [i18n-russian.md](i18n-russian.md). Influence link import/CRUD: [influence-import.md](influence-import.md). Quick reference: [FAC.md](FAC.md). +See [environments.md](environments.md) for dev/prod URLs, database split, Docker deploy, and sync commands. For Russian UI + catalog text, see [i18n-russian.md](i18n-russian.md). Timeline layouts and Tree of Art: [basics.md](basics.md#timeline-and-movement-flow), [movement-tree.md](movement-tree.md). UI behaviour standards: [ui-interaction-and-component-standards.md](ui-interaction-and-component-standards.md). Influence link import/CRUD: [influence-import.md](influence-import.md). Quick reference: [FAC.md](FAC.md). **Production frontend:** build the client, then start the server: @@ -239,6 +239,8 @@ After clone: copy `.env.example` → `.env`, install dependencies, run [one-time | Empty timeline | DB not seeded | `npm run dev:seed` | | 502 / 504 on public URL | Keenetic rule wrong (IP, port, or `https` to device) | Dev → `192.168.10.70:5173`; prod → `192.168.10.122:5173`; protocol **`http`** — see [environments.md](environments.md) | | 503 on public URL | Dev servers not running | `npm run dev:web` (or `dev:server` + `dev:client` for local HMR) | +| `/api` proxy errors on localhost while Vite works | Shell `PORT=5173` makes API bind the same port as Vite | Set `PORT=3451` in `.env` or `DEV_API_PORT=3451`; restart `npm run dev:web` | +| Timeline opens classic after bookmark | Wrong or missing `?layout=` | Use `?layout=tree` or `?layout=vertical`; classic omits the param or uses `?layout=classic` — see [basics.md](basics.md#timeline-and-movement-flow) | | **`manifest unknown`** on TrueNAS deploy | Image not in Gitea | `npm run prod:docker:publish` on dev PC first | | 500 on all `/api/*` | Wrong `.env` or Postgres down | Check connection, logs | | “Biographical information not yet available” | Bios not fetched | `npm run dev:fetch-artist-bios` |