PHPackages                             decodelabs/overpass - 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. decodelabs/overpass

ActiveLibrary

decodelabs/overpass
===================

Simple node.js bridge

v0.4.0(8mo ago)21.8k1MITPHPPHP ^8.4CI passing

Since Nov 18Pushed 5mo ago2 watchersCompare

[ Source](https://github.com/decodelabs/overpass)[ Packagist](https://packagist.org/packages/decodelabs/overpass)[ RSS](/packages/decodelabs-overpass/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (10)Dependencies (5)Versions (21)Used By (1)

Overpass
========

[](#overpass)

[![PHP from Packagist](https://camo.githubusercontent.com/37ca8693c1df695b70adfd2d045832646ccee578327cc268b896944ada16c850/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f7068702d762f6465636f64656c6162732f6f766572706173733f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/overpass)[![Latest Version](https://camo.githubusercontent.com/0f912d7b6aecd1b9d5c5be1bf352da039210c1171cf8e256837581dbf96fc4c7/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6465636f64656c6162732f6f766572706173732e7376673f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/overpass)[![Total Downloads](https://camo.githubusercontent.com/dda92d68be768e245523fc69cea74d90a005f38c2b4300382a7250a336a99acc/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6465636f64656c6162732f6f766572706173732e7376673f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/overpass)[![GitHub Workflow Status](https://camo.githubusercontent.com/b02d5ed46fdf9763f672ef283fd1fbd6fa61ef47700b74acccbe656b833fa479/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f6465636f64656c6162732f6f766572706173732f696e746567726174652e796d6c3f6272616e63683d646576656c6f70)](https://github.com/decodelabs/overpass/actions/workflows/integrate.yml)[![PHPStan](https://camo.githubusercontent.com/e25c14ce011edabdd0fbd2e10415b41cc5d66ed11ef3e5b7edd074c5bdd35a2d/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f5048505374616e2d656e61626c65642d3434434331312e7376673f6c6f6e6743616368653d74727565267374796c653d666c6174)](https://github.com/phpstan/phpstan)[![License](https://camo.githubusercontent.com/b9a4bd38647eec0765dc786170cd63d432c0b6446d81b1780b84ee0de19b0315/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f6465636f64656c6162732f6f766572706173733f7374796c653d666c6174)](https://packagist.org/packages/decodelabs/overpass)

### Simple node.js bridge for PHP

[](#simple-nodejs-bridge-for-php)

Overpass provides a simple interface for installing dependencies and interacting with native node.js scripts.

---

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

[](#installation)

This package requires PHP 8.4 or higher.

Install via Composer:

```
composer require decodelabs/overpass
```

Usage
-----

[](#usage)

Load a project to work from:

```
use DecodeLabs\Monarch;
use DecodeLabs\Overpass\Project;
use DecodeLabs\Systemic;

$project = new Project('path/to/project/', Monarch::getService(Systemic::class));
```

If no path is specified, the current working directory will be used. Overpass will search back up the file tree for the nearest package.json.

```
echo $project->rootDir; // Parent or current dir containing package.json
echo $project->packageFile; // Location  of package.json

$project->run('myfile.js'); // node myfile.js
$project->runScript('my-script'); // npm run my-script
$project->runExecutable('vite', 'build'); // vite build
$project->runPackage('create-react-app'); // npx create-react-app

$project->install('package1', 'package2'); // npm install package1 package2
$project->installDev('package1', 'package2'); // npm install package1 package2 --save-dev
```

### Bridging

[](#bridging)

Overpass offers a simple Bridge system to allow you to define custom javascript, pass arguments to it, and consume the result via node.

```
// myfile.js
module.exports = function(input) {
    return 'hello ' + input;
}
```

```
$result = $project->bridge('myfile.js', 'world'); // 'hello world'
```

Licensing
---------

[](#licensing)

Overpass is licensed under the MIT License. See [LICENSE](./LICENSE) for the full license text.

###  Health Score

43

—

FairBetter than 91% of packages

Maintenance66

Regular maintenance activity

Popularity19

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity63

Established project with proven stability

 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

Every ~56 days

Recently: every ~23 days

Total

19

Last Release

267d ago

PHP version history (3 changes)v0.1.0PHP ^8.0

v0.2.6PHP ^8.1

v0.2.8PHP ^8.4

### Community

Maintainers

![](https://www.gravatar.com/avatar/8a241d64d12b3b5ee94197862ec1ec30b82ed2efa34a0cd7f4c3565a021daddd?d=identicon)[betterthanclay](/maintainers/betterthanclay)

---

Top Contributors

[![betterthanclay](https://avatars.githubusercontent.com/u/1273586?v=4)](https://github.com/betterthanclay "betterthanclay (99 commits)")

---

Tags

bridgenodephpJSBridgenode

### Embed Badge

![Health badge](/badges/decodelabs-overpass/health.svg)

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

###  Alternatives

[matthiasmullie/minify

CSS &amp; JavaScript minifier, in PHP. Removes whitespace, strips comments, combines files (incl. @import statements and small assets in CSS files), and optimizes/shortens a few common programming patterns.

2.0k30.5M336](/packages/matthiasmullie-minify)[gettext/gettext

PHP gettext manager

70530.2M102](/packages/gettext-gettext)[zoon/rialto

Manage Node resources from PHP

12199.4k3](/packages/zoon-rialto)

PHPackages © 2026

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