Заложить репозиторий: философия, архитектура, модель угроз, ADR
Документы фиксируют принятые проектные решения Bare: клиент без фреймворков и сборки, Go-сервер одним бинарём, E2EE на WebCrypto, сервер-реле без истории, локальная история с экспортом/импортом, Web Push + VAPID. Кода нет — сначала документы. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SW4ZXtKn5NjX8NH3Lhm2ND
This commit is contained in:
@@ -0,0 +1,16 @@
|
||||
# ADR-001: Клиент на ванильных веб-технологиях, без сборки
|
||||
|
||||
## Контекст
|
||||
|
||||
Bare обещает аудируемость: любой должен иметь возможность проверить глазами, что делает код, который исполняет его браузер. Фреймворки, npm-зависимости и сборка превращают исходники в артефакт, который никто не читает.
|
||||
|
||||
## Решение
|
||||
|
||||
Клиент — HTML, CSS и vanilla JS на нативных браузерных API. ES-модули отдаются как есть, без транспиляции и бандлинга. Ноль npm-зависимостей. Один service worker и manifest.json — полноценный PWA.
|
||||
|
||||
## Следствия
|
||||
|
||||
- Код в продакшене байт в байт совпадает с кодом в репозитории.
|
||||
- Нет supply-chain-рисков npm и нет тулчейна, который надо поддерживать.
|
||||
- Состояние, рендеринг и роутинг пишем руками — отказ от удобств фреймворков осознанный.
|
||||
- Поддерживаем только современные браузеры с ES-модулями и WebCrypto.
|
||||
Reference in New Issue
Block a user