Denozordec 454c5009d1 fix(web): error/404 экраны, сплит бандла и bulk-мутации
- RouteErrorComponent/RouteNotFoundComponent на root-маршруте (RU-копирайт,
  retry + переход на главную; redirect в портал не мигает ошибкой)
- settings: форма инициализируется один раз — фоновый refetch больше не
  затирает ввод пользователя
- code splitting: autoCodeSplitting роутов + manualChunks (react/router/query/
  charts/dnd); вход ~507KB вместо единого чанка 1.57MB, recharts (330KB) грузится
  лениво; версия recharts в packages/ui выровнена с apps/web (3.8.0)
- bulk-эндпоинты: POST /agents/approve-bulk и PUT /policy-sets/:id/agents —
  назначение набора агентам одним запросом вместо N×(GET+PUT)
- оптимистичные обновления с rollback: approve, approve-bulk, удаление агента,
  переключение набора
- тесты bulk-операций (45 passed)
2026-09-20 19:12:58 +07:00
2026-07-20 19:28:56 +07:00
2026-07-20 19:28:56 +07:00
2026-07-20 19:28:56 +07:00
2026-07-20 19:28:56 +07:00

EvoFirewall

Централизованный firewall controller: Linux / MikroTik agents, IP lists, allow/deny политики, статистика.

Интеграции: auth-portal (SSO, app id fw), EvoBGP (источник префиксов).

Стек

  • Monorepo: pnpm workspaces + turbo
  • apps/web — Vite + React + TanStack + shadcn/ui + ReUI Frame
  • apps/api — Fastify 5 + Drizzle + SQLite
  • Packages: @evofw/ui, @evofw/shared, @evofw/db

Быстрый старт

pnpm install
cp .env.example .env
pnpm --filter @evofw/db build
pnpm --filter @evofw/shared build
pnpm --filter @evofw/api dev   # :8080
pnpm --filter @evofw/web dev   # :5177

Linux agent (short link из UI /agents → Добавить агента):

curl -fsSL http://localhost:8080/agent-install/<id> | bash
# или:
curl -fsSL http://localhost:8080/<slug> | bash

Legacy one-liner:

curl -fsSL http://localhost:8080/v1/agent/install.sh | \
  EVOFW_CP_URL=http://localhost:8080 \
  EVOFW_SEED=dev-enroll-seed-change-me \
  EVOFW_CLIENT_NAME="web-01" \
  bash

Затем Approve в UI /agents.

Docker

cd deploy/docker
docker buildx bake --allow=fs.read=../.. -f docker-bake.hcl --print default

Compose: deploy/compose/docker-compose.example.yaml. Образ: git.shx.one/<owner>/evofw (алиас evofirewall). CI/релизы: docs/releasing.md.

Docs

См. docs/README.md.

Git

origin  https://git.shx.one/denozord/EvoFirewall.git
S
Description
No description provided
Readme
1.4 MiB
v1.0.1
Latest
2026-09-20 20:45:34 +07:00
Languages
TypeScript 93.1%
Shell 4.7%
RouterOS Script 1%
CSS 0.5%
HCL 0.3%
Other 0.4%