Registry / devops / esbuild-plugin-swagger-spec-parser

esbuild-plugin-swagger-spec-parser

JSON →
library0.0.6jsnpmunverified

An esbuild plugin (v0.0.6) that parses Swagger/OpenAPI specifications (YAML and JSON) during the build process. It transforms imports of files named with 'swagger.(yaml|json)' into parsed JSON objects. Released under MIT license, it targets Node.js >=16 and is designed for esbuild bundling workflows. Differentiated by its lightweight, zero-config approach for integrating OpenAPI specs into esbuild builds, though it is in early development with no active maintenance cadence.

npm install esbuild-plugin-swagger-spec-parser
INSTALL
IMPORT
SIG · ESBUILD-PLUGIN-SWA
E
esbuild-plugin-swagger-spec-parser
devopsjavascriptv0.0.6
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

SwaggerSpecParser
import { SwaggerSpecParser } from 'esbuild-plugin-swagger-spec-parser'
const SwaggerSpecParser = require('esbuild-plugin-swagger-spec-parser')
ESM-only. Package exports a named plugin, not default; CommonJS require will fail.
SwaggerSpecParser
import { SwaggerSpecParser } from 'esbuild-plugin-swagger-spec-parser'
Use named import for the plugin function.
SwaggerSpecParser
const { SwaggerSpecParser } = require('esbuild-plugin-swagger-spec-parser')
const SwaggerSpecParser = require('esbuild-plugin-swagger-spec-parser')
Destructure require to get the named export.
SwaggerSpecParser as default
import SwaggerSpecParser from 'esbuild-plugin-swagger-spec-parser'
import { SwaggerSpecParser } from 'esbuild-plugin-swagger-spec-parser'
There is no default export; only named export exists.

Shows how to configure esbuild with the plugin and import a swagger spec file.

import esbuild from 'esbuild'; import { SwaggerSpecParser } from 'esbuild-plugin-swagger-spec-parser'; await esbuild.build({ entryPoints: ['src/index.ts'], bundle: true, outfile: 'dist/bundle.js', plugins: [SwaggerSpecParser], format: 'esm', platform: 'node', target: 'node16', }); // Then in source file: // @ts-expect-error - types provided by plugin's custom.d.ts import specs from './openapi.swagger.json'; console.log(specs); // Parsed JSON object
Debug
Known issues
gotchaPlugin only parses files named with 'swagger.(yaml|json)' — not arbitrary OpenAPI file names.
fix
Rename your spec files to include 'swagger' in the filename, e.g., 'openapi.swagger.yaml'.
affects: >=0.0.1
gotchaNo TypeScript declaration files bundled; requires manual reference to custom.d.ts.
fix
Add '/// <reference path="../node_modules/esbuild-plugin-swagger-spec-parser/dist/custom.d.ts" />' at the top of your TypeScript files.
affects: <=0.0.6
breakingUnreleased breaking changes may occur; package is early stage (v0.0.6).
fix
Pin version and test upgrades.
affects: >=0.0.1 <1.0.0
Errors
Common errors & fixes
Error: Cannot find module 'esbuild-plugin-swagger-spec-parser'
Package not installed or not in node_modules.
fix
Run 'npm install esbuild-plugin-swagger-spec-parser' or 'yarn add esbuild-plugin-swagger-spec-parser'.
TypeError: SwaggerSpecParser is not a function
Incorrect import: tried to use default import where only named export exists.
fix
Use named import: 'import { SwaggerSpecParser } from 'esbuild-plugin-swagger-spec-parser''
error: No matching files for pattern: './openapi.swagger.yaml'
File does not match the required naming convention (must end with 'swagger.yaml' or 'swagger.json').
fix
Rename file to include 'swagger' before extension, e.g., 'openapi.swagger.yaml'.
Upgrade
Version history
0.0.6latest on npm
Audit
Dependencies
esbuildrequiredRequired esbuild plugin architecture
Agent activity
2 hits · last 30 days
node
2
Resources
esbuild-plugin-swagger-spec-parser — npm install esbuild-plugin-swagger-spec-parser · libregistry