PHPackages                             northwoods/openapi - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. northwoods/openapi

ActiveLibrary[API Development](/categories/api)

northwoods/openapi
==================

Tools for working with OpenAPI specifications

0.1.0(7y ago)5146MITPHPPHP ^7.2

Since Nov 20Pushed 7y ago1 watchersCompare

[ Source](https://github.com/northwoods/openapi)[ Packagist](https://packagist.org/packages/northwoods/openapi)[ RSS](/packages/northwoods-openapi/feed)WikiDiscussions master Synced 5d ago

READMEChangelogDependencies (4)Versions (2)Used By (0)

Northwoods OpenApi
==================

[](#northwoods-openapi)

[![Build Status](https://camo.githubusercontent.com/1340c3db161baf6530cf594dd16e7adbbf47889d47dc5ff16c01a8e1651eb747/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f636f6d2f6e6f727468776f6f64732f6f70656e6170692e737667)](https://travis-ci.com/northwoods/openapi)[![Code Grade](https://camo.githubusercontent.com/ddb5f64f591dbb2aebc497c39b8f78bb1bfe0b3cb8dae04e3e968addcb4cad38/68747470733a2f2f696d672e736869656c64732e696f2f636f646163792f67726164652f65373531666237353932393034396136613533383762643832313030326236662e737667)](https://www.codacy.com/app/shadowhand/openapi)[![Code Coverage](https://camo.githubusercontent.com/3e7318c2ba336901e0a458adb82e07004971a241f9273b484413932dcd2eac65/68747470733a2f2f696d672e736869656c64732e696f2f636f646163792f636f7665726167652f65373531666237353932393034396136613533383762643832313030326236662e737667)](https://www.codacy.com/app/shadowhand/openapi)[![Latest Stable Version](https://camo.githubusercontent.com/81c7bef544326cd247366d71ad2916809ea3a763b4fcdcafe19bb960a63fd1a0/687474703a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6e6f727468776f6f64732f6f70656e6170692e7376673f7374796c653d666c6174)](https://packagist.org/packages/northwoods/openapi)[![Total Downloads](https://camo.githubusercontent.com/d98ee4974a0a5a3685672e0164f471a8cc78329968b8c1ae6228468eeb56a420/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6e6f727468776f6f64732f6f70656e6170692e7376673f7374796c653d666c6174)](https://packagist.org/packages/northwoods/openapi)[![License](https://camo.githubusercontent.com/ce30abce16c694f5b50b5e17f0b681da0dae80e2f51aaf37133684aeb38b7b91/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6e6f727468776f6f64732f6f70656e6170692e7376673f7374796c653d666c6174)](https://packagist.org/packages/northwoods/openapi)

Tools for working with [OpenAPI](https://www.openapis.org/) specifications.

Installation
------------

[](#installation)

The best way to install and use this package is with [composer](http://getcomposer.org/):

```
composer require northwoods/openapi
```

Usage
-----

[](#usage)

### Conversion

[](#conversion)

This package supports converting OpenAPI schemas to JSON Schema proper:

```
use Northwoods\OpenApi\Converter;

// See below for options
$converter = new Converter($options);

/** @var object */
$schema = /* load your schema */;

$schema = $converter->convert($schema);
```

Note that references are **not** resolved and only schemas can be converted. It is recommended that conversion is used in conjunction with [justinrainbow/json-schema](https://github.com/justinrainbow/json-schema).

#### Options

[](#options)

The following options are available:

- `boolean removeReadOnly` remove all schemas with `readOnly = true`
- `boolean removeWriteOnly` remove all schemas with `writeOnly = true`
- `string[] keepUnsupported` do not remove these schema properties

Credits
-------

[](#credits)

The converter is based on the excellent [openapi-to-json-schema](https://github.com/mikunn/openapi-schema-to-json-schema) package. Type/format conversions are influenced by [this PHP port](https://github.com/hskrasek/openapi-schema-to-jsonschema).

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity46

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Unknown

Total

1

Last Release

2733d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/38203?v=4)[Woody Gilk](/maintainers/shadowhand)[@shadowhand](https://github.com/shadowhand)

---

Top Contributors

[![shadowhand](https://avatars.githubusercontent.com/u/38203?v=4)](https://github.com/shadowhand "shadowhand (6 commits)")

---

Tags

converterjson-schemaopenapiswaggertoolsjsonschemajson-schemaspecificationopenapiconvertertools

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StylePHP\_CodeSniffer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/northwoods-openapi/health.svg)

```
[![Health](https://phpackages.com/badges/northwoods-openapi/health.svg)](https://phpackages.com/packages/northwoods-openapi)
```

###  Alternatives

[swagger-api/swagger-ui

 Swagger UI is a collection of HTML, Javascript, and CSS assets that dynamically generate beautiful documentation from a Swagger-compliant API.

28.7k45.4M99](/packages/swagger-api-swagger-ui)[darkaonline/l5-swagger

OpenApi or Swagger integration to Laravel

2.9k34.0M112](/packages/darkaonline-l5-swagger)[darkaonline/swagger-lume

OpenApi or Swagger integration to Lumen

3372.3M3](/packages/darkaonline-swagger-lume)[psx/api

Parse and generate API specification formats

37178.0k4](/packages/psx-api)[uderline/openapi-php-attributes

Automatically render your OpenApi 3 file describing your PHP API using attributes

2136.3k](/packages/uderline-openapi-php-attributes)[selency/openapi

Provides a user-friendly, object-oriented library to build OpenAPI specifications using PHP.

275.3k](/packages/selency-openapi)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
