Software Developer Central
(The development map above is available at lnd.im/UniversaDevelopmentMap).
- JavadocNEW! for the network source code.
- 🇬🇧Development-specific Telegram group (International, English-speaking).
- Also, 🇷🇺Development-specific Telegram group in Russian.
- U8 runtime engineNEW!
- Universa Intro for programmers, introduction to all the Universa basics, oriented to programmers.
- Software development – best practices
- See also: Smart contracts – best practices
- Universa codebase licensing
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.11.4 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 github.com/vkovrigin/universaNEW!. You can install it from Pypi using regular methods like
pip install universa.
- Key address
Safe58 – Base58 improved
Farcall protocol: see Github.
BOSS serialization protocol: see Github.
Node technical information
- Node client protocol and node commands
- Datagrams adapter
- Parcel processing
- Item processing
- PERMANET network mode