Using ARK SDKs, developers can employ the programming language of their choice to build applications utilizing the ARK blockchain. The ARK SDKs are split into two packages for each language: Client and Cryptography.
Client SDKs help developers fetch information from the ARK blockchain about its current state: which delegates are currently forging, what transactions are associated with a given wallet, and so on.
Cryptography SDKs, by contrast, assist developers in working with transactions: signing, serializing, deserializing, etc.
{% hint style="info" %} If you need to learn more about Cryptography in general, how initial key and address generation works, what is a public or private key, head over to the page link below: {% endhint %}
{% embed url="https://learn.ark.dev/concepts/cryptography" caption="" %}
If your application doesn't involve sending transactions, you can most likely build your application using the Client SDK alone. Otherwise, applications looking to leverage the full spectrum of ARK APIs should make use of both Client and Cryptography SDKs.
Usage guides are included for each supported language, and examples of how to use these libraries can be found in the Examples section of each specific library.
Crypto | Client | Frameworks |
---|---|---|
TypeScript | TypeScript | Laravel |
Java | Java | Symfony |
PHP | PHP | |
Python | Python | |
C++ | C++ | |
Elixir | Elixir | |
Golang | Golang | |
Ruby | Ruby | |
Rust | Rust | |
Swift | Swift |
Crypto | Client | Frameworks |
---|---|---|
.NET | .NET |
Contributions to our SDK follow the same guidelines as our general contribution guidelines.
Additionally to those there are guidelines for the structure of SDKs and what functionality they should provide. Take a look at the Crypto and Client guidelines before you start to contribute to make sure the feature or change you plan to implement is in line with those.