Скилл Tech

Технологический стек

Выбор технологического стека по типу проекта (статический, API, full-stack и т.д.). Используется при создании нового проекта, сервиса или модуля.

Обзор

Tech Stack предоставляет строгие правила выбора технологий на основе типа проекта. При создании нового проекта, сервиса или модуля агент автоматически выбирает стек из дерева решений — без догадок, без изобретений, без вопросов. Принципы: простота важнее сложности, производительность важнее удобства, широко принятые инструменты с сильными сообществами.

Типы проектов и стеки

  • Статический лендинг — HTML, CSS, Tailwind, Alpine.js. Без SPA.
  • Статический многостраничник — PHP, HTML, Tailwind. SSR-шаблоны. Docker обязателен.
  • Веб-фронтенд (SEO) — Next.js, React, Tailwind, shadcn/ui, Vite, pnpm, Vitest, Playwright.
  • SPA / Дашборд — Vite, React или Vue, Tailwind, TanStack Query, Vitest.
  • Микросервисный API — NestJS, Fastify (обязательно), PostgreSQL, Prisma, Redis, NATS.
  • Python API — FastAPI, uvicorn, uv, ruff, pydantic, sqlalchemy, pytest.
  • AI/LLM — Python, FastAPI, uv, ruff, OpenAI/OpenRouter SDK, Redis.

Обязательные тулчейны

Python: uv (зависимости), ruff (линт + формат), pytest (тесты). Node/TypeScript: pnpm, TypeScript, eslint + prettier, vitest, playwright для E2E. Docker обязателен для всех бэкенд-сервисов.

Правила архитектуры

  • Нет SPA там, где достаточно HTML
  • Fastify вместо Express — всегда
  • Redis как кэш по умолчанию
  • Event-driven системы — NATS или Kafka
  • PHP только для SSR/шаблонов

Инфраструктура и бэкапы

Бэкапы серверов: restic + Backblaze B2 (нативный бэкенд, клиентское шифрование, дедупликация, снапшоты). Бэкапы БД: per-engine утилиты (pg_dump, mysqldump) через restic.

Политика версий зависимостей

Всегда ставить последнюю стабильную версию (LTS где применимо). Если новая мажорная версия ломает совместимость — адаптировать код, не даунгрейдить. Запускать pnpm outdated сразу после scaffold. Guard от галлюцинаций AI: проверять версии через npm view или pip index versions перед указанием в конфигах.

Паттерн сайтов экосистемы

Маркетинговые сайты Arcanada используют PHP 8.4 FPM (без фреймворка), Tailwind CSS 4 (CDN), Alpine.js 3 (CDN), nginx, Cloudflare (DNS + SSL), деплой через rsync. URL-based i18n с префиксами /en/ и /ru/.