A library for interacting with SQLite databases
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
Ben Ashton f6c78aa525 Added debug message when registering adapters 3 years ago
lib Added debug message when registering adapters 3 years ago
src Added debug message when registering adapters 3 years ago
.gitignore Initial commit 3 years ago
README.md Added README 3 years ago
package-lock.json Fixed webpack configuration issue and updated webpack 3 years ago
package.json Fixed webpack configuration issue and updated webpack 3 years ago
webpack.config.js Fixed webpack configuration issue and updated webpack 3 years ago

README.md

PawSQLite

PawSQLite is a library for interacting with SQLite databases. Through the use of multiple adapters for various environments, it provides a simple API that abstracts out implementation specific quirks.

Installation

You can install using npm:

npm install -s git+https://git.n0m.org/n0m/PawSQLite.git

In order to actually use PawSQLite, you must also install an adapter for your specific environment. Currently, adapters are available for the following environments:

WebSQL:

PawSQLite-WebSQL-Adapter: https://git.n0m.org/n0m/PawSQLite-WebSQL-Adapter

Apache Cordova:

PawSQLite-Cordova-Adapter: https://git.n0m.org/n0m/PawSQLite-Cordova-Adapter

Node.js via Sqlite3 package:

Coming Soon!

Usage

const PawSQLite = require("pawsqlite");
const PawSQLiteWebSQLAdapter = require("pawsqlite-websql-adapter");

PawSQLite.registerAdapter(PawSQLiteWebSQLAdapter)

const db = await PawSQLite.open("test", {
  adapter: 'PawSQLiteWebSQLAdapter'
});

await db.sql(`
  CREATE TABLE contacts (
    contact_id INTEGER PRIMARY KEY,
    first_name TEXT NOT NULL,
    last_name TEXT NOT NULL
  );
`);

const transaction = db.transaction();

console.log(await db.sql("SELECT * FROM contacts"));

await transaction.sql(
  "INSERT INTO contacts (first_name, last_name) VALUES (?, ?)",
  "John",
  "Lennon"
);

await transaction.commit();

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT