Jsdoc Open ApiInstallation
Installation
Last updated:
Installation
Install jsdoc-open-api using your preferred package manager:
npm install @visulima/jsdoc-open-apiOptional Dependencies
The CLI requires additional packages:
npm install commander cli-progressThese are listed as optionalDependencies and may install automatically depending on your package manager.
For Webpack/Next.js
If using the Webpack plugin:
npm install webpackImport
ESM (Recommended)
import jsdocOpenApi from "@visulima/jsdoc-open-api";
import { SwaggerCompilerPlugin } from "@visulima/jsdoc-open-api";CommonJS
const jsdocOpenApi = require("@visulima/jsdoc-open-api");
const { SwaggerCompilerPlugin } = require("@visulima/jsdoc-open-api");Subpath Imports
// CLI utilities
import { initCommand, generateCommand } from "@visulima/jsdoc-open-api/cli";
// Commander.js integration
import { program } from "@visulima/jsdoc-open-api/cli/commander";Requirements
- Node.js: 22.x or higher
- Package Manager: npm, yarn, pnpm, or bun
- Build Tools: Webpack 5.x (for plugin usage)
CLI Setup
After installation, the CLI is available:
# Using npx
npx jsdoc-open-api --help
# Using pnpm
pnpm exec jsdoc-open-api --help
# Using yarn
yarn jsdoc-open-api --helpInitialize configuration:
npx jsdoc-open-api initThis creates .openapirc.js:
module.exports = {
definition: {
openapi: "3.0.0",
info: {
title: "My API",
version: "1.0.0",
},
},
sources: ["./src/routes/**/*.js"],
output: "./swagger.json",
};Verification
Verify your installation by generating a simple spec:
// test-generation.js
import jsdocOpenApi from "@visulima/jsdoc-open-api";
const spec = await jsdocOpenApi({
definition: {
openapi: "3.0.0",
info: {
title: "Test API",
version: "1.0.0",
},
},
sources: ["./src/**/*.js"],
});
console.log("Paths:", Object.keys(spec.paths || {}));Run it:
node test-generation.js