Перейти к содержимому
Назад к портфолио

Личный проект · 2026

Maine

Maine сокращает путь от сохранённого хоста до настоящего терминала. macOS-клиент использует SwiftUI, SwiftTerm и системный процесс OpenSSH, не подменяя транспорт и конфигурацию SSH. Хосты, пароли и снимки сессий хранятся в едином vault, зашифрованном мастер-паролем. Опциональная синхронизация работает через собственный Rust-сервер и передаёт зашифрованные данные, а не открытые учётные данные. macOS — эталонный клиент; нативные Windows- и Android-версии ещё доводятся до функционального паритета.

Роль
Продуктовый дизайн, нативные клиенты и протокол синхронизации
Год
2026
Полный стек
10 инструментов
Окно Maine на macOS: список хостов, две именованные сессии одного сервера и подключённый терминал
Интерфейс проекта — live-capture или реконструкция по рабочей реализации

Полный стек

  • Swift 6
  • SwiftUI
  • SwiftTerm
  • OpenSSH
  • AES-256-GCM
  • Rust
  • Axum
  • SQLite
  • C# / WPF
  • Kotlin / Compose

На чём всё держится

  1. Общий контракт — версионируемый формат файла, а не общий UI. macOS, Windows и Android реализуют одинаковую оболочку AES-256-GCM vault; совместимость проверяется межплатформенными fixtures.
  2. На macOS PTY запускает пользовательский OpenSSH, сохраняя работу ключей, агента, сертификатов и ProxyJump. Несколько именованных сессий находятся под каждым хостом; сохранённый текст scrollback шифруется вместе с vault, а не записывается в отдельный лог.
  3. Опциональный сервер синхронизации хранит зашифрованные данные и хеши токенов. Условная запись, локальные конфликтные копии и последние 32 версии на сервере защищают от незаметной перезаписи устаревшим устройством. Клиент синхронизации пока реализован только на macOS.

Если продолжать

  1. Закрыть пробелы паритета Windows и Android, прежде всего восстановление сессий, жизненный цикл и интерфейс управления хостами.
  2. Перенести существующий протокол синхронизации в Windows и Android; Linux остаётся будущим клиентом, а не выпущенной платформой.
Следующий проектFlatline