Start Debugging

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. Меньшее число команд могут поддерживать согласованность стека из нескольких сервисов на:

Один бинарный файл с локальной папкой 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 выделяют:

Если вы оцениваете проект, такие “релизы поддержки” обычно являются хорошим знаком. Они снижают трение, как только вы начинаете использовать инструмент ежедневно.

Источники:

Comments

Sign in with GitHub to comment. Reactions and replies thread back to the comments repo.

< Назад