@nanostores/sql

Nano Stores wrapper around SQLite or PGLite to generate reactive stores from SQL queries
4,282 42
Install
npm install @nanostores/sql
Latest Version:0.7.0
License:MIT
Last Updated:Oct 15, 2026
Links: GitHub  ·  npm
Maintainer: ai

Nano Stores SQL

Nano Stores wrapper around SQLite or PGLite to generate reactive stores from SQL queries. This wrapper us useful if you moved logic from UI components to smart stores.

  • Support multiple databases drivers: SQLocal, Expo, PGLite, or your custom driver.
  • Can be used in browser with OPFS ot with React Native.
  • Can be used with Drizzle to have type-safe query generation or with plain SQL strings to be very small in JS bundle.
import { openDb } from '@nanostores/sql'
// Or import { expoDriver } from '@nanostores/sql/expo'
import { sqlocalDriver } from '@nanostores/sql/sqlocal'

const db = openDb(sqlocalDriver('app.sqlite'))

const User = ({ id }) => {
  const $users = db.store<User>
    `SELECT * FROM users WHERE id = ${id}`
  // or const $users = db.store(drizzleDb.select().from(usersTable)
  //   .where(eq(usersTable.id, id)))
  const users = useStore($users)
  if (users.status === 'loading') {
    return <Loader>
  } else {
    return {users.value[0].name}
  }
}

  Nano Stores SQL is built by Evil Martians, an American design and engineering consultancy for developer tools, AI, and cybersecurity startups.


Docs

Read full docs here.

Related Packages

@nanostores/i18n

A tiny (≈600 bytes) i18n library for React/Preact/Vue/Svelte

217,043 306
@storybook/addon-contexts

Storybook Addon Contexts

816,181 91,337
@nanostores/deepmap

A helper for Nanostores to create deep maps

220,586 9
@depup/nanostores

A tiny (351 bytes) state manager for React/Preact/Vue/Svelte with many atomic tr...

1,302 7,630
@nanostores/router

A tiny (765 bytes) router for Nano Stores state manager

85,222 326

Version History

Version Released License
0.7.0 MIT
0.6.0 MIT
0.5.3 MIT
0.5.2 MIT
0.5.1 MIT