{"_id":"@ecommy/connector-core","_rev":"2-a6f6f8216e5e802a16f55dec12e44b98","name":"@ecommy/connector-core","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@ecommy/connector-core","version":"0.1.0","license":"UNLICENSED","_id":"@ecommy/connector-core@0.1.0","maintainers":[{"name":"daanvanderlugt","email":"daan@ecommy.nl"}],"homepage":"https://github.com/ecommy-nl/ecommy#readme","bugs":{"url":"https://github.com/ecommy-nl/ecommy/issues"},"bin":{"ecommy-connector":"dist/cli.js"},"dist":{"shasum":"430849b2163c37ff2cdcd7072d32f07ae2ca1d60","tarball":"https://registry.npmjs.org/@ecommy/connector-core/-/connector-core-0.1.0.tgz","fileCount":28,"integrity":"sha512-t7s+Em6vfwnc8XeWX2gcF536XntmMXoGmvFThlvCNu90N7XU7H5+vzkuzFeA+iZKDhd+IgwG70x9cRm2obF9+A==","signatures":[{"sig":"MEUCIQCZaBFDJA/71gk4FUyzYRdWV2YARWsFRQOOJJy7fc5tmgIgCD7N1NOZRZ8AARmepMx1+9ITWfKHuZxQc+yxpY2s5mc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":88182},"main":"./dist/index.js","type":"module","_from":"file:ecommy-connector-core-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"lint":"biome check src test","test":"node --test --import tsx \"test/**/*.test.ts\"","build":"rm -rf dist && tsc -p tsconfig.json","gen:check":"node scripts/gen-types.mjs --check","gen:types":"node scripts/gen-types.mjs","typecheck":"node scripts/gen-types.mjs --check && tsc --noEmit -p tsconfig.test.json","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-exclude='test/**' --test-coverage-exclude='**/generated/**' --test-coverage-exclude='**/cli.ts' --test-coverage-exclude='**/connector-test-utils/**' --test-coverage-lines=90 --test-coverage-branches=70 --test-coverage-functions=78 \"test/**/*.test.ts\""},"_npmUser":{"name":"daanvanderlugt","email":"daan@ecommy.nl"},"_resolved":"/tmp/bd01123cff34c2ba69e518fdff9adf34/ecommy-connector-core-0.1.0.tgz","_integrity":"sha512-t7s+Em6vfwnc8XeWX2gcF536XntmMXoGmvFThlvCNu90N7XU7H5+vzkuzFeA+iZKDhd+IgwG70x9cRm2obF9+A==","repository":{"url":"git+https://github.com/ecommy-nl/ecommy.git","type":"git","directory":"packages/connector-core"},"_npmVersion":"10.8.2","description":"Connector core infra — EcommyConnector base, 6-state lifecycle FSM (O133), ingest envelope, manifest interpreter (O130), ecommy-connector CLI (O131), SSOT-codegen types. Phase A = READ-ONLY ingest.","directories":{},"_nodeVersion":"20.20.2","dependencies":{"zod":"^3.23.8","@ecommy/shared-types":"0.0.0"},"publishConfig":{"registry":"https://registry.npmjs.org"},"_hasShrinkwrap":false,"devDependencies":{"tsx":"^4.19.2","typescript":"^5.6.3","@types/node":"^20.19.0","@biomejs/biome":"^1.9.4","@ecommy/connector-test-utils":"^0.1.0"},"_npmOperationalInternal":{"tmp":"tmp/connector-core_0.1.0_1781097856556_0.5540780844016053","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@ecommy/connector-core","version":"0.2.0","private":false,"type":"module","description":"Connector core infra — EcommyConnector base, 6-state lifecycle FSM (O133), ingest envelope, manifest interpreter (O130), ecommy-connector CLI (O131), SSOT-codegen types. Phase A = READ-ONLY ingest.","license":"UNLICENSED","repository":{"type":"git","url":"git+https://github.com/ecommy-nl/ecommy.git","directory":"packages/connector-core"},"bin":{"ecommy-connector":"dist/cli.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"publishConfig":{"registry":"https://registry.npmjs.org"},"dependencies":{"zod":"^3.23.8"},"devDependencies":{"@biomejs/biome":"^1.9.4","@types/node":"^20.19.0","tsx":"^4.19.2","typescript":"^5.6.3","@ecommy/connector-test-utils":"^0.1.0"},"scripts":{"build":"rm -rf dist && tsc -p tsconfig.json","gen:types":"node scripts/gen-types.mjs","gen:check":"node scripts/gen-types.mjs --check","typecheck":"node scripts/gen-types.mjs --check && tsc --noEmit -p tsconfig.test.json","test":"node --test --import tsx \"test/**/*.test.ts\"","test:coverage":"node --test --import tsx --experimental-test-coverage --test-coverage-exclude='test/**' --test-coverage-exclude='**/generated/**' --test-coverage-exclude='**/cli.ts' --test-coverage-exclude='**/connector-test-utils/**' --test-coverage-lines=90 --test-coverage-branches=70 --test-coverage-functions=78 \"test/**/*.test.ts\"","lint":"biome check src test"},"main":"./dist/index.js","types":"./dist/index.d.ts","_id":"@ecommy/connector-core@0.2.0","bugs":{"url":"https://github.com/ecommy-nl/ecommy/issues"},"homepage":"https://github.com/ecommy-nl/ecommy#readme","_integrity":"sha512-RaZ/WNv3oEmo8iQlOc99n2q2v4o5rzd7tADWrBcKFMO3KySTXmBvOYQ4k58pRHIlOagDIpBECKLOBjQ+eih/7A==","_resolved":"/private/var/folders/6w/m8vwpxjs3fq32d28cfktf3300000gn/T/26ed216f1bf104bcb1df289babe8e5c2/ecommy-connector-core-0.2.0.tgz","_from":"file:ecommy-connector-core-0.2.0.tgz","_nodeVersion":"22.19.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-RaZ/WNv3oEmo8iQlOc99n2q2v4o5rzd7tADWrBcKFMO3KySTXmBvOYQ4k58pRHIlOagDIpBECKLOBjQ+eih/7A==","shasum":"e735bcbd07eb167420b0cabbb2aeaf1b79b17b48","tarball":"https://registry.npmjs.org/@ecommy/connector-core/-/connector-core-0.2.0.tgz","fileCount":30,"unpackedSize":93967,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCWkgWnJLE8Uq6fmZ9SkZxdmAWTgX+Mhe107WxJlKG84wIhALAEt5BHsfmRca1jAbRfXbqXcGw7fi0wsewXm8JF65xf"}]},"_npmUser":{"name":"daanvanderlugt","email":"daan@ecommy.nl"},"directories":{},"maintainers":[{"name":"daanvanderlugt","email":"daan@ecommy.nl"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/connector-core_0.2.0_1781953797158_0.38194753252791513"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-10T13:24:16.457Z","modified":"2026-06-20T11:09:57.431Z","0.1.0":"2026-06-10T13:24:16.686Z","0.2.0":"2026-06-20T11:09:57.305Z"},"bugs":{"url":"https://github.com/ecommy-nl/ecommy/issues"},"license":"UNLICENSED","homepage":"https://github.com/ecommy-nl/ecommy#readme","repository":{"type":"git","url":"git+https://github.com/ecommy-nl/ecommy.git","directory":"packages/connector-core"},"description":"Connector core infra — EcommyConnector base, 6-state lifecycle FSM (O133), ingest envelope, manifest interpreter (O130), ecommy-connector CLI (O131), SSOT-codegen types. Phase A = READ-ONLY ingest.","maintainers":[{"name":"daanvanderlugt","email":"daan@ecommy.nl"}],"readme":"# @ecommy/connector-core\n\nThe **foundation** every Ecommy connector is built on. Shared, provider-agnostic\ninfra: the `EcommyConnector` base class, the 6-state lifecycle FSM (O133), the\ningest envelope, the low-code manifest interpreter (O130), catalog helpers,\nSSOT-generated types, and the `ecommy-connector` scaffolding CLI (O131).\n\nPhase A is **READ-ONLY ingest**: connectors fetch/receive provider data and emit\nsource-shape `IngestEnvelope` records; canonical normalisation happens downstream.\n\n## Install\n\n```bash\nnpm install @ecommy/connector-core   # see docs/connectors/CONSUMER.md for the registry/token setup\n```\n\n## Use\n\n```ts\nimport {\n  EcommyConnector,\n  parseManifest,\n  type ConnectorContext,\n  type IngestEnvelope,\n} from \"@ecommy/connector-core\";\n```\n\nYou normally install a **connector package** (e.g. `@ecommy/connector-shopify`),\nwhich pulls this in transitively. Build a brand-new connector as its own package:\n\n```bash\necommy-connector init --source <name> --mode <code|manifest>\n```\n\nFull guide: [`docs/connectors/CONSUMER.md`](../../docs/connectors/CONSUMER.md).\n","readmeFilename":"README.md"}