Repolode
solidjs

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. 1

    Создать каркас JavaScript-приложения с помощью degit

    npx degit solidjs/templates/js my-app
  2. 2

    Перейти в папку проекта

    cd my-app
  3. 3

    Установить зависимости

    npm i
  4. 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 для создания переиспользуемых пользовательских элементов.

13,3 тыс.1,3 тыс.TypeScriptOtherОбновлён 15 дней назад