Об этом проекте
Astrofox — это программа для создания анимационной графики, предназначенная для превращения аудио в визуальные видео. Она распространяется как проект с открытым исходным кодом под лицензией MIT и может запускаться либо как веб-приложение, либо как офлайн-приложение для настольных систем.
Основной рабочий процесс
Проекты открываются и сохраняются как локальные файлы .afx. В README отмечается, что проекты .json и устаревшие проекты .afx со сжатием gzip всё ещё можно открывать. Приложение описывается как клиентское приложение Next.js, и для разработки не требуется бэкенд или служба аутентификации.
Запуск из исходного кода
В README описан рабочий процесс на основе pnpm: клонируйте репозиторий, установите зависимости с помощью pnpm install, соберите с помощью pnpm build и запустите с помощью pnpm start. Для разработки приложение запускается командой pnpm dev.
Веб-развёртывание
Коммиты развёртываются через Vercel с использованием стандартного скрипта сборки pnpm build. В README предупреждают, что не следует изменять этот скрипт для упаковки настольной версии.
Настольная версия (Electron, офлайн)
Для разработки используется pnpm dev:desktop, что объединяет сервер разработки Next с оболочкой Electron. Для production-упаковки используется pnpm package, который выполняет статический экспорт с BUILD_TARGET=desktop в out/, затем упаковывает electron/ вместе с out/ с помощью electron-builder. Установщики записываются в release/. Варианты для конкретных платформ и распакованные варианты доступны через pnpm package:dir, package:mac, package:win и package:linux.
Ввод и вывод файлов
Веб-версия и настольная версия используют одни и те же браузерные средства выбора файлов, применяя File System Access API с резервными вариантами input/download. Мост Electron зарезервирован для оформления окна, временных файлов и экспорта через ffmpeg, при этом абсолютные пути используются только при необходимости. Дополнительные сведения приведены в docs/desktop-capabilities.md.
Экспорт видео
В веб-версии экспорт использует браузерный MediaRecorder (WebM или MP4, когда поддерживается). В настольной версии экспорт выполняет офлайн-рендеринг кадров, а затем использует встроенный бинарный файл ffmpeg для создания MP4 (H.264/AAC). Команды упаковки загружают бинарный файл для платформы и включают его в bin/.
Сообщество и поддержка
В README есть ссылки на демонстрационное видео, сайт проекта, чат в Discord, форум Reddit и трекер задач GitHub для сообщений об ошибках.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.