Документы фиксируют принятые проектные решения Bare: клиент без фреймворков и сборки, Go-сервер одним бинарём, E2EE на WebCrypto, сервер-реле без истории, локальная история с экспортом/импортом, Web Push + VAPID. Кода нет — сначала документы. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SW4ZXtKn5NjX8NH3Lhm2ND
1.5 KiB
1.5 KiB
Правила работы с репозиторием Bare
Перед любой работой прочитай docs/philosophy.md и docs/architecture.md. Всё в них — принятые решения, а не предложения.
Жёсткие ограничения
- Клиент: HTML, CSS, vanilla JS, нативные браузерные API. Никаких фреймворков, npm-зависимостей и сборки — ES-модули как есть.
- Сервер: Go, стандартная библиотека. Допущены ровно три внешних пакета: webpush-go, драйвер SQLite, argon2. Ничего сверх — без обсуждения.
- Криптография на клиенте: только WebCrypto.
Процесс
- Новые фичи и зависимости по умолчанию отклоняются. Порядок: обсуждение → ADR → код.
- Любое изменение архитектуры — через новый ADR в
docs/decisions/(формат: контекст / решение / следствия). - Простота важнее функций. Сомневаешься — не добавляй.
Документация
Язык — русский. Стиль — сжатый и декларативный: короткие утвердительные абзацы, без маркетинговой воды и канцелярита.