0.2.3 • Published 4 months ago

@oas-typescript/express v0.2.3

Weekly downloads
-
License
-
Repository
github
Last release
4 months ago

oas-typescript-express

oas-typescript-express is a generator for OpenAPI Specification 3 to express. This tool is powered by openapi-zod-client for the OAS parsing.

Installation

It is recommended to install this as a project dependency so that it can be used in CI consistently.

# With npm.
npm install --save-dev @oas-typescript/express

# With yarn.
yarn add -D @oas-typescript/express

CLI guide

OptionDescriptionDefault value
--output, -oThe output directory.(pwd)/oas-typescript
--app-security-schemes-fieldThe security scheme field used in the OpenAPI Specification. Mostly useful when you have custom securitySchemes that are not supported by the specification.securitySchemes
--app-security-requirements-fieldThe custom security requirements field used in the OpenAPI Specification. Mostly useful when you have custom security that are not supported by the specification.security
--moduleThe output module. Available values are cjs or esm.esm

Generating server stubs

To generate the server stubs, do this command:

npx oas-typescript-express generate ./api.json --output generated

# Or, using yarn:
yarn oas-typescript-express generate ./api.json --output generated

# Or, inside the `scripts` in package.json.
oas-typescript-express generate ./api.json --output generated

The command above will read the Open API Specification api.json and output them to the generated folder. The result will be as the following.

generated
├── controllers
│   ├── PetController.ts
│   ├── StoreController.ts
│   └── UserController.ts
├── static
│   ├── checksum.json
│   ├── client.ts
│   ├── controller-types
│   │   ├── PetControllerTypes.ts
│   │   ├── StoreControllerTypes.ts
│   │   └── UserControllerTypes.ts
│   ├── security-schemes.ts
│   ├── router.ts
│   ├── types.ts
│   └── utils.ts
└── middleware-helpers.ts

All files are stubs, except the ones in controllers folder and middleware-helpers.ts, where you will need to insert your own logic. The latter is mostly used for validating authorization from the incoming request.

More information

For further documentation, please visit the documentation: https://imballinst.github.io/oas-typescript/docs/nodejs-server-stubs/adapters/express.

0.2.3

4 months ago

0.2.2

4 months ago

0.2.1

5 months ago

0.2.0

5 months ago

0.1.2

5 months ago

0.1.0

6 months ago