PHPackages                             stefna/open-api-bundler - 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. stefna/open-api-bundler

ActiveLibrary[API Development](/categories/api)

stefna/open-api-bundler
=======================

Cli tool to help inline/bundle open api specifications

1.16.0(1mo ago)07.7k↓44.1%11MITPHPPHP ^8.2CI passing

Since May 22Pushed 1mo ago3 watchersCompare

[ Source](https://github.com/stefna/open-api-bundler)[ Packagist](https://packagist.org/packages/stefna/open-api-bundler)[ RSS](/packages/stefna-open-api-bundler/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependencies (14)Versions (24)Used By (1)

OpenAPI bundler
===============

[](#openapi-bundler)

[![Build Status](https://github.com/stefna/open-api-bundler/actions/workflows/continuous-integration.yml/badge.svg?branch=main)](https://github.com/stefna/open-api-bundler/actions/workflows/continuous-integration.yml)[![Latest Version on Packagist](https://camo.githubusercontent.com/c2053107fd57e92b6e510f921e23a8dcc67e3b2044d1fc01dc53d4fa026dea54/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f737465666e612f6f70656e2d6170692d62756e646c65722e737667)](https://packagist.org/packages/stefna/open-api-bundlerr)[![Software License](https://camo.githubusercontent.com/0e25a06ad2471513efc20d05033bfa44f819fc706538c929cf32a6548b271cb4/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f737465666e612f6f70656e2d6170692d62756e646c65722e737667)](LICENSE)

Provides a cli command to help bundle up OpenAPI specifications in to one file by resolving all the external references in the schema

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

[](#installation)

> **Requires [PHP 8.2+](https://php.net/releases/)**

```
composer require stefna/open-api-bundler
```

Usage
=====

[](#usage)

The bundler support both json files and yaml files.

Example files
-------------

[](#example-files)

You can find examples of specifications in the [examples](examples/) folder

Each example should have these files:

- `schema.json` input schema
- `schema.dist.json` bundled output
- `schema.dist.min,json` bundled minified output

Basic
-----

[](#basic)

```
> bundle basic/schema.json
{
	... bundle specification
}
```

Output folder specified
-----------------------

[](#output-folder-specified)

```
> bundle basic/schema.json dist
Bundling: api.json
Writing output to: dist/schema.json
```

Output file specified
---------------------

[](#output-file-specified)

```
> bundle basic/schema.json basic/schema.dist.json
Bundling: api.json
Writing output to: basic/schema.dist.json
```

Bundle compression
------------------

[](#bundle-compression)

```
> bundle basic/schema.json --compress
{... specification without whitespace ...}
```

Framework integrations
======================

[](#framework-integrations)

Starburst
---------

[](#starburst)

To add this command to starburst-cli just add `OpenApiBundleBootstrap` to your bootstrap config.

When using this with starburst you can add `BundleConfig` to your di to change the default values for the bundle command

Contribute
----------

[](#contribute)

We are always happy to receive bug/security reports and bug/security fixes

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE) for more information.

###  Health Score

51

—

FairBetter than 96% of packages

Maintenance89

Actively maintained with recent releases

Popularity26

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 92.1% 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

Every ~30 days

Recently: every ~24 days

Total

23

Last Release

56d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/ce9d40996574fd1f18f69556c872c6eb94e59977c5f0b33c9df541d82fbb3800?d=identicon)[sunkan](/maintainers/sunkan)

---

Top Contributors

[![sunkan](https://avatars.githubusercontent.com/u/568492?v=4)](https://github.com/sunkan "sunkan (70 commits)")[![runar-stefna](https://avatars.githubusercontent.com/u/171600457?v=4)](https://github.com/runar-stefna "runar-stefna (6 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/stefna-open-api-bundler/health.svg)

```
[![Health](https://phpackages.com/badges/stefna-open-api-bundler/health.svg)](https://phpackages.com/packages/stefna-open-api-bundler)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[algolia/algoliasearch-client-php

API powering the features of Algolia.

69333.0M114](/packages/algolia-algoliasearch-client-php)[theodo-group/llphant

LLPhant is a library to help you build Generative AI applications.

1.5k311.5k5](/packages/theodo-group-llphant)[wheelpros/fitment-platform-api

Magento 2 (Open Source)

12.1k1.2k](/packages/wheelpros-fitment-platform-api)[avalara/avataxclient

Client library for Avalara's AvaTax suite of business tax calculation and processing services. Uses the REST v2 API.

517.9M7](/packages/avalara-avataxclient)[alexacrm/dynamics-webapi-toolkit

Web API toolkit for Microsoft Dynamics 365 and Dynamics CRM

81324.1k1](/packages/alexacrm-dynamics-webapi-toolkit)

PHPackages © 2026

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