Commit Graph
57 Commits
Author SHA1 Message Date
Danila KhodjaefandCursor f6c73c1792 Smooth 3D hall boot: disable shadows and warm door shaders under the loading overlay.
Keep Loading gallery until Environment and gl.compileAsync finish (with timeouts), GPU-upload painting textures before dismiss, and drop Canvas shadow maps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-25 15:32:10 +03:00
Danila KhodjaefandCursor bc8369e373 Add public curator notes and U-shaped hall wall hang.
Paintings get editable curator notes with brass plates in the 3D hall, and visit order now uses the far/end wall between left and right.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-25 14:21:22 +03:00
Danila KhodjaefandCursor 5ddc3fd7f0 Add guided tours and unify left-to-right hall wall hang.
Visitors walk published tours in a 3D hall with stop notes; curators edit drafts via Tour editor. All galleries (artist, movement, tour) place the first work left of the entrance view and the last on the right.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 20:27:36 +03:00
Danila KhodjaefandCursor 48bd17e985 Add curator Influences tool with import wizard, CRUD, and graph.
CSV/JSON/XLSX mapping wizard expands artist-level rows to all paintings, blocks duplicate file/data imports via content and payload hashes, and documents the workflow in influence-import.md.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-16 18:54:26 +03:00
Danila KhodjaefandCursor 62d7ebbe6a Document prod schema migrate before restore and i18n search index fix.
Release runbook now describes default migrateProdSchema, auto-migrate safety guard, and troubleshooting for updated_at restore failures; i18n docs cover partial entity_translations index.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 12:21:53 +03:00
Danila Khodjaef a2c27ea526 Release: weekly deploy 2026-07-15 12:10:57 +03:00
Danila KhodjaefandCursor ca58c43648 Add Russian i18n with DB translations, locale API, and curator review UI.
UI chrome via react-i18next, catalog text in entity_translations with ru.wikipedia seeding, locale-aware search, and Translations page for publish workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 11:51:46 +03:00
Danila KhodjaefandCursor f247b418d8 Add dev-prod harmonize tool for bidirectional catalog and image sync.
Schema migrates dev to prod only; catalog rows merge by updated_at and images by mtime with union merge and conflict reporting.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 11:02:17 +03:00
Danila Khodjaef 81ebad2120 Release: weekly deploy 2026-07-15 10:38:53 +03:00
Danila KhodjaefandCursor acc4a91a08 Add catalog search on timeline header and fix Back to Timeline navigation.
Public GET /api/search over artists, movements, and paintings with a debounced header bar on the timeline; Back to Timeline resets zoom and gallery session.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-15 10:34:29 +03:00
Danila Khodjaef 50fc253ab2 Release: weekly deploy 2026-07-09 18:34:01 +03:00
Danila KhodjaefandCursor f78c14f307 Fix debug upload persistence and UX; exclude prod audit log from DB restore
Uploads and fixes now bust browser cache via file-mtime keys in API
responses. Debug upload shows a centered loading overlay and blocks search
while uploading. Prod DB restore skips curator_audit_log.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-09 18:30:19 +03:00
Danila Khodjaef 62096e8210 Release: weekly deploy 2026-07-09 16:03:48 +03:00
Danila Khodjaef 0ceb1c1c8c Release: weekly deploy 2026-07-09 13:36:33 +03:00
Danila Khodjaef f72ddcc3e4 Release: weekly deploy 2026-07-09 13:31:47 +03:00
Danila Khodjaef 3810e61bb8 Release: weekly deploy 2026-07-08 18:21:05 +03:00
Danila Khodjaef cdca271e08 Release: weekly deploy 2026-07-08 18:15:52 +03:00
Danila Khodjaef aa125ccb9b Release: weekly deploy 2026-07-08 18:06:19 +03:00
Danila KhodjaefandCursor 0de95fd151 Fix devtoprod git step exit-code handling
Add Invoke-Git with safe external command execution and stop using prod LAN URL for dev validateBuild checks.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:52:01 +03:00
Danila Khodjaef c391fcc21e Release: weekly deploy 2026-07-08 17:49:05 +03:00
Danila KhodjaefandCursor 3934cedc62 Fix devtoprod validateBuild exit-code handling
Ensure Invoke-Npm returns correct exit code without breaking step logic.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:46:56 +03:00
Danila KhodjaefandCursor 9e28f3db3f Fix validateBuild failing due to npm output capture
Ensure Invoke-Npm streams output to host and returns only exit code.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 17:32:49 +03:00
Danila KhodjaefandCursor 4361178413 Prefer dev LAN bounds in validateBuild
Avoid relying on dev HTTPS when it can return transient 504 pages.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 15:52:45 +03:00
Danila KhodjaefandCursor ae6ffc8a08 Make dev validateBuild bounds check resilient
Retry and prefer LAN bounds URL to avoid transient 504 failures.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 15:48:51 +03:00
Danila KhodjaefandCursor aa6635803d Show 3D hall loading overlay during canvas and texture boot.
Display Loading gallery and Loading paintings in the canvas area while the WebGL scene initializes and wall textures resolve, and document the behavior.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 15:18:16 +03:00
Danila KhodjaefandCursor 21e3e41e48 Add one-command dev-to-prod release with clear SUCCESS/FAILED banners.
Introduce devtoprod:release orchestrator, config file, CLI result footers on deploy scripts, auto-thumb regeneration on curator fixes, and updated deploy documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-08 14:54:56 +03:00
Danila KhodjaefandCursor 313666a4ab Make dev->prod deploy work for non-superuser role and fix image sync.
restore-db-data.js: fall back to multi-pass insert when the DB role cannot set session_replication_role, and parse multi-line INSERT values (bios) as whole statements. sync-images-to-prod.ps1: fix SMB root variable typo and fail fast with guidance when the share is not mapped. Document SMB mapping, non-superuser restore, and a troubleshooting table in the release runbook.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 15:26:35 +03:00
Danila Khodjaef ac1ae5794f Release: <summary of changes> 2026-07-07 14:30:38 +03:00
Danila KhodjaefandCursor a86fdcce1b Normalize painting thumbnail filenames and add catalog input datasets.
Collapse doubled underscores/spaces in thumbnail filenames to single underscores, drop stale oversized originals, and add artist/painting/influence source datasets under Inputs/.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:38:59 +03:00
Danila KhodjaefandCursor 96285737f5 Rename npm scripts to environment-prefixed names (dev:/prod:/devtoprod:/prodto:dev:/infra:).
Align package.json scripts and their references across scripts/, infra/, and db/ SQL with the dev-first workflow naming scheme.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:37:21 +03:00
Danila KhodjaefandCursor a2263ca186 Document gallery loading markers, WebGL recovery, and movement filtering.
Update basics.md for the new loading indicators, 3D WebGL context-loss recovery, and the corrected movement-visibility rule (span overlap plus any catalogued artist). Refresh remaining docs and config for the current dev-first workflow and npm script names.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:36:34 +03:00
Danila KhodjaefandCursor 1408811948 Add gallery loading indicators and recover from WebGL context loss.
- Show loading markers while the catalog, portrait thumbnails, and 3D
  halls load so users know loading is still in progress.
