{"id":43821,"library":"seriate","title":"seriate","description":"A cross-platform Node.js module for Microsoft SQL Server based on node-mssql, providing connection pooling, transaction contexts, and straightforward query APIs. Current stable version is 5.0.0. Seriate wraps mssql to offer simplified configuration with named connection pools, automatic pooling per database, and shortcut methods like execute and executeTransaction. It emits connectivity events and supports SQL Server, Windows/NTLM authentication. Release cadence is low, primarily maintenance. Differentiator: opinionated pooling and context management reduces boilerplate for SQL Server operations in Node.js.","status":"active","version":"5.0.0","language":"javascript","source_language":"en","source_url":"git://github.com/LeanKit-Labs/seriate","tags":["javascript"],"install":[{"cmd":"npm install seriate","lang":"bash","label":"npm"},{"cmd":"yarn add seriate","lang":"bash","label":"yarn"},{"cmd":"pnpm add seriate","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"Underlying Microsoft SQL Server client driver; all database operations rely on it.","package":"mssql","optional":false}],"imports":[{"note":"Package is ESM-only; CommonJS require will fail.","wrong":"const seriate = require('seriate')","symbol":"seriate","correct":"import seriate from 'seriate'"},{"note":"Named export from root module, not a subpath.","wrong":"import addConnection from 'seriate/addConnection'","symbol":"addConnection","correct":"import { addConnection } from 'seriate'"},{"note":"Exported as named member; namespace import also works but named is preferred.","wrong":"import * as seriate from 'seriate'; seriate.setDefault(config)","symbol":"setDefault","correct":"import { setDefault } from 'seriate'"}],"quickstart":{"code":"import seriate from 'seriate';\n\nconst config = {\n  host: process.env.DB_HOST ?? 'localhost',\n  user: process.env.DB_USER ?? 'sa',\n  password: process.env.DB_PASSWORD ?? '',\n  database: 'master',\n  pool: { max: 10, min: 4, idleTimeoutMillis: 30000 }\n};\n\nseriate.setDefault(config);\n\nseriate.execute({\n  query: 'SELECT 1 AS test',\n  params: {}\n}).then(result => {\n  console.log(result);\n}).catch(err => {\n  console.error(err);\n});\n\nseriate.on('connected', ({ name }) => console.log(`Connected: ${name}`));\nseriate.on('failed', ({ name, error }) => console.error(`Failed: ${name}`, error));","lang":"typescript","description":"Configures a default connection pool using environment variables, executes a simple SELECT query, and listens for connectivity events."},"warnings":[{"fix":"Use import syntax instead of require().","message":"v5 drops CommonJS support; ESM only.","severity":"breaking","affected_versions":">=5.0.0"},{"fix":"Pass connection name as first argument or use setDefault first.","message":"v5 deprecated direct method imports like seriate.execute without a connection argument; use contexts or explicit connection names.","severity":"deprecated","affected_versions":">=5.0.0"},{"fix":"Use 'localhost' instead of '.' or '127.0.0.1'.","message":"Connection config 'host' must not be '.'; use 'localhost' or actual hostname for named instances.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Ensure unique host/user/database combinations for separate pools.","message":"Multiple connection pools for same database are not created; pool parameters are ignored if config matches existing pool.","severity":"gotcha","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'5.0.0':30 'api':25 'authent':62 'automat':42 'base':12 'boilerpl':76 'cadenc':64 'configur':37 'connect':18,40,55 'context':21,73 'cross':4 'cross-platform':3 'current':26 'databas':45 'differenti':69 'emit':54 'event':56 'execut':50 'executetransact':52 'javascript':83 'like':49 'low':66 'mainten':68 'manag':74 'method':48 'microsoft':9 'modul':7 'mssql':16,33 'name':39 'node':15 'node-mssql':14 'node.js':6,82 'offer':35 'oper':80 'opinion':70 'per':44 'platform':5 'pool':19,41,43,71 'primarili':67 'provid':17 'queri':24 'reduc':75 'releas':63 'seriat':1,31 'server':11,60,79 'shortcut':47 'simplifi':36 'sql':10,59,78 'stabl':27 'straightforward':23 'support':58 'transact':20 'version':28 'windows/ntlm':61 'wrap':32","created_at":"2026-06-05T17:01:38.141775+00:00","updated_at":"2026-06-05T17:01:38.141775+00:00","problems":[{"fix":"npm install seriate; use ESM import syntax (import seriate from 'seriate')","cause":"Package not installed or imported incorrectly in CommonJS environment.","error":"Error: Cannot find module 'seriate'"},{"fix":"import seriate from 'seriate' or import { execute } from 'seriate'","cause":"Calling seriate.execute without importing as default or using named import incorrectly.","error":"TypeError: seriate.execute is not a function"},{"fix":"Check server address, port (default 1433), and ensure TCP/IP is enabled.","cause":"SQL Server not accessible; incorrect host, port, or firewall blocking.","error":"ConnectionError: Failed to connect to localhost:1433 - Could not connect (sequence)"}],"ecosystem":"npm","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":null,"cli_name":null,"cli_version":null,"type":"library","homepage":"http://github.com/leankit-labs/seriate","github":"git://github.com/LeanKit-Labs/seriate","docs":null,"changelog":null,"pypi":null,"npm":"seriate","openapi_spec":null,"status_page":null,"smithery":null,"categories":["database"],"base_url":null,"auth_type":null,"provenance":{"verified_status":null,"verified_at":null,"last_verified":"2026-06-05","next_check":"2026-09-03","install_tag":null}}