OpenAPI 3.x
Basketry parser for OpenAPI 3.x service definitions. This parser can be coupled with any Basketry generator to translate a OpenAPI 3.x document into other artifacts including servers, clients, and human-readable documentation.
Quick Start
The following example converts an OpenAPI doc into Typescript types:
- Save
https://petstore.swagger.io/v2/swagger.json
as petstore.json
in the root of your project. - Install packages:
npm install -g basketry @basketry/openapi-3 @basketry/typescript
- Generate code:
basketry --source petstore.json --parser @basketry/openapi-3 --generators @basketry/typescript --output src
When the last step is run, basketry will parse the source file (petstore.json
) using the specified parser (@basketry/openapi-3
) and then run each specified generator (in this case only @basketry/typescript
) writing the output folder (src
).
For contributors:
Run this project
- Install packages:
npm ci
- Build the code:
npm run build
- Run it!
npm start
Note that the lint
script is run prior to build
. Auto-fixable linting or formatting errors may be fixed by running npm run fix
.
Create and run tests
- Add tests by creating files with the
.test.ts
suffix - Run the tests:
npm t
- Test coverage can be viewed at
/coverage/lcov-report/index.html
Publish a new package version
- Create new version
- Navigate to the version workflow from the Actions tab.
- Manually dispatch the action with the appropriate inputs
- This will create a PR with the new version
- Publish to NPM
- Review and merge the PR
- The publish workflow will create a git tag and publish the package on NPM
Generated with generator-ts-console