{"library":"parse-db-url","title":"parse-db-url","description":"The `parse-db-url` library is a specialized utility designed to accurately parse database connection URLs into structured configuration objects. Unlike Node.js's built-in `url.parse`, this package understands common conventions associated with various database drivers, such as 'postgres' or 'mysql', and intelligently extracts components like the adapter, host, port, database name, username, and password. A key feature is its ability to handle query-string parameters that can override earlier parts of the URL, offering flexible configuration options. The current stable version is 2.3.0. As a domain-specific parsing tool, its release cadence is slow, with the last publish being over five years ago, indicating a stable, feature-complete state primarily in maintenance mode, rather than active development. It provides a consistent interface for abstracting database connection details, simplifying multi-database application setups.","language":"javascript","status":"maintenance","last_verified":"Wed Apr 22","install":{"commands":["npm install parse-db-url"],"cli":null},"imports":["const parseDbUrl = require('parse-db-url');","/** @typedef {ReturnType<typeof import('parse-db-url')>} DBConfig */"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import parseDbUrl from 'parse-db-url';\n\nconst databaseUrl = process.env.DATABASE_URL ?? 'postgres://user:password@host:5432/mydb?ssl=true';\n\ntry {\n  const dbConfig = parseDbUrl(databaseUrl);\n  console.log('Parsed database configuration:');\n  console.log(`  Adapter: ${dbConfig.adapter}`);\n  console.log(`  Host: ${dbConfig.host}`);\n  console.log(`  Port: ${dbConfig.port}`);\n  console.log(`  Database: ${dbConfig.database}`);\n  console.log(`  User: ${dbConfig.user}`);\n  // console.log(`  Password: ${dbConfig.password ? '****' : 'N/A'}`); // Be cautious with logging credentials\n\n  // Example usage with a different URL format\n  const sqliteUrl = 'sqlite:///path/to/my.db';\n  const sqliteConfig = parseDbUrl(sqliteUrl);\n  console.log('\\nParsed SQLite configuration:');\n  console.log(`  Adapter: ${sqliteConfig.adapter}`);\n  console.log(`  Database: ${sqliteConfig.database}`);\n\n} catch (error) {\n  console.error('Error parsing database URL:', error.message);\n  process.exit(1);\n}","lang":"javascript","description":"Demonstrates how to parse a database URL from an environment variable and a direct string, then access the structured configuration properties like adapter, host, and database.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}