Install & Compatibility
Where this runs
tested against v? · npm install
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
muslnode 18–226 runs
build_error
glibcnode 18–226 runs
build_error
Code
Verified usage
Verified import paths — ran on the pinned version, not inferred.
PlywoodBaseAPI
✓ import { PlywoodBaseAPI } from 'plywood-base-api'
✗ const PlywoodBaseAPI = require('plywood-base-api').PlywoodBaseAPI
Default export is not provided. Use named import for TypeScript or CommonJS.
RequesterInterface
✓ import type { RequesterInterface } from 'plywood-base-api'
✗ import { RequesterInterface } from 'plywood-base-api'
In TypeScript, prefer 'import type' for type-only imports to avoid runtime costs; however, it ships as a value in CJS, so the wrong form also works but is less efficient.
BaseRequester
✓ import { BaseRequester } from 'plywood-base-api'
✗ const BaseRequester = require('plywood-base-api').BaseRequester
Correct for both ESM and CJS; named import is preferred.
Shows how to subclass BaseRequester to create a custom Plywood requester with a request method.
import { BaseRequester } from 'plywood-base-api';
class MyRequester extends BaseRequester {
constructor() {
super();
}
async request(query: string): Promise<any> {
// Implement your request logic here
return { data: 'result' };
}
}
const requester = new MyRequester();
requester.request('SELECT * FROM table').then(console.log);
Errors
Common errors & fixes
Cannot find module 'plywood'
Missing peer dependency 'plywood'
fixRun 'npm install plywood' in your project.
TypeError: Class extends value undefined is not a constructor or null
The import of BaseRequester failed, likely due to circular dependency or bundler issue.
fixEnsure 'plywood-base-api' and 'plywood' are installed and loaded correctly; try using dynamic import.
Module not found: Error: Can't resolve 'plywood-base-api'
Package not installed or not in node_modules.
fixRun 'npm install plywood-base-api'.
Audit
Dependencies
plywoodrequiredpeer dependency – required for types and runtime compatibility