Fork me on GitHub

Unlocking the Full Potential of OPC UA with TypeScript and NodeJS.

 100% Asynchronous

NodeOPCUA takes advantage of the asynchronous nature of node.js, creating highly responsive applications.

import OPCUAServer from "node-opcua";

const server = new OPCUAServer({});
await server.start();

console.log("Server is now listening ... ( press CTRL+C to stop) ");
await new Promise((resolve) => process.once("SIGINT",resolve));

await server.shutdown();

  High Quality

NodeOPCUA has been developed using TDD and benefits from more than 3500 unit tests and 93% code coverage.

NodeOPCUA uses GitHub Actions as a continuous integration service.

  Coverage Status

NPM version

 Open-Source Constantly Evolving

With the Perpetual Beta model, innovation never stops.

We use Perpetual Beta model to ensure that the core model of NodeOPCUA is constantly improving and tested by the community. We release an new enhanced version every 2 weeks in average.

NPM download - server NPM download - server -total

NPM download - client NPM download - client -total

Sponsor our  
 Open Collective initiative

 Live documentation

NodeOPCUA will benefit from a comprehensive SDK API documentation , numerous end-to-end functional tests, and a set of practical examples to help you learn how to use it.

 Learn by the Book

NodeOPCUA by example - Edition 2024 is the best start to place and learn how to write stunning applications.

 NodeOPCUA needs you !

we welcome funding sponsors & volunteers to help improving code & documentation.

Looking for commercial modules or professional support? Visit sterfive.com

Creating a simple Server

check this example to see an simple OPCUA server that exposes 3 simple variables.

View Code Read Tutorial

Creating a simple Client

check this example to see an simple OPCUA client that attempts to connect to a OPCUA server, print the end point and browse some variables. (Typescript)

View Code Read Tutorial

Creating a virtual Weather Station OPC/UA Server

In this tutorial, we will use a REST API to access free weather data from cities around the world and expose them though a OPC/UA server.

Read tutorial

Creating a HTML Dashboard to monitor a

check this example to see an simple OPCUA client that attempts to connect to a OPCUA server, print the end point and browse some variables.

View Code Read Tutorial

 Submit an issue or a suggestion

If you find an issue or have any suggestions you can submit them here and get support from the community.

 Fork and contribute

If you find an issue in the documentation or in the code, you can fork and send a pull request to the master branch.

  Become a sponsor

Companies that uses Node-opcua are encouraged to make a voluntary contribution.

The world now runs on open source. None of it would be possible without the devoted team that push the technology forward.

 Commercial support

For professional support and consulting, visit sterfive.com.

The project repositories

node-opcua
  • Status updating...

Follow us