{"id":44120,"library":"wait-for-pg","title":"wait-for-pg","description":"A CLI tool that waits for a PostgreSQL database to become available before proceeding. Version 1.0.0 uses meow for CLI, pg for PostgreSQL client, and esm for ES module support. It's a minimal wrapper around pg's connection logic, suitable for CI/CD scripts or Docker entrypoints. No active development since 2020, so consider alternatives like wait-on or pg_isready for newer Node versions.","status":"active","version":"1.0.0","language":"javascript","source_language":"en","source_url":"https://github.com/HugoDF/wait-for-pg","tags":["javascript"],"install":[{"cmd":"npm install wait-for-pg","lang":"bash","label":"npm"},{"cmd":"yarn add wait-for-pg","lang":"bash","label":"yarn"},{"cmd":"pnpm add wait-for-pg","lang":"bash","label":"pnpm"}],"dependencies":[{"reason":"CLI argument parsing","package":"meow","optional":false},{"reason":"PostgreSQL client for connecting to database","package":"pg","optional":false},{"reason":"Enables ES module syntax in Node < 13 by patching require","package":"esm","optional":false}],"imports":[{"note":"wait-for-pg is primarily a CLI tool. It does not export any programmatic API. Use npx or global install.","wrong":"node -e 'require(\"wait-for-pg\")'","symbol":"waitForPG (CLI)","correct":"npx wait-for-pg"}],"quickstart":{"code":"# Install globally\nnpm install -g wait-for-pg\n# Use in script\nwait-for-pg\n# Or via npx without install\nnpx wait-for-pg\n# Set environment variables or use defaults\nDATABASE_URL=postgres://user:pass@localhost:5432/mydb wait-for-pg","lang":"javascript","description":"Demonstrates global install and running the CLI with default or custom DATABASE_URL."},"warnings":[{"fix":"Use child_process.execFile('npx', ['wait-for-pg']) or a library like wait-on for programmatic control.","message":"wait-for-pg is a CLI only; it does not export a programmatic API for use in Node.js code.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Consider using Node 20+ native ESM or replace with 'wait-on' or 'pg-connection-state'.","message":"The package uses 'esm' which is deprecated in favor of native ESM in Node >=13.2.","severity":"deprecated","affected_versions":">=1.0.0"}],"env_vars":null,"search_vec":"'1.0.0':20 '2020':56 'activ':53 'altern':59 'around':40 'avail':16 'becom':15 'ci/cd':47 'cli':6,24 'client':28 'connect':43 'consid':58 'databas':13 'develop':54 'docker':50 'entrypoint':51 'es':32 'esm':30 'isreadi':66 'javascript':71 'like':60 'logic':44 'meow':22 'minim':38 'modul':33 'newer':68 'node':69 'pg':4,25,41,65 'postgresql':12,27 'proceed':18 'script':48 'sinc':55 'suitabl':45 'support':34 'tool':7 'use':21 'version':19,70 'wait':2,9,62 'wait-for-pg':1 'wait-on':61 'wrapper':39","created_at":"2026-06-05T17:03:04.929301+00:00","updated_at":"2026-06-05T17:03:04.929301+00:00","problems":[{"fix":"Install dependencies globally: npm install -g wait-for-pg or use npx wait-for-pg (npx automatically resolves dependencies).","cause":"wait-for-pg requires esm but it may not be installed if not using global install.","error":"Error: Cannot find module 'esm'"},{"fix":"Install globally: npm install -g wait-for-pg or use npx wait-for-pg.","cause":"wait-for-pg is not installed or not in PATH.","error":"wait-for-pg: command not found"},{"fix":"Ensure PostgreSQL is running and connection string (DATABASE_URL or defaults) is correct.","cause":"PostgreSQL is not running or not accessible at the specified host/port.","error":"Error: connect ECONNREFUSED 127.0.0.1:5432"}],"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":"https://github.com/HugoDF/wait-for-pg#readme","github":"https://github.com/HugoDF/wait-for-pg","docs":null,"changelog":null,"pypi":null,"npm":"wait-for-pg","openapi_spec":null,"status_page":null,"smithery":null,"categories":["devops"],"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}}