@nanostores/sql
v0.1.0
Published
Nano Stores wrapper around SQLite or PGLite to generate reactive stores from SQL queries
Maintainers
Readme
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 = ({ name }) => {
const $users = db.store<User>
`SELECT * FROM users WHERE name LIKE '%${name}%'`
// or const $users = db.store(drizzleDb.select().from(usersTable)
// .where(like(usersTable.name, `%${name}%`)))
const users = useStore($users)
if (users.isLoading) {
return <Loader>
} else {
return users.list.map(user => <User>{user.name}</User>)
}
}Made at Evil Martians, product consulting for developer tools.
Docs
Read full docs here.