- Recover the 3D hall from a lost WebGL context by remounting the canvas
  with a fresh context instead of leaving a permanent dark window, and
  guard the HDR environment map behind an error boundary.
- Show movement streams whose span overlaps the view even when their
  artists lived outside the visible time range.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-07 12:31:56 +03:00
Danila Khodjaef 99b8559607 Speed up timeline load with portrait thumbs, bootstrap API, and caching.
Add catalog bootstrap endpoint, portrait thumbnail pipeline, lazy queued timeline images, gzip compression, and 3D texture throttling with code-split VirtualGallery.
2026-07-06 14:27:29 +03:00
Danila Khodjaef bdddadc4d6 Document development-first workflow with weekly prod releases.
Default all day-to-day work to gallery_dev and devgallery; add Cursor rule and update docs, env examples, and deploy guide for scheduled prod promotion.
2026-07-06 09:58:01 +03:00
Danila Khodjaef 9da065acbe Add curator authentication with audit logging and fix empty 3D gallery sessions.
Introduce session-based curator login, gate debug/checkup routes, log mutations to curator_audit_log, and keep guest hall preload public. Fix gallery view mounting so WebGL halls render reliably after navigation.
2026-07-06 00:17:01 +03:00
Danila Khodjaef aa31a2aa6e Improve movement ribbon layout with collision-aware labels and hover highlight.
Add FAC operator cheat sheet and link it from README and setup docs.
2026-07-05 23:07:44 +03:00
Danila KhodjaefandCursor 2edf577faf Add dev/prod environments with TrueNAS Docker production deploy.
Split PostgreSQL into gallery_dev and gallery_prod, add Docker/Gitea deploy tooling,
SMB image sync, pgAdmin split script, dev:web on Keenetic :5173, and operator docs.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-04 15:15:19 +03:00
Danila Khodjaef 02d238b043 Improve timeline UX and add catalog restore scripts for paintings and portraits.
Load the home-page catalog once with a lightweight artists API, batch pan/zoom updates per frame, use dynamic year labels, and speed up movement-flow zoom. Add sync-image-paths and fetch-artist-images plus docs for the post-seed pipeline.
2026-07-03 18:33:16 +03:00
Danila Khodjaef 7f26696328 Shorten painting image filenames that exceeded Windows path limits.
Rename Fra Angelico predella and Hieronymus Bosch diptych files so they can be tracked on Windows and committed reliably.
2026-07-03 14:29:23 +03:00
Danila Khodjaef 2b4274093e Add seed scripts, proxy Vite on public domain, and seed painting images.
Restore seed-wikipedia.js and seed-catalog-data.js so npm run setup works on a fresh clone. Point nginx at the Vite dev client and allow the public hostname in Vite config.
2026-07-03 13:52:57 +03:00
Danila KhodjaefandCursor f542c689c9 Add debug Remove entry, Show more auto-picker, and update docs.
DELETE /api/paintings/:id removes works and image files with gallery refresh and catalog navigation; Show more opens the search modal on load; documentation updated for migrate schema and debug workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 22:32:23 +03:00
Danila KhodjaefandCursor b2cae284ac Add PainterPalette integration, canonical DB schema, and influence UI fixes.
Integrate Inputs/PainterPalette.csv for artist metadata and influence links, add db/schema.sql with server/migrate.js, letterbox influence panel thumbnails, and refresh Titian/Pontormo images.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-22 12:09:47 +03:00
Danila KhodjaefandCursor 4eead54062 Add production deployment, photorealistic movement walls, and fix duplicate influence links.
Configure hosting for gallery.mysuperlab.netcraze.pro and LAN access, enhance movement gallery textures with period-appropriate painted materials, dedupe influenced-by API responses via painting_influence_sources, and refresh several painting image files.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 23:00:13 +03:00
Danila KhodjaefandCursor df29848d89 Add movement gallery wings with period interiors and expand timeline features.
Movement galleries split large catalogs into chronological wings (~55 works), use era-themed 3D interiors with side-wall windows, wing navigator on the back exit, and front archways between wings. Also adds painting annotations, timeline event guides, portrait hover highlights, and documentation/API updates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 16:54:19 +03:00
Danila KhodjaefandCursor 0972b5df99 Add debug More/Clear/Upload tools for paintings and artist portraits.
Extends the debug panel on painting detail and artist bio with a 20-result search picker, local image upload, and clear-to-empty-frame workflow, plus API routes, artist checkup migration, and documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-21 13:14:06 +03:00
Danila KhodjaefandCursor b4425445bb Add and refresh Giotto and Masaccio painting images from image fetch.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 23:58:00 +03:00
Danila KhodjaefandCursor 019ce4e136 Improve 3D gallery and debug checkup workflow for image curation.
Add parquet floor, museum-style exit, movement-tinted walls, and gold/black
frames with gallery sync after Fix it. Debug panel gets Checked and Fix it
buttons; documentation and image-fetch reliability updates included.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 22:05:24 +03:00
Danila KhodjaefandCursor 4c6acd5a3a Add checkup review flags, duplicate detection, and corrected painting images.
Introduce checkup_checked/checkup_fixed on paintings with Checkup page filters and API. Fixed paintings auto-mark as reviewed. Add find-duplicates tooling and document debug/checkup workflow. Include Botticelli and Michelangelo image fixes from checkup.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 20:45:55 +03:00
Danila KhodjaefandCursor 4683089495 Add bulk image search on Checkup page and apply image fixes.
Auto-queue Google-family searches for filtered rows with Fix-it support; include corrected painting images from checkup workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 19:52:43 +03:00
Danila KhodjaefandCursor bf7db9b25e Add influence rework, image checkup, debug mode, and fetched paintings.
Support artist and movement influence links with web discovery, a developer checkup table with gallery/detail thumbnails, and debug image search with fix-it workflow.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 10:29:43 +03:00
Danila KhodjaefandCursor 0ece1195fa Enhance timeline and movement flow UI; add fetched painting images.
Timeline: era and historical-event click-to-zoom, event markers from historical-events.ts. Movement flow: shared zoom/pan, viewport-fit layout, curved lineage streams, hover-to-reveal artist lifespans on stacked lanes. Docs updated. Includes batch-fetched paintings and regenerated thumbs.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-20 00:21:31 +03:00
Danila KhodjaefandCursor 35c337253d Improve batch image fetch speed and document the pipeline.
Add random queue sampling and a 10s per-painting deadline for fetch-images batches, cap HTTP timeouts to the remaining budget, and update docs plus newly fetched artwork files.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 17:59:32 +03:00
Danila KhodjaefandCursor d8385d83d6 Add painting detail navigation, influence lamps, and catalog tooling.
Expand the gallery with prev/next browsing and fullscreen detail view, golden influence lamps and chronological wall layout in 3D halls, and scripts/docs for catalog expansion, influence edges, and multi-source image fetching.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 16:35:33 +03:00
Danila KhodjaefandCursor 792a0b1a77 Improve 3D gallery UX, placeholders, and image accuracy.
Add multi-row dynamic halls, eye-level camera, canvas covers for missing works, preserved view when returning from detail, and corrected image overrides for Kauffman and Raphael. Update documentation and add fetched painting assets.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 11:40:08 +03:00
Danila KhodjaefandCursor 08f99d7a29 Redesign 3D gallery as single hall per artist with exit navigation.
Restore React client source, add hall-to-hall navigation via painting influences grouped by movement, and update documentation.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 10:10:13 +03:00
Danila KhodjaefandCursor 44d3d4359a Add project documentation under Documentation/.
Covers architecture, setup, database schema, API reference, and image pipeline; link from README.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 09:46:44 +03:00
Danila KhodjaefandCursor 40db99d734 Initial commit: virtual art gallery application.
Express API with PostgreSQL, React/Vite/Three.js frontend, and locally cached artwork images.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-19 09:38:22 +03:00