Skip to content

Latest commit

 

History

267 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nitro SQLite

Nitro SQLite is a SQLite library for React Native on iOS, macOS, visionOS, and Android, built with Nitro Modules. It provides synchronous and asynchronous queries, transactions, and batch operations.

Read the documentation for setup, guides, integrations, and the API reference.

If you use a coding agent, give it the NitroSQLite skill. It links to focused guidance for connections, queries, transactions, concurrency, and migration. See the AI agent guide for what to check in generated code.

Installation

Requires React Native 0.75 or newer and react-native-nitro-modules 0.37.1 or newer.

npm install react-native-nitro-sqlite react-native-nitro-modules

Rebuild the native app after installing. Expo projects need a development build; Expo Go cannot load this native module. See Getting Started for details.

Example

import { open } from 'react-native-nitro-sqlite'

const db = open({ name: 'app.sqlite' })
db.execute('CREATE TABLE IF NOT EXISTS notes (id INTEGER PRIMARY KEY, body TEXT)')
db.execute('INSERT INTO notes (body) VALUES (?)', ['Hello'])

const { rows } = db.execute<{ id: number; body: string }>(
  'SELECT id, body FROM notes',
)
console.log(rows._array)

db.close()

Migrating from Quick SQLite

react-native-quick-sqlite 8.x was succeeded by react-native-nitro-sqlite 9.x. Follow the migration guide before updating an app with existing database files.

Community and contributing

Join the Margelo Community Discord. Contributions are welcome through issues and pull requests.

License

MIT.

About

💽 Fast SQLite library for React Native built using Nitro Modules

Topics

Resources

Contributing

Stars

577 stars

Watchers

4 watching

Forks

Releases

Sponsor this project

Packages

Used by

Contributors

Languages