About

The person behind PHP Opc Ua.

A pure-PHP OPC UA ecosystem, built to connect web developers to industrial protocols without C extensions, JVMs or bridges. This is who maintains it — and how you can join.

Creator & maintainer

Gianfrancesco Aurecchia

PHP developer with a focus on industrial automation and IoT. Built PHP Opc Ua to bridge the gap between the web ecosystem and industrial protocols — making OPC UA accessible to every PHP developer without requiring C extensions or external dependencies.

The project

Why PHP Opc Ua exists

OPC UA is the dominant protocol in industrial automation, but the PHP ecosystem had no native client.

01

The gap

Before this project, talking to PLCs from PHP meant C extensions (painful to deploy), HTTP-to-OPC gateways (extra infrastructure), or shelling out to other languages (complexity that grows with every integration).

02

The fix

The OPC UA binary protocol is implemented end-to-end in PHP — secure channels, sessions, 10 security policies, 47 PSR-14 events. One composer require and your Laravel or Symfony app talks to PLCs, SCADA systems and sensors directly.

03

The origin

It started as a personal need — connecting a PHP-based manufacturing dashboard to Siemens PLCs — and grew into a complete ecosystem covering the full OPC UA specification, with framework bridges and test infrastructure.

In numbers

The ecosystem today.

147k

Lines of PHP

2,649

Tests

5,204

Assertions

8

Packages

Contributors

The people who build it.

Names appear here as members are added to the project.

Contributing

Get involved.

There are 147,000 lines of PHP behind this ecosystem — and plenty of ways to help shape where it goes next.

You speak OPC UA

Industrial automation engineer who can spot a wrong NodeId, a non-canonical extension object, or a security policy oddity? Your eyes are the most valuable here.

You speak Laravel / Symfony

Improve the framework integrations — better DI patterns, queue jobs that subscribe to OPC UA streams, Filament resources, Telescope panels.

You speak prose

Docs that don't suck are vanishingly rare in this space. Rewrite an explanation, fix a broken example, add a recipe — the docs hub auto-publishes from every package repo on tag.

Pick an issue. Open a PR. Or just drop a message. Every contribution counts.