This guide provides information on the Web SDK which enables you to
- develop web applications that can be deployed to the platform,
- communicate authenticated with our API,
- apply default or branded UI components to your custom application.
If you have previously been working with older versions you might be interested in some short information on the evolution of the UI stack (Migration history) to better understand how and why it is now designed the way it is.
Important: Web SDK for Angular JS is deprecated. Therefore, its documentation is no longer provided here. As all Cumulocity IoT REST APIs are backward compatible, Angular JS applications will still continue to work.
Web SDK for plugins is based on Angular JS and is also deprecated. For Angular-based development, we recommend you to implement native Angular modules. The documentation is still available for migration purposes, i.e. if you want to integrate an already developed plugin into the Web SDK for Angular. You can import plugins to Angular as described in ngx-components > Extension points.
The Web SDK consists of the following packages deployed to npm in the scope
@c8y and available under Apache 2.0 license:
These packages depend on each other from top to bottom. While the
@c8y/client is a very low-level API interface with nearly no dependencies, the
@c8y/apps provide feature rich applications by including
The goal of these splittings is to provide the right package for every use case, e.g. if you want to build a small application with React you could use the
@c8y/client to do the API interaction. If you need a brandable feature rich application which is close to our Cockpit or Device Management application you could use
@c8y/ngx-components together with
The following is a list which explains the use cases of each package.
- @c8y/client: Use this client to access our API. The client is isomorphic, that means it could be used in node.js and in the browser.
- @c8y/ngx-components: A components collection and data access layer for Angular applications. This package can be used to build Angular applications.
- @c8y/styles: The styles for the look & feel of an application. Extend this package to apply a custom branding to your application.
- @c8y/apps: Example and bootstrapping applications to easily let you start with the Web SDK.
You can find all our packages on npm here. To quickly get you bootstrapped with these packages we have built an CLI tool called
@c8y/cli. Next, we will showcase how to get started with the
@c8y/cli command line tool.