Commit Graph

75 Commits

Author SHA1 Message Date
kgva CMS dd915e1797 content: revise german about text again, fix bms detail
split into two paragraphs, dropped the remaining dash, and corrected the schooling detail: gestalterische bms (not vorbildung/foundation year) came before architecture studies at ost and hslu.
2026-08-15 00:22:18 +00:00
kgva CMS b665293922 fix: about-page text preview responds to hover again while a file is locked
the peek column only exists for images (a side-by-side thumbnail makes sense there, not for text) — but the mouseenter handler routed ALL rows through the locked/peek branch once something was locked, so on about (all text rows, locked by default on load) hovering dossier.md/openbureau.md/rapport.md while cv.md was locked did nothing at all. rows without data-img now always drive the main preview directly on hover, lock or not.
2026-08-15 00:19:05 +00:00
kgva CMS aa33ce56bf content: less cheesy, less literal german about text
dropped the weight-of-a-material-vs-weight-of-a-social-crisis parallel and the sciences-meet-and-must-become-real ending — too directly translated from the english original, reads try-hard in german. keeps the same facts and the core point about architecture sitting between disciplines, phrased more plainly.
2026-08-15 00:11:37 +00:00
kgva CMS ffe9fa11fc fix: category tags flush right instead of wrapping onto their own line
grid-column:3 + justify-self:end put name and tags in the same cell but grid stacks co-located items instead of placing them side by side, so the tag wrapped to a second line. wrapped both in a flex row (justify-content:space-between) inside that grid cell instead.
2026-08-15 00:10:02 +00:00
kgva CMS 6b59b58082 feat: category tags (design/film/photo/text) on the portfolio index
new categories taxonomy, multi-value per project. shown inline in each ls row as [tag] after the slug, muted like the other row metadata and inverting with it on hover/select. reuses the existing shared taxonomy template, so /categories/ and /categories/<tag>/ come for free as browsable archives in the same shell style already used for schools/degrees/semesters.\n\nassigned by medium: design for anything with plans/models, film for the two video projects, photo for the trieste study trip, text alongside design for translation (collage + accompanying theoretical text).
2026-08-14 23:50:54 +00:00
kgva CMS 892dfe600d fix: portfolio index rows can be unlocked again
clicking the already-locked row navigated (the old second-click-to-open flow), which meant there was no way back to the unlocked hover-browsing state once something got locked. row clicks now toggle lock/unlock uniformly everywhere; the preview image is the one dedicated way to actually open a project, on the index same as project pages.
2026-08-14 23:46:38 +00:00
kgva CMS 4aae68d836 fix: hover drives the main preview again when nothing is locked
the peek column only makes sense as an alternative to disturbing an existing lock — with nothing locked, hover had stopped updating anything at all, leaving whatever was last locked stuck on screen while browsing other rows. now: locked -> hover drives the peek column only; unlocked -> hover drives the main preview directly, same as before locking existed.
2026-08-14 23:15:43 +00:00
kgva CMS 7f6bedebdc content: rewrite rapport, dossier, and openbureau texts
rapport: trimmed the competitor-positioning paragraph and the tools-i-wanted framing, just the feature list and the free/self-hostable facts now.\n\ndossier: reflects that it left the rhino plugin behind and is now its own standalone desktop app (own geometry kernel, own rust/wasm rendering engine, own file format), instead of the old rhino-vs-open-source-cad justification.\n\nopenbureau: reframed as the platform the other two are built on rather than just a collection point for finished tools, and named as still taking shape.
2026-08-12 00:10:24 +00:00
kgva CMS 55926a84f2 fix: peek column images now use a fixed 3:2 crop, matching the portfolio-index preview
plans and photos have wildly different natural aspect ratios (a 46x31in A0 detail plan next to a 3:2 photo), so the peek box was jumping size on every hover. now uses the same aspect-ratio:3/2 + object-fit:cover treatment as the portfolio-index preview it already mirrors in position/width — stays a fixed size regardless of what is hovered.
2026-08-11 23:09:17 +00:00
kgva CMS 932d7a7653 content: replace hotel national plans with the official CAD exports, add a third detail view
plan-full-ground-floor and plan-intervention-detail now come from the actual Vectorworks plan PDFs (GRUNDRISS-100.pdf, 1_20.pdf) rather than the typst-export renders — crisper linework, smaller files despite higher resolution. added plan-intervention-near.webp (from 100-NAH.pdf) as a third, medium-detail view between the full floor plan and the 1:20 intervention detail.
2026-08-11 23:01:04 +00:00
kgva CMS 84ac7ae562 fix: peek image starts at the same top offset as the info text
was flush with the shell lines (top:0); now matches .proj-infos 3.6rem margin-top so both side columns start at the same height.
2026-08-11 22:01:55 +00:00
kgva CMS 37fd39f488 feat: peek column to the left of the file list, mirroring the info text on the right
replaces the last commits attempt (hover updating the main preview directly) with what was actually asked for: the main preview now stays on the locked file, untouched by hover; a separate 18rem-wide column to the left of the file list — same width and spot as .proj-info on the right — shows whichever OTHER image is under the mouse while something is locked, and disappears again once the mouse leaves the list or lands back on the locked row itself.\n\npositioned via plain absolute positioning against .filebrowser (not scroll-tracked — it scrolls together with the list naturally), sitting inside the padding .proj-layout already reserves to keep the file list anchored. only enabled above 1300px, with a safety margin over the ~1168px point where that reserved space stops being wide enough; caught and fixed a bug in the same pass where .proj-peek had no display:none fallback below that breakpoint and would otherwise render as a bare block in-flow.
2026-08-11 19:41:06 +00:00
kgva CMS 0469e9dab5 fix: hover now peeks the preview even while a file is locked; remove the scroll-triggered sticky thumbnail
the scroll-triggered mini-preview from the last commit solved the wrong problem — it never showed in practice (images are generally as tall or taller than the short project texts, so the gap it needed never opened), and wasnt what was actually wanted: the existing left-column preview pane should keep responding to hover even once a file is locked, only reverting to the locked file once the mouse leaves the list. lock now only gates the is-selected styling, the ● locked indicator, and the click-to-navigate semantics on the portfolio index — not what the pane displays.
2026-08-11 19:34:11 +00:00
kgva CMS 113a954b16 feat: sticky locked-image thumbnail while scrolling; two-click preview-then-open on the portfolio index
the locked image now gets a small pinned copy (18rem, same width as the text column) that appears once the real preview scrolls out of view and disappears again once the text runs out — fixed-position + scroll-driven rather than CSS sticky, since the filebrowser box is only ever as tall as its own content, not the much taller text next to it.\n\nalso scoped the existing click-outside-unfreezes-the-lock listener to clicks inside .filebrowser only, since with listings now starting locked, a click to read or select a word in the text would otherwise silently kill the sticky preview.\n\nportfolio index: rows there are real links (href + data-img together), so a single click used to jump straight into the project — the only way to preview a different one first was hovering, which does nothing for touch and is now also blocked while something is locked. first click on a different project now just previews it (like hover used to); a second click on the same row, or clicking the preview image itself, opens it.
2026-08-11 19:12:43 +00:00
kgva CMS 5c5b267a7f feat: portfolio/about listings start locked on their first file
same end state as clicking the first row by hand — hovering other rows no longer steals the preview until you actually click one. clicking a different row still jumps straight to it and relocks there; clicking the locked row again releases it back to hover-browsing. games are excluded (nothing to browse), matched via the game-embed class rather than page context so it stays correct no matter which page a game was launched from.
2026-08-11 19:03:17 +00:00
kgva CMS f318ef9a2f fix: hovering .. no longer clears the preview pane
the .. row has no image/video/text of its own, so the preview fell through to the blank-everything branch — most noticeable on video projects, where the video would stop and vanish. now non-preview rows just leave whatever was last shown in place.
2026-08-11 19:01:07 +00:00
kgva CMS 68474c5940 content: finish hotel national image/text update (fa7232c only committed the binaries)
markdown still referenced the deleted plan-ground-floor.webp and lacked the tamara grabovska credit; this completes what fa7232c should have included.
2026-08-11 18:58:37 +00:00
kgva CMS fa7232cd1e content: add object oriented ontology video project; upgrade hotel national to the higher-res image set
new video project (Basic Lecture MAA, FS26) mirrors the-shadow-over-emmen exactly: video + thumbnail, no body text, no images list. video re-encoded to ~1.7Mbps h264/aac (matches shadow.mp4 bitrate), thumbnail is a representative frame.\n\nhotel national: swapped the typst-export images for the original higher-res photos/plans from hotel-national-images/, credited co-author Tamara Grabovska in the text.
2026-08-11 18:07:25 +00:00
kgva CMS 37600ccb43 content: add portfolio info.md text; refresh museo/dojo/textilsteinwerk texts and add three new projects from portfolio-2026
new: hotel national (MA studio, 2026), translation (MA collage collab. with Tim Schwander + Jérôme Arnold, 2026), utopie der koexistenz (BA thesis, Kantonsspital Baden, 2025) — text sourced from portfolio-2026.typ, translated EN<->DE, images pulled from the higher-res portfolio-export folder and converted to webp.
2026-08-10 23:20:44 +00:00
kgva CMS a49603890b feat: add simcity, pacman, tetris as inline retro-game easter eggs
Generalized the doom launcher into launchGame(name) keyed by archive.org identifier; each cds into a fake .<name> folder and runs <name>.sh, same as doom.
2026-08-10 23:03:53 +00:00
kgva CMS d436474719 fix: doom on the home page showed two $ ls blocks (its own + the always-open home menu) 2026-08-10 22:57:17 +00:00
kgva CMS 3c7cc6ae6b feat: doom runs inline as .doom/doom.sh instead of a floating draggable window
cds into a fake .doom folder (breadcrumb + file listing match every other page); .. is a real link back to wherever you typed doom from, so leaving is just normal pjax navigation.
2026-08-10 22:54:15 +00:00
kgva CMS d3f63251eb consolidate: fold openbureau (+ rapport, dossier) into about; drop it as a standalone nav destination
about now lists cv.md, openbureau.md, rapport.md, dossier.md side by side. the standalone /openbureau/ page, its layout, and its home-menu entry are gone; internal links repointed to /about/. also switch the info-panel text to justified (with hyphenation, per earlier request) instead of ragged-right.
2026-08-10 22:50:04 +00:00
kgva CMS 85148623d7 fix: lang-switch hover text was invisible (later rule reset color to dark over a black background) 2026-08-10 22:44:24 +00:00
kgva CMS 8f37bba08b feat: switch mono typeface from Iosevka Curly Slab to plain Iosevka
Self-hosted, subset to exactly the glyphs the site uses (fonttools --unicodes), so the pair is smaller (6.4+6.3KB) than the curly-slab files they replace despite covering en+de plus shell/tree symbols.
2026-08-10 22:35:41 +00:00
kgva CMS 62ec86dab7 fix: keep the home menu at its normal width — only the shell line + lang-switch should stretch 2026-08-10 22:26:10 +00:00
kgva CMS f8a5b0900b remove: studio page and every reference to it (menu, boot log, help/tree/fetch commands, colophon) 2026-08-10 22:26:01 +00:00
kgva CMS f848aac05d feat: widen the shell line / lang-switch site-wide, not just on pages with an info panel 2026-08-10 22:21:34 +00:00
kgva CMS 07f1782354 feat: widen shell line + lang-switch to match info panel width; hyphenated ragged-right for info text 2026-08-10 22:18:35 +00:00
kgva CMS 5ef304b690 fix: pin project file list to the fixed column position, shrink+dim the info panel, drop obsolete lang-switch padding 2026-08-10 22:14:11 +00:00
kgva CMS fb6e87ef24 feat: filebrowser shows only images; info.md moves to a side panel in Libre Baskerville 2026-08-10 22:02:37 +00:00
kgva CMS b807373472 fix: hide the de/en lang-switch on long prompt lines instead of clipping around it 2026-08-10 21:24:13 +00:00
kgva CMS 121273ff54 fix: ghost-text clip also respects the de/en lang-switch at the row end 2026-08-10 21:20:20 +00:00
kgva CMS b37c1a94be fix: prompt line still wraps+overlaps on long ghost text — hard-clip from front in JS 2026-08-10 21:11:30 +00:00
karim ffe4aca72d fix: filebrowser scroll+lang hover+black-flash+shell one-line
- filebrowser: select() only scrollIntoView on keyboard, not hover
- lang-switch: .lang-switch:hover → invert rule (header excluded before)
- black-flash: color-scheme light; dark script sets colorScheme
- shell: flex-wrap nowrap; keepEnd() scrolls on input

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-03 02:00:35 +02:00
kgva CMS 2be0026627 cms: publish portfolio/zzz-git-test.md 2026-06-30 18:43:22 +00:00
kgva CMS 46e783c8b0 cms: publish portfolio/zzz-git-test.md 2026-06-30 18:43:21 +00:00
karim 7422d33f33 deploy: kgva CMS update script (rebuild cms/core in place on CT130)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 19:54:38 +02:00
karim 541337487c Merge commit 'c70495e5252af7e5c43bc566a5dcdb44c0da4bd4' 2026-06-30 19:54:38 +02:00
karim c70495e525 Squashed 'cms/core/' changes from 59b9e20..9676bb0
9676bb0 core: update-check is token-free (running vs vendored cms/core version)
59fb691 core: System panel fix + settings (update-check, self-service password, admins)
67bcb6a docs: HANDOVER — kgva LIVE on core (Variant A, in-place CT130); both sites on core
8f4068d docs: HANDOVER — stage 6 (schema editor) + 9 (kgva on core) done; live cutovers pending

