Открытый SDK Google для создания нативно скомпилированных мобильных, веб- и десктопных приложений на единой кодовой базе Dart.
Snapchat/Valdi
Кроссплатформенный UI-фреймворк, который компилирует декларативные компоненты TypeScript в нативные представления iOS, Android и macOS без web view и JS-мостов.
- Звёзды
- 16,379
- Форки
- 537
- Открытые issues
- 22
- Последний коммит
- позавчера
Что это?
Valdi — UI-фреймворк от Snap для создания интерфейсов мобильных и настольных приложений. Вы пишете компоненты на декларативном TSX с TypeScript, а Valdi компилирует их в нативные представления iOS, Android и macOS вместо отображения через web view или JavaScript-мост.
Фреймворк поддерживает переиспользование представлений между экранами, независимый повторный рендеринг компонентов, движок раскладки на C++ с Flexbox и поддержкой RTL, а также рендеринг с учётом области видимости, при котором создаются только видимые представления. В нём также есть hot reload, отладка в VSCode с точками останова и дампами кучи, а также фреймворк для тестирования компонентов.
Компоненты Valdi можно встраивать в существующие иерархии UIKit или Android, использовать нативные представления в раскладках Valdi и писать критичные к производительности модули на C++, Swift, Kotlin или Objective-C с автоматически сгенерированными привязками для TypeScript. Проект находится в бета-версии и распространяется по лицензии MIT.
Ключевые возможности
- 01Компилирует декларативные компоненты TSX в нативные представления iOS, Android и macOS
- 02Hot reload и отладка в VSCode с точками останова и дампами кучи
- 03Глобальное переиспользование представлений и рендеринг с учётом области видимости для более плавной прокрутки
- 04Движок раскладки Flexbox на C++ с автоматической поддержкой RTL
- 05Автоматически сгенерированные типобезопасные привязки между TypeScript и Kotlin, Swift или Objective-C
- 06Встраивание компонентов Valdi в существующие иерархии нативных представлений
Сценарии использования
- Создание кроссплатформенных экранов мобильных приложений без web view
- Постепенное добавление компонентов Valdi в существующее приложение для iOS или Android
- Разработка критичных к производительности модулей на C++ или Swift с привязками для TypeScript
- Создание функциональных интерфейсов с интенсивной прокруткой, например лент
Быстрый старт
- 1
Установите Valdi CLI через npm
npm install -g @snap/valdi - 2
Выполните одну команду для настройки зависимостей
valdi dev_setup - 3
Создайте папку проекта и выполните его начальную настройку
mkdir my_project && cd my_project valdi bootstrap - 4
Установите приложение на iOS или Android
valdi install ios
Что важно знать
- Проект находится в статусе бета-версии, а согласно README, инструменты и документация всё ещё проходят проверку в условиях открытого исходного кода.
- Для сборки под iOS или macOS требуется Xcode 26.5 или 27, поэтому понадобится Mac.
В подборках
Темы
Частые вопросы
- Что такое Valdi?
- Кроссплатформенный UI-фреймворк, который компилирует декларативные компоненты TypeScript в нативные представления iOS, Android и macOS без web view и JS-мостов. Valdi — UI-фреймворк от Snap для создания интерфейсов мобильных и настольных приложений. Вы пишете компоненты на декларативном TSX с TypeScript, а Valdi компилирует их в нативные представления iOS, Android и macOS вместо отображения через web view или JavaScript-мост.
- Valdi можно использовать бесплатно? Какая у него лицензия?
- Valdi распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- Valdi всё ещё поддерживается?
- Активно поддерживается. Последний коммит в Valdi — 6 нояб. 2026 г..
- Для чего можно использовать Valdi?
- Создание кроссплатформенных экранов мобильных приложений без web view Постепенное добавление компонентов Valdi в существующее приложение для iOS или Android Разработка критичных к производительности модулей на C++ или Swift с привязками для TypeScript Создание функциональных интерфейсов с интенсивной прокруткой, например лент
- Как установить Valdi?
- Установите Valdi CLI через npm: npm install -g @snap/valdi Выполните одну команду для настройки зависимостей: valdi dev_setup Создайте папку проекта и выполните его начальную настройку: mkdir my_project && cd my_project valdi bootstrap Установите приложение на iOS или Android: valdi install ios
- Где скачать Valdi?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Snapchat/Valdi
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Open-source Python-фреймворк для разработки GUI-приложений под desktop, мобильные и встроенные платформы на единой кодовой базе.
Lottie- и dotLottie-заставки для React Native, которые запускаются нативно вместе с приложением, ещё до загрузки JavaScript-бандла.
Пакет Flutter для создания чатов с настраиваемыми виджетами сообщений и экраном чата, который можно подключить к любому бэкенду.
Фреймворк с открытым исходным кодом для создания универсальных нативных приложений на React, работающих на Android, iOS и в вебе.
Кроссплатформенный фреймворк на Vue.js: один код для iOS, Android, HarmonyOS, Web и множества платформ мини-приложений.