Архитектура

Кросс-cutting технические темы, не привязанные к одной фиче: стек, кэш, автосохранение форм, тесты, дизайн-токены. Если фича сама по себе требует глубокого технического разбора — смотрите её technical.md; здесь — то, что общее для всего приложения.


Что в этом разделе

СтатьяО чём
stack.mdВерсии зависимостей, структура папок, деплой (Hetzner+Dokploy), особенности Next.js 16
sidebar-cache.mdunstable_cache с тегом sidebar:<campaignId>, контракт инвалидации по call-site
form-drafts.mduseFormDraft — debounce-автосохранение форм в localStorage, баннер восстановления
style-tokens.mdТокены UI из STYLE.md — инпуты, кнопки, чипы, контрасты
testing.mdVitest на pure-helpers, SQL-smoke скрипты, build как type-check

Что НЕ в этом разделе

Если тема привязана к конкретной фиче, она живёт в technical.md этой фичи:


Quick links

Фронтенд. Компоненты — components/, хуки — hooks/. Роуты App Router — app/c/[slug]/{accounting,catalog,encounters,items,loops,sessions,…}. Телеграм Mini App — app/tg. Документация (этот сайт) — app/docs/.

Бэкенд. Server actions — app/actions/*.ts. Route handlers — app/api/. Чистые хелперы (без Supabase) — lib/. Запросы к БД — lib/queries/. Supabase-клиенты — lib/supabase/.

Инфраструктура. Деплой, staging, бэкапы — process/git-and-staging.md. Процесс разработки — process/README.md.