Skip to content

iurio-com/connect-sqlite3

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

77 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Connect SQLite3

connect-sqlite3 is a SQLite3 session store modeled after the TJ's connect-redis store.

Requires Node.js >= 22.5.0 — uses the built-in node:sqlite module (DatabaseSync). No native addons needed.

Note: node:sqlite is currently experimental in Node.js and may emit a warning on startup.

Installation

	  $ npm install connect-sqlite3

Options

  • table='server_sessions' Database table name
  • db=dbConnection A DatabaseSync instance from node:sqlite
  • concurrentDB='false' Enables WAL mode (defaults to false)

Note: The options parameter requires an already initialized database connection instead of a file name. This design allows the library to remain flexible about database connection management in your application.

Usage

    var connect = require('connect'),
        { DatabaseSync } = require('node:sqlite'),
        dbConnection = new DatabaseSync(':memory:'),
        SQLiteStore = require('connect-sqlite3')(connect);

    connect.createServer(
      connect.cookieParser(),
      connect.session({ store: new SQLiteStore({ db: dbConnection }), secret: 'your secret' })
    );

with express 4.x:

    var session = require('express-session');
    var { DatabaseSync } = require('node:sqlite');
    var SQLiteStore = require('connect-sqlite3')(session);

    var dbConnection = new DatabaseSync('./sessions.db');
    app.use(session({
      store: new SQLiteStore({ db: dbConnection }),
      secret: 'your secret',
      cookie: { maxAge: 7 * 24 * 60 * 60 * 1000 } // 1 week
    }));

Test

    $ npm test

About

SQLite3 session store for connect and express.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 97.0%
  • CSS 2.6%
  • HTML 0.4%