Встраиваемая SQL-база данных на Rust, совместимая с диалектом SQL, форматом файлов и C API SQLite, с экспериментальным интерфейсом Postgres.
electric-sql/pglite
Встраиваемая WASM-сборка Postgres в виде TypeScript-библиотеки для запуска в браузерах, Node.js, Bun и Deno.
- Звёзды
- 16,182
- Форки
- 460
- Открытые issues
- 161
- Последний коммит
- позавчера
Что это?
PGlite упаковывает сборку Postgres на WebAssembly в клиентскую TypeScript-библиотеку, чтобы запускать полноценную базу данных Postgres в браузере или процессе Node.js, Bun либо Deno без установки отдельного сервера. Базу можно использовать в оперативной памяти или сохранять данные в файловую систему на Node.js, Bun и Deno, а в браузере — в IndexedDB.
В отличие от более ранних проектов, запускавших Postgres в браузере, PGlite не использует виртуальную машину Linux. Он компилирует однопользовательский режим PostgreSQL в WASM и добавляет слой ввода-вывода, который позволяет JavaScript взаимодействовать с ним. Размер пакета после сжатия gzip составляет около 3 МБ; он поддерживает ряд расширений Postgres, включая pgvector и PostGIS.
PGlite поддерживает только одного пользователя и одно подключение, а сам проект пока находится в альфа-версии.
Ключевые возможности
- 01Запускает Postgres в браузерах, Node.js, Bun и Deno без отдельного сервера
- 02Поддерживает работу в оперативной памяти и сохранение данных в файловую систему или IndexedDB
- 03Включает расширения, такие как pgvector и PostGIS
- 04Поставляется как TypeScript-библиотека размером около 3 МБ после сжатия gzip
- 05Устанавливается через npm, Bun или Deno и загружается с CDN
Сценарии использования
- Запуск тестов, совместимых с Postgres, без старта сервера базы данных
- Создание локально-ориентированных веб-приложений, которые хранят данные в браузере
- Прототипирование функций на SQL в скриптах Node.js или Deno
- Использование векторного поиска или пространственных запросов в клиентском приложении
Быстрый старт
- 1
Установите пакет в проект Node.js
npm install @electric-sql/pglite - 2
Импортируйте PGlite и выполните запрос к базе данных в памяти
Что важно знать
- PGlite рассчитан на одного пользователя и одно подключение.
- Проект находится на стадии альфа-версии, поэтому возможны несовместимые изменения.
В подборках
Темы
Частые вопросы
- Что такое pglite?
- Встраиваемая WASM-сборка Postgres в виде TypeScript-библиотеки для запуска в браузерах, Node.js, Bun и Deno. PGlite упаковывает сборку Postgres на WebAssembly в клиентскую TypeScript-библиотеку, чтобы запускать полноценную базу данных Postgres в браузере или процессе Node.js, Bun либо Deno без установки отдельного сервера. Базу можно использовать в оперативной памяти или сохранять данные в файловую систему на Node.js, Bun и Deno, а в браузере — в IndexedDB.
- pglite можно использовать бесплатно? Какая у него лицензия?
- pglite распространяется с открытым исходным кодом под лицензией Apache-2.0. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- pglite всё ещё поддерживается?
- Активно поддерживается. Последний коммит в pglite — 21 окт. 2026 г..
- Для чего можно использовать pglite?
- Запуск тестов, совместимых с Postgres, без старта сервера базы данных Создание локально-ориентированных веб-приложений, которые хранят данные в браузере Прототипирование функций на SQL в скриптах Node.js или Deno Использование векторного поиска или пространственных запросов в клиентском приложении
- Как установить pglite?
- Установите пакет в проект Node.js: npm install @electric-sql/pglite Импортируйте PGlite и выполните запрос к базе данных в памяти
- Где скачать pglite?
- Исходный код и инструкции по установке — на GitHub: https://github.com/electric-sql/pglite
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Локальная реактивная NoSQL-база данных для JavaScript-приложений в браузерах, Node.js, React Native и Electron с репликацией на собственный бэкенд.
Минималистичная TypeScript-обёртка над IndexedDB — встроенной базой данных браузера — с более простым API запросов.
DuckDB — аналитическая SQL-база данных, работающая внутри приложения без отдельного сервера.
Расширение PostgreSQL для высокопроизводительной аналитики временных рядов и событийных данных в реальном времени.
Подборка программ, библиотек, инструментов, расширений и обучающих материалов для PostgreSQL, которую поддерживает сообщество.