@thegraphitelab/n8n-nodes-core
v0.1.0
Published
Shared manifest-driven engine for The Graphite Lab's n8n integration nodes.
Readme
@thegraphitelab/n8n-nodes-core
Shared, integration-agnostic engine for The Graphite Lab's n8n integration nodes.
This is a library, not an installable n8n node. It is a runtime dependency of
node packages such as @thegraphitelab/n8n-nodes-servicetitan; you do not install
it directly in n8n. When you install an integration node via Settings → Community
Nodes, n8n pulls this package in automatically as a dependency.
What it provides
A declarative-manifest compiler. An integration ships a generated IntegrationManifest
(resources and operations described by a shape), and this engine turns those shapes
into runtime n8n execute functions, poll functions, and property descriptions.
Public API (@thegraphitelab/n8n-nodes-core):
router,pollRouter— resolve the selected resource/operation and run itcreateTransport— build the HTTP transport from aTransportConfiggetActionProperties,getTriggerProperties— compile n8n node properties from a manifest- plus the manifest and authoring types (
IntegrationManifest,TransportConfig,ResourceGroup, …)
Staying integration-agnostic
The engine hardcodes nothing about any specific integration. Each integration supplies
its specifics through TransportConfig, including:
credentialKey— the n8n credential name to authenticate withpathContext(credentials)— maps credential values to non-parameter path placeholders. e.g. ServiceTitan supplies{ tenant: credentials.tenantId }so the engine can fill/crm/v2/tenant/{tenant}/customers. Integrations without such placeholders omit it.
Build / test
pnpm --filter @thegraphitelab/n8n-nodes-core build
pnpm --filter @thegraphitelab/n8n-nodes-core test