← Ко всем open source проектам

Svelte

sveltejs/svelte

Svelte — компонентный JavaScript-фреймворк, который переносит большую часть работы в компиляцию и генерирует компактный код интерфейса.

Форки 4,941
Автор sveltejs
Язык JavaScript
Лицензия MIT
Обновлено 2026-06-10

Что это такое

Svelte — фреймворк для создания веб-интерфейсов из компонентов. Его главная идея: часть работы, которую другие фреймворки выполняют в браузере, Svelte переносит на этап сборки. Компонент превращается в обычный JavaScript, который точечно обновляет страницу.

Для разработчика Svelte выглядит как HTML с `<script>` и стилями рядом. Реактивность задается простыми присваиваниями, а не отдельным API состояния. Из-за этого небольшие компоненты часто читаются проще: видно разметку, данные и стили в одном месте.

Что внутри

Репозиторий содержит компилятор, служебный код для выполнения, тесты, документацию и код вокруг языка компонентов Svelte. В современной экосистеме рядом с ним обычно используют SvelteKit для маршрутизации, серверного рендеринга и сборки приложения.

Практический сценарий — писать компоненты `.svelte`, собирать их через Vite/SvelteKit и получать приложение с небольшим количеством клиентского кода. Для дизайнерских систем и интерактивных виджетов Svelte часто привлекает тем, что компонентная модель остается близкой к веб-платформе.

Простой компонент

Фрагмент показывает синтаксис компонента: данные в script, обработчик события и разметка рядом.

Язык: HTML
<script>
  let count = 0
</script>

<button on:click={() => count += 1}>
  Нажато {count}
</button>

Сильные стороны

Сильная сторона Svelte — компактность модели. Меньше служебного кода в компоненте, понятная реактивность и хорошая интеграция со сборкой делают его удобным для интерфейсов, где важны размер, скорость и простота чтения.

Ограничения

Ограничение — размер экосистемы и особенности компиляции. React и Vue имеют больше готовых библиотек и примеров. Svelte может быть отличным выбором для нового проекта, но для большой команды важно заранее проверить компоненты, тестирование, SSR-сценарии и поддержку нужных библиотек.