The `cubejs-tiva-postgres-driver` package is a pure JavaScript PostgreSQL database driver specifically designed for the Cube.js analytics API platform. It is a fork of the official Cube.js PostgreSQL driver, currently at version `0.0.7`. This driver enables a Cube.js backend to connect and query PostgreSQL databases. Due to its status as a fork and early version number, it likely has an irregular release cadence dictated by the needs of its maintainers rather than a public schedule. Key differentiators include its "pure JavaScript" implementation for PostgreSQL connectivity within Cube.js, and potential custom modifications unique to the "Tiva" project. It targets Node.js environments from version 14.0.0 upwards and ships with TypeScript type definitions for improved developer experience.
npm install cubejs-tiva-postgres-driverVerified import paths — ran on the pinned version, not inferred.
Demonstrates how to integrate the `cubejs-tiva-postgres-driver` into a basic Cube.js backend configuration using environment variables for database credentials and enabling SSL.
Consider using the official `@cubejs-backend/postgres-driver` for stable and maintained functionality, unless specific modifications in this fork are critical for your project.
Thoroughly test in your specific environment and review the source code for stability before deploying to production. Be prepared for potential breaking changes in minor versions.
Ensure your Node.js environment is updated to a compatible version (14.x, 16.x, or 17.x and above) to meet the engine requirements specified in `package.json`.
Upgrade your Node.js environment to version 14.x, 16.x, or 17.x or newer.
Ensure all essential PostgreSQL connection options are passed as properties of an object to the `new PostgresDriver()` call, typically via environment variables (e.g., `process.env.DB_HOST`) or a configuration file.
Ensure your Cube.js configuration file (e.g., `cube.js`) is treated as an ESM module by either using a `.mjs` file extension, or by adding `"type": "module"` to your `package.json` file. Alternatively, if feasible, use dynamic `import()` or stick to CJS `require()` if the package provides a CJS entry point.