# solidnative: SolidJS на Fabric renderer — настоящие нативные iOS и Android без React

> 2026-10-04 · AI Release · @ai_release1

> #solidjs #react-native #fabric #expo

### ⚡ Главное за 5 секунд - **Суть:** SolidJS-компоненты рендерятся как настоящие нативные представления iOS и Android через Fabric renderer от React Native, при этом React не участвует в рендере. - **Где доступно:** проект опубликован на GitHub; начать можно через `npx create-expo-app@latest my-app --template @solidnative/template`. - **Ограничение:** это экспериментальный проект, не готовый к продакшену: ожидаются пробелы, острые углы и ломающие изменения. ### 🔍 Что обнаружено Проект solidnative — это миграция ng-native (аналогичного решения для Angular) на SolidJS. Он рендерит компоненты SolidJS напрямую на Fabric renderer от React Native, так что ` ` становится `UIView` на iOS и `android.view.View` на Android, а React полностью исключён из рендер-пути. Разработчик пишет Solid-компоненты, сигналы и сторы, а затем собирает и запускает приложение инструментами Expo. Технически цепочка выглядит так: JSX компилируется на этапе сборки с помощью `babel-preset-solid` (universal mode), затем универсальный рендерер Solid вызывает `createElement`, `insertNode`, `setProp` и т.д., далее данные уходят в Fabric engine через JSI mutation API, а тот через `nativeFabricUIManager` отправляет их на нативные представления. Solid не использует виртуальный DOM, поэтому запись в сигнал обновляет только те нативные пропсы, которые от него зависят. Несколько записей в одном синхронном прогоне объединяются в один Fabric commit. Важно, что `react-native` и `expo` остаются неизменёнными зависимостями — ничего не форкнуто. ### 💡 Почему это важно Для разработчиков, знакомых с SolidJS, это способ применить привычный инструментарий в мобильной разработке, не подключая React. При этом сохраняется вся экосистема React Native: инструменты Expo (create-expo-app, expo start, Expo Go, development builds, EAS Build/Update/Submit) работают как обычно, а Expo SDK-модули, TurboModules и Fabric-компоненты доступны из Solid. Если библиотека публично использует React-компоненты или хуки, потребуется тонкая Solid-обёртка над её нативной частью — так сделано в `@solidnative/expo` и `@solidnative/router`. ### 🧩 Контекст Проект позиционируется как эксперимент по запуску Solid на архитектуре React Native. Он унаследовал идею от ng-native, который делал то же самое для Angular. В репозитории доступны примеры полноценных приложений: банковский кошелёк, трекер привычек, музыкальный плеер, трекер пробежек с картами, заметки и социальное приложение с платформенными контролами. Для изучения архитектуры есть файл ARCHITECTURE.md с правилами. Среди возможностей — нативный рендеринг текста, изображений, списков, ввода, модальных окон; CSS/Tailwind с медиазапросами и тёмной темой; нативная навигация на основе react-native-screens; Expo-модули как сервисы; анимации; тестирование в Node с фейковым Fabric; а также поддержка веба через `@solidnative/web`.

[Источник](https://github.com/byteab/solidnative)
