TrailBase v0.23.7: альтернатива Firebase в одном бинарнике для .NET 10 и Flutter
TrailBase - это бэкенд с открытым исходным кодом в виде одного исполняемого файла, построенный на Rust, SQLite и Wasmtime. Версия 0.23.7 включает исправления UI и улучшенную обработку ошибок.
TrailBase выпустил v0.23.7 6 февраля 2026 года. Заметки к релизу в основном содержат чистку UI и исправления для повышения надёжности, но реальная причина внимания к продукту - это его концепция: TrailBase стремится быть открытым бэкендом в виде одного исполняемого файла с аутентификацией и админ-UI, построенным на Rust, SQLite и Wasmtime.
Если вы создаёте мобильные или десктопные приложения на Flutter 3.x и поставляете сервисы или инструменты на .NET 10 и C# 14, этот ракурс “одного бинарника” заслуживает внимания. Дело не в хайпе. Дело в сокращении движущихся частей.
Почему бэкенды в виде одного исполняемого файла важны в реальных проектах
Многие команды умеют собирать API. Меньшее число команд могут поддерживать согласованность стека из нескольких сервисов на:
- машинах разработчиков
- агентах CI
- эфемерных средах предпросмотра
- небольших продакшен-развёртываниях
Один бинарный файл с локальной папкой depot скучен в хорошем смысле. Он делает фразу “работает на моей машине” воспроизводимой, потому что машина делает меньше.
Запустить его на Windows за минуты
TrailBase документирует скрипт установки для Windows и простую команду run. Это самый быстрый способ его оценить:
# Install (Windows)
iwr https://trailbase.io/install.ps1 | iex
# Start the server (defaults to localhost:4000)
trail run
# Admin UI
# http://localhost:4000/_/admin/
При первом запуске TrailBase инициализирует папку ./traildepot, создаёт пользователя-администратора и выводит учётные данные в терминал.
Если вам нужен компонент UI для аутентификации, README показывает:
trail components add trailbase/auth_ui
# Auth endpoints include:
# http://localhost:4000/_/auth/login
Небольшая проверка работоспособности на .NET 10 (C# 14)
Даже без подключения полной клиентской библиотеки полезно превратить вопрос “работает ли он?” в детерминированную проверку, которую вы можете запустить в CI или локальных скриптах:
using System.Net;
using var http = new HttpClient
{
BaseAddress = new Uri("http://localhost:4000")
};
var resp = await http.GetAsync("/_/admin/");
Console.WriteLine($"{(int)resp.StatusCode} {resp.StatusCode}");
if (resp.StatusCode is not (HttpStatusCode.OK or HttpStatusCode.Found))
{
throw new Exception("TrailBase admin endpoint did not respond as expected.");
}
Это намеренно скучно. Сбои должны быть очевидными.
Что изменилось в v0.23.7
Заметки к v0.23.7 выделяют:
- чистку UI учётных записей
- исправление некорректного обращения к ячейкам в админ-UI при первом доступе
- улучшенную обработку ошибок в TypeScript-клиенте и админ-UI
- обновления зависимостей
Если вы оцениваете проект, такие “релизы поддержки” обычно являются хорошим знаком. Они снижают трение, как только вы начинаете использовать инструмент ежедневно.
Источники:
Comments
Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.