Насколько Axion отличается от других
Electron, Tauri и Neutralino решают близкую задачу — нативные приложения на веб-технологиях. Axion берёт лучшее из обоих миров: системный WebView, компактные пакеты и строгую модель прав, добавляя единый формат приложений и мобильные платформы.
# Сравнительная таблица
| Характеристика | Axion | Electron | Tauri | Neutralino |
|---|---|---|---|---|
| Ядро | Rust | Node.js + Chromium | Rust | C++ |
| Язык приложения | HTML/CSS/JS | HTML/CSS/JS | HTML/CSS/JS + Rust | HTML/CSS/JS |
| Рендерер | системный WebView | Chromium в комплекте | системный WebView | системный WebView |
| Распространение | один .axn-пакет | бинарник на платформу | бинарник + пакеты ОС | лёгкий бинарник + папка |
| Размер результата | движок ставится один раз | 80–300 МБ на приложение | 5–25 МБ | 1–5 МБ |
| Мобильные | Android, iOS | нет | iOS, Android (wry) | нет |
| Загрузка движка | отдельный Runtime | в каждом приложении | бинарник с приложением | бинарник с приложением |
| Модель прав | capabilities, default deny | настройки вручную | capability ACL | ACL |
| Динамические разрешения | да, с диалогом | нет общего брокера | статический список | нет |
# Размер и распространение
Ключевое архитектурное отличие Axion — вы устанавливаете один движок (вместе с CLI), и дальше любой .axn-пакет весит килобайты или мегабайты: manifest, HTML, CSS, JS и ресурсы.
В Electron каждый выпуск приложения носит с собой собственный Chromium. Десять установленных Electron-приложений — десять копий движка. Axion устроен как ОС: один рантайм управляет всеми приложениями, обновления движка идут разом.
- Экономия — диск и память занимает одна копия движка, а не по копии на приложение.
- Обновления безопасности — достаточно обновить Engine один раз, а не пересобирать каждое приложение.
- Установка «в один клик» —
.axnоткрывается через ассоциацию файлов илиaxion open file.axn.
# Модель безопасности
Безопасность — одна из главных причин, по которым нативным технологиям не хватает «веб-уровня» полировки. Сравнение моделей прав:
| Платформа | Как устроены права | Динамика |
|---|---|---|
| Axion | capabilities в manifest, default deny, единый Permission Broker | да — диалог внутри приложения, одноразовые ticket'ы, помнят решения |
| Electron | contextIsolation, sandbox, nodeIntegration — включается разработчиком вручную | нет общего брокера; безопасность зависит от дисциплины |
| Tauri | capability ACL из конфигурации | частично; права раздаются статически на сборке |
| Neutralino | ACL режимов (native / cloud) | нет |
У Axion проверка прав выполняется движком, а не кодом приложения: XSS во фронтенде не превращается в доступ к файловой системе без решения пользователя. Подробнее — на странице «Безопасность».
# Рендеринг без Chromium
Axion, как Tauri и Neutralino, использует системный WebView вместо комплектного браузера. Это даёт компактность и низкий расход памяти, потому что рендерер уже живёт в системе:
- Windows — WebView2 Runtime;
- macOS / iOS — WKWebView;
- Linux — WebKitGTK;
- Android — системный Android WebView.
Цена подхода — зависимость от версии WebView на машине пользователя. Axion проверяет наличие совместимого движка при установке и сообщает, чего не хватает.
# Экосистема пакетов
.axn — единый формат для пяти платформ, как .apk для Android или .exe привычный для Windows, но кроссплатформенный.
axion package, установка — axion install.# Как выбирать
- Тяжёлый встроенный браузер, максимум экосистемы Node.js — Electron.
- Минимализм, Rust-бэкенд, платформенные релизы — Tauri.
- Миниатюрное приложение для одной платформы — Neutralino.
- Рантайм с пакетной моделью, cap-безопасностью и мобильными устройствами — Axion. Вы пишете один пакет и устанавливаете его на Windows, macOS, Linux, Android и iOS.