git-subtree-dir: cms/core
git-subtree-split: 9676bb0264a7caf254ccbc461bc803a6b3583127
2026-06-30 19:54:37 +02:00
karim 51a94b85d3 cms: add openbureau-core CMS (DB-less, auth: local) — vendored at cms/core
kgva can now be edited through openbureau-core instead of Decap: a small Node CMS
(git subtree at cms/core) with a schema-driven editor at /admin, file-based login
(no Supabase/Postgres), Markdown on disk. cms/kgva.config.js models the content
(portfolio/pages/sections); docker-compose builds the core image (Hugo 0.163.3,
no VITE_SUPABASE_URL → local-auth admin) and mounts the repo as the site. seed an
admin via cms/seed-admin.mjs; deploy/provision-lxc.sh + ADMIN.md updated.

Verified DB-less end-to-end on real content (staged): local login → schema-driven
editor → 42 entries (de/en) → stats → create/preview/cleanup; unknown frontmatter
(image galleries) preserved on save. The LIVE static site (CT130 timer→hugo→nginx)
is unaffected — hugo ignores cms/; the CMS is dormant until provisioned.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 01:52:49 +02:00
karim bba1df32cb Squashed 'cms/core/' content from commit 59b9e20
git-subtree-dir: cms/core
git-subtree-split: 59b9e2075ac48cf017db38009d54dbe56a98fffc
2026-06-30 01:46:20 +02:00
karim c8ee284ba6 Merge commit 'bba1df32cb1de7e595a6ecd9bcb84afe8aa178c3' as 'cms/core' 2026-06-30 01:46:20 +02:00
karim c46f9a48f7 i18n: bilingual de/en, bundle js from assets via hugo pipes, css refresh
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-30 01:07:04 +02:00
karim 7932bc35e4 studio: add fund bureau as first reference 2026-06-30 00:25:10 +02:00
karim 64cb04e0eb openbureau as filebrowser 2026-06-29 12:06:56 +02:00
karim 5567aeabdd openbureau as filebrowser 2026-06-29 12:06:55 +02:00
karim c2fb592291 openbureau as filebrowser 2026-06-29 12:06:55 +02:00
karim d3673164f1 openbureau as filebrowser 2026-06-29 12:06:54 +02:00
karim cddbe1352f openbureau as filebrowser 2026-06-29 12:06:54 +02:00