Source snapshot bcc79fcc · Declared package version 4.0.4. This page combines the checked-in package guide and manifest; commands and runtime behavior were not executed in this review.
This contributor/compiler package is owned at packages/tools/source-extractors. Its published package name and documented import paths remain unchanged.
Extract contract candidates from TypeScript source code across multiple frameworks (NestJS, Express, Fastify, Hono, Elysia, tRPC, Next.js).
What It Provides
Layer: lib.
Consumers: CLI, bundles.
Related ContractSpec packages include @lssm-tech/lib.contracts-spec, @lssm-tech/lib.schema, @lssm-tech/tool.bun, @lssm-tech/tool.typescript.
Related ContractSpec packages include @lssm-tech/lib.contracts-spec, @lssm-tech/lib.schema, @lssm-tech/tool.bun, @lssm-tech/tool.typescript.
Installation
npm install @lssm-tech/lib.source-extractors
or
bun add @lssm-tech/lib.source-extractors
Usage
Import the root entrypoint from @lssm-tech/lib.source-extractors, or choose a documented subpath when you only need one part of the package surface.
Architecture
src/__fixtures__ is part of the package's public or composition surface.
src/__snapshots__ is part of the package's public or composition surface.
src/codegen is part of the package's public or composition surface.
src/codegen.test.ts is part of the package's public or composition surface.
src/detect.test.ts is part of the package's public or composition surface.
src/detect.ts is part of the package's public or composition surface.
src/edge-cases.test.ts is part of the package's public or composition surface.
src/index.ts is the root public barrel and package entrypoint.
src/types.ts is shared public type definitions.
Public Entry Points
Export . resolves through ./src/index.ts.
Export ./codegen resolves through ./src/codegen/index.ts.
Export ./extractors resolves through ./src/extractors/index.ts.
Export ./types resolves through ./src/types.ts.
Local Commands
bun run dev — contractspec-bun-build dev
bun run build — contractspec-bun-build build
bun run test — bun test
bun run lint — bun lint:fix
bun run lint:check — biome check .
bun run lint:fix — biome check --write --unsafe --only=nursery/useSortedClasses . && biome check --write .
bun run typecheck — tsgo --noEmit
bun run publish:pkg — bun publish --tolerate-republish --ignore-scripts --verbose
bun run publish:pkg:canary — bun publish:pkg --tag canary
bun run clean — rimraf dist .turbo
bun run build:bundle — contractspec-bun-build transpile
bun run build:types — contractspec-bun-build types
bun run prebuild — contractspec-bun-build prebuild
Recent Updates
Replace eslint+prettier by biomejs to optimize speed.
Notes
Extractor interface must support multiple frameworks — keep it generic.
Codegen output must stay deterministic (same input → same output, always).
Internal source ownership
Detection rules, input strategies and project discovery have private source owners. IR metadata, candidate shapes and extraction results remain available through the existing type barrel. No package identity, public entrypoint or output changes. Original focused test paths aggregate the same suites after cohesive splitting.
Declared capabilities.
Lib Source Extractors
Extract contract candidates from TypeScript source code across multiple frameworks (NestJS, Express, Fastify, Hono, Elysia, tRPC, Next.js)
Use it to
Adopt extract contract candidates from typescript source code across multiple frameworks (nestjs, express, fastify, hono, elysia, trpc, next.js)
Requires
TypeScript
Choose another boundary when
The @lssm-tech/lib.source-extractors package constraints do not match the target runtime or platform.
@lssm-tech/lib.source-extractors
@lssm-tech/lib.source-extractors/codegen
@lssm-tech/lib.source-extractors/extractors
@lssm-tech/lib.source-extractors/types
Imports and export paths.
4 entries
These are package-manifest entry points. Named symbols listed above come from the capability catalogue; this is not an exhaustive TypeScript symbol reference.