Software Developer Central

Before starting to develop for Universa, most likely you should be already fluent in Universa Main concepts and architecture; so please examine the Smart Contract Designer Central as well.

General recommendations

Available APIs

Java API

Java API can be used from any Java-compatible environment or language (Java 8 or higher is required).

To start using Java API, you can add com.icodici:universa_core:3.9.1 dependency from Universa public Maven repository. See more details at Maven repository page.

If don’t need the full-featured Java API (requiring Java 8 or newer), but you are writing for Android, you may need the minimal library Minicrypto Java library, containing just the basic cryptographic primitives (e.g. to create the key pairs) and barebone operations to access the Crypto Cloud.

UMI protocol for Java API

To access the Java API classes from non-Java environments, you can use the UMI Protocol – where UMI stands for “Universa Method Invocation” – in an RPC manner.


As an example of binding UMI to other programming languages, the Universa Ruby gem can be used.


Another implementation of UMI access to Universa is in Universa Python Library at!. You can install it from Pypi using regular methods like pip install universa.

JavaScript API

JavaScript API can be used from all compatible browsers (currently, running it from Node.js environment is not guaranteed).

Client JavaScript

Test environments

Base concepts

Node technical information


Extra services