Быстрая UI-библиотека размером около 4 КБ, совместимая с React и предлагающая тот же современный API компонентов на основе Virtual DOM.
solidjs/solid
Декларативная JavaScript-библиотека для UI: компилирует JSX в обновления реального DOM и использует тонкозернистую реактивность вместо Virtual DOM.
- Звёзды
- 36,172
- Форки
- 1,136
- Открытые issues
- 36
- Последний коммит
- вчера
Что это?
Solid — JavaScript-библиотека для создания пользовательских интерфейсов. Вместо Virtual DOM её JSX-шаблоны компилируются в узлы реального DOM, а при изменении состояния обновляются только зависящие от него выражения. Компоненты — это обычные функции, которые выполняются один раз для настройки представления, а дальнейшую работу выполняют сигналы, производные значения и эффекты.
В библиотеке есть встроенные примитивы для управления глобальным состоянием через Context и Stores, а также Resources, Suspense и конкурентный рендеринг для загрузки данных с сервера. Она также поддерживает серверный рендеринг с потоковой передачей и прогрессивной гидратацией, а также Error Boundaries и Portals. Можно создавать собственные рендереры, поэтому Solid подходит и для сред за пределами браузера.
Solid построена на JSX и TypeScript и интегрируется с Vite. Библиотека рассчитана на прямой доступ к DOM, поэтому её можно использовать вместе с существующими нативными JavaScript-библиотеками, такими как D3. Поддерживаются современные браузеры для настольных компьютеров и мобильных устройств, выпущенные за последние два года.
Ключевые возможности
- 01Компилирует JSX-шаблоны в узлы реального DOM с тонкозернистыми обновлениями
- 02Автоматически отслеживает зависимости с помощью реактивных сигналов и производных значений
- 03Встроенные Context и Stores для управления глобальным состоянием
- 04Resources, Suspense и конкурентный рендеринг для асинхронных данных
- 05Серверный рендеринг с потоковой передачей и прогрессивной гидратацией
- 06Поддержка пользовательских элементов и собственных рендереров
Сценарии использования
- Создание одностраничных приложений с клиентским рендерингом и тонкозернистой реактивностью
- Создание веб-приложений с серверным рендерингом, которым нужны потоковая передача и прогрессивная гидратация
- Создание переиспользуемых веб-компонентов или пользовательских элементов
- Интеграция существующих нативных JavaScript-библиотек, таких как D3, с прямым доступом к DOM
Быстрый старт
- 1
Создать каркас JavaScript-приложения с помощью degit
npx degit solidjs/templates/js my-app - 2
Перейти в папку проекта
cd my-app - 3
Установить зависимости
npm i - 4
Запустить сервер разработки
npm run dev
Темы
Частые вопросы
- Что такое solid?
- Декларативная JavaScript-библиотека для UI: компилирует JSX в обновления реального DOM и использует тонкозернистую реактивность вместо Virtual DOM. Solid — JavaScript-библиотека для создания пользовательских интерфейсов. Вместо Virtual DOM её JSX-шаблоны компилируются в узлы реального DOM, а при изменении состояния обновляются только зависящие от него выражения. Компоненты — это обычные функции, которые выполняются один раз для настройки представления, а дальнейшую работу выполняют сигналы, производные значения и эффекты.
- solid можно использовать бесплатно? Какая у него лицензия?
- solid распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- solid всё ещё поддерживается?
- Активно поддерживается. Последний коммит в solid — 24 окт. 2026 г..
- Для чего можно использовать solid?
- Создание одностраничных приложений с клиентским рендерингом и тонкозернистой реактивностью Создание веб-приложений с серверным рендерингом, которым нужны потоковая передача и прогрессивная гидратация Создание переиспользуемых веб-компонентов или пользовательских элементов Интеграция существующих нативных JavaScript-библиотек, таких как D3, с прямым доступом к DOM
- Как установить solid?
- Создать каркас JavaScript-приложения с помощью degit: npx degit solidjs/templates/js my-app Перейти в папку проекта: cd my-app Установить зависимости: npm i Запустить сервер разработки: npm run dev
- Где скачать solid?
- Исходный код и инструкции по установке — на GitHub: https://github.com/solidjs/solid
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Omi — фреймворк для Web Components с JSX, реактивностью на основе сигналов, роутером и поддержкой Tailwind для создания переиспользуемых пользовательских элементов.
JavaScript-библиотека для создания интерактивных пользовательских интерфейсов из компонентов, работающих в вебе, на сервере и нативных платформах.
Минималистичный и надёжный JavaScript-фреймворк для добавления реактивного поведения прямо в HTML-разметку.
Nuxt — фреймворк с открытым исходным кодом для создания полнофункциональных веб-приложений и сайтов на Vue.js, готовых к продакшену.
Очень быстрая JavaScript-библиотека в духе React для создания высокопроизводительных интерфейсов на клиенте и сервере.