Fork me on GitHub

NodeOPCUA is a OPC UA stack fully written in TypeScript for NodeJS.

 100% Asynchronous

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

const { OPCUAServer } = require("node-opcua");
(async () => {
    const server = new OPCUAServer({});
    await server.initialize();
    await server.start();
})();

  High Quality

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

NodeOPCUA uses GitHub Actions as a continuous integration service.

  Coverage Status

 Available on Typescript

NodeOPCUA can be use in Javascript as well as in Typescript.

  Free, as in Speech

NodeOPCUA is free for commercial use. Check out the license.

  Fork my source code

NodeOPCUA is available on GitHub . Check out the source code .

 Create your own server

Easily create your own OPCUA Server in less than 100 lines of code.

Runs under Linux , Mac and Windows

NodeOPCUA runs on all the platforms that nodeJS supports.

 Perfect on RaspberryPI

Create your own OPCUA Server on a RaspberryPI with your preferred I/O sensors.

 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 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.

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.

  Request    support

If you want professional support and expertise you can contact us.

The project repositories

node-opcua
  • Status updating...

Follow us