Об этом проекте

Ori Studio — это рабочая среда для проектирования и анализа оригами. Она объединяет общий фронтенд на React/Vite (используемый как браузерным приложением, так и настольной оболочкой Tauri v2) с семейством движков на Rust и WebAssembly. Значительная часть функциональности происходит из портов社区-инструментов оригами, поверх которых добавлены новые возможности. Основные возможности, описанные в README: - Создание и редактирование схем складок на основе порта редактора Oriedita на Rust/WebAssembly (сам являющегося форком Orihime), включая диагностику складываемости, исправления и файловые форматы. - Моделирование на основе TreeMaker: движок treemaker-core на Rust охватывает файлы моделей, оптимизацию, проверки осуществимости, генерацию схем складок, преобразование FOLD и подготовку к симуляции; treemaker-cli предоставляет инструмент командной строки для просмотра, проверки, оптимизации и экспорта моделей. - Авторство коробочного плиссирования через headless-ядро, портированное из Box Pleating Studio. - Рабочая область Simulate, складывающая базы в интерактивную 3D-модель с помощью порта Origami Simulator на TypeScript. - Метод Search 22.5°, который отправляет дерево в ExplOri и показывает ближайшие совпадения. - "Detect CP from Image" (бета): фотография или рендер квадратной схемы складок обрезается, проходит через модель обнаружения и решается в точную редактируемую схему. Модель загружается один раз (45 МБ) и остаётся на устройстве; Settings ▸ Models показывает, что установлено. - Рабочая область Edit поддерживает добавление справочных изображений рядом со схемами складок; экспорт в `.ori` опускает изображения для сохранения совместимости с существующими инструментами. Структура репозитория включает apps/web (общий фронтенд), apps/tauri (настольная обёртка) и apps/cp-detect-architecture-inspector (локальный отладочный интерфейс для пошагового просмотра конвейера обнаружения и компиляции). Доступные крейты включают treemaker-core, treemaker-cli, treemaker-wasm, treemaker-fold, treemaker-flatfold, а также oristudio-cp, oristudio-cp-wasm, oristudio-cp-compiler, oristudio-bp, oristudio-bp-wasm, oristudio-cp-detect, oristudio-cp-detect-wasm, oristudio-cp-eval и oristudio-cp-detect-inspector. Пакеты рабочего пространства npm включают @treemaker/web, @treemaker/tauri, @treemaker/origami-simulator и @treemaker/cp-detect-architecture-inspector. Начало работы: `npm ci`, затем `npm run dev:web` или `npm run dev:desktop`. Использование Rust через `cargo add treemaker-core` или `cargo install treemaker-cli`; привязки WebAssembly через `treemaker-wasm = "0.1"`. Проверки при разработке включают cargo fmt/clippy/test, npm lint/typecheck/test для веб-приложения и wasm-pack build/test для WASM-крейта TreeMaker. Размещённое приложение доступно на oristudio.dev. Подписанные DMG для Apple Silicon публикуются из локальных нотаризованных сборок на GitHub Releases; другие платформы отмечены как пока недоступные. Проект лицензирован под GPL-2.0-or-later, поскольку включает прямой порт GPL-модельного кода TreeMaker на Rust и поставляет ReferenceFinder, скомпилированный в WebAssembly из вендорного исходного кода.