Skip to content

feat(ui): acid edition — kill light theme, crank dark to 1000 µg - #18

Merged
BenBakster merged 1 commit into
mainfrom
ui/acid-edition
May 1, 2026
Merged

feat(ui): acid edition — kill light theme, crank dark to 1000 µg#18
BenBakster merged 1 commit into
mainfrom
ui/acid-edition

Conversation

@BenBakster

Copy link
Copy Markdown
Owner

Что меняется

docs/index.html — только UI. JSON в categories/ и database.js не трогаются.

Палитра / тема

  • Светлая Solarized тема удалена целиком (~90 строк CSS, весь body.theme-light каскад). Кнопка переключения осталась, но клик ничего не делает — light режима больше нет.
  • Фон сдвинут #030303 → #03000a (почти чёрный с violet-подтоном).
  • Matrix-зелёный сохранён как ядро (#00ff88), добавлены акценты: magenta, cyan, yellow, pink, violet, orange.

Анимации (6 keyframes)

Animation Что делает Период
acid-flow Дрейф radial-gradient magenta/cyan/violet на body 22 с
acid-mandala Вращающаяся repeating-conic-gradient мандала поверх 90 с
acid-jitter Хроматическая аберрация text-shadow на заголовках 700 мс, steps(5)
acid-pulse-border Радужный цикл рамок на карточках/кнопках/инпутах 5 с
acid-breathe scale 1.000↔1.015 на result-cards 4 с
acid-hue hue-rotate(0→360deg) на ссылках 8 с

CRT scanlines усилены, добавлен mix-blend-mode: screen. Скроллбар стал градиентным (magenta→cyan→yellow→green). Бэйджи типов (matrix/table/flowchart/calculator/checklist/text) светятся каждый своим неоном.

Размеры кнопок (touch-friendly)

  • Header height 42 → 56 px.
  • .section-btn: padding 14px 22px, min-height 46, font 0.95rem.
  • .header-btn / .toolbar-btn / .back-btn / .fav-chip / .flow-option / .content-tag увеличены.
  • .search-bar font 1.2rem, wrap padding 18×24.
  • Mobile (<768 px) скейлится, но ≥44 px tap target.

Тумблер глитча

  • Плавающий FAB справа снизу: ▓ glitch: ON░ glitch: OFF.
  • Сохраняется в localStorage['psych_glitch'].
  • Хоткей Shift+G (игнорится в input/textarea).
  • body.no-glitch глушит все анимации через animation: none, но оставляет статичные неон-рамки и glow — чтобы страница всё ещё была живой, но без мерцания (accessibility/migraine fallback).

Test plan

  • python3 build.py --strict проходит (CSS only, не должен сломать).
  • Открыть Pages: дашборд, поиск, секции, articles, flowchart-ы, calculators, modals.
  • FAB глитча включает/выключает анимации; состояние сохраняется через reload.
  • Shift+G работает вне input.
  • Mobile viewport — кнопки ≥44 px, layout не ломается.

Removes the Solarized Light theme entirely (~90 lines of CSS deleted —
body.theme-light cascade gutted; toggle button kept but no-op). Dark mode
is now the only mode, on heroic-dose visuals.

Visual changes (docs/index.html only — no JSON/build changes):

- Palette shift: bg #030303 → #03000a (near-black, violet undertone).
  Matrix-green core preserved (#00ff88), accents added: magenta #ff00ff,
  cyan #00ffff, yellow #fffb00, pink #ff1493, violet #b266ff, orange #ff6a00.
- 6 keyframe animations layered on top:
  · acid-flow      — drifting magenta/cyan/violet radial gradients on body bg (22 s)
  · acid-mandala   — rotating repeating-conic-gradient mandala overlay (90 s)
  · acid-jitter    — chromatic-aberration text-shadow flicker on titles (700 ms steps)
  · acid-pulse-border — rainbow border cycle on cards/buttons/inputs (5 s)
  · acid-breathe   — subtle scale 1.000↔1.015 on result cards (4 s)
  · acid-hue       — full hue-rotate(0→360deg) on links (8 s)
- CRT scanlines kept, mix-blend-mode upgraded to 'screen', RGB shimmer
  intensified.
- Custom scrollbar: vertical magenta→cyan→yellow→green gradient.
- Type badges (matrix/table/flowchart/calculator/checklist/text) each get
  their own neon glow color.

Bigger touch targets:
- #header height 42 → 56 px, logo and stats bumped accordingly.
- .section-btn 14×22 padding, min-height 46, font 0.95rem.
- .header-btn / .toolbar-btn / .back-btn / .fav-chip / .flow-option / .content-tag
  all enlarged proportionally with consistent 6 px border-radius.
- .search-bar font 1.2rem, wrap padding 18×24.
- Mobile (<768 px) scaled down but still ≥44 px tap target.

Glitch toggle:
- Floating FAB bottom-right: '▓ glitch: ON' ↔ '░ glitch: OFF'.
- State persists in localStorage key 'psych_glitch'.
- Hotkey Shift+G (ignored when focus is in input/textarea).
- body.no-glitch class kills all 6 animations via animation:none, keeps
  static neon borders + glow so the page still reads as 'alive' but
  doesn't flicker — accessibility/migraine fallback.

No data changes; build.py output (database.js) untouched.
@BenBakster
BenBakster merged commit 008f738 into main May 1, 2026
1 check passed
@BenBakster
BenBakster deleted the ui/acid-edition branch May 1, 2026 01:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant