The following is a short summary of the interfaces available. The detailed functions are described in the documentation further on.
The NFT Kit exposes high-level interfaces / APIs to hide the complex introduced by
low-level services (e.g. key management, smart contract and minting operations)
different ecosystems (i.e. different NFT flavours, business logic and governance frameworks).
The functionality of the high-level interfaces are grouped around:
Creating / Minting NFTs
Managing NFTs
Verifying NFTs (ownership, metadata)
The interfaces can be used in JVM-based applications directly, or via the REST API. Get Started
Select your ecosystem/blockchain of choice here and start exploring the REST API.
The architecture of the NFT Kit consists of three layers:
Low-Level Services Abstraction: Abstracts complex, low-level operations (e.g. cryptography, key management, smart contract or minting operations).
Ecosystem Abstraction: Abstracts ecosystem-specific requirements based on the relevant technical and governance frameworks of a blockchain / NFT ecosystem.
High-Level Interfaces / APIs: Provides high-level interfaces that hide complexity and facilitate usage for developers.
Also, the architecture allows for the integration of third party solutions throughout the stack. For example:
Key storage (e.g. HSM)
Data storage (e.g. IPFS)
Registries (e.g. blockchains)
This architectural openness prevents vendor lock-in and allows you to build NFT-based solutions that meet your unique requirements.
Illustration:
Read on to explore all three abstraction layers in more detail.
This software-layer holds a set of generic core services for common NFT and cryptographic functions. The services are in the scope of Smart Contract deployment, Meta Data management, Token Minting etc..
The low-level services expose common interfaces that can be conveniently utilised directly via Kotlin/Java or via the REST API (Swagger doc of the core API).
We believe in a multi-blockchain & multi-ecosystem future.
This is why we built an abstraction layer for ecosystem-specific operations and business logic. The idea is to support any ecosystem with a single solution that does not put any additional burden on developers. As a result, you can use our solutions to participate in different ecosystems without having to switch between different technical implementations.
Get started with your preferred option here.