Aeternity Swift SDK

Hello everyone! Hope you are all doing fine.

Just wanted to let you know I’m currently working on a Swift SDK for communication with the Aeternity blockchain. Based on the Java SDK, this Swift SDK offers the same robust functionality and ease-of-use for developers building native wallet applications. With this SDK, you can quickly and securely connect your app to the Aeternity blockchain, allowing your users to manage their assets and transactions seamlessly. Whether you’re building a cryptocurrency wallet, a decentralized application, etc., this SDK will provide the necessary tools to streamline the development process.

It’s still currently under development, but I’ll make sure I keep you all posted about any upcoming updates in the process.

4 Likes

just FYI → the Java SDK right now still relies on the http compiler of Sophia to encode / decode calldata which is relevant for Smart Contract interaction.

ideally we’d also have serialization libs in different languages similar to the calldata-lib written in JavaScript: GitHub - aeternity/aepp-calldata-js: Aeternity data serialization library

4 Likes

@boriss Could you share the compatibility table with IOS versions?
How did you get blake2b hashing in Swift?
Are you using any third-party libraries to manage the private key and signing? I hope these libraries are well-audited for security.

1 Like

I’ve made an in-deep review of Swift SDK and filled issues.

In general, we should avoid making Swift SDK overconfigurable, otherwise, it would produce useless documentation and code.

The Swift SDK issues shouldn’t be redirected to Java SDK the way “because it is the same”. As I understand, these projects don’t mean to have the same API, and if we found something to improve it can be done in Swift SDK separately.

3 Likes

I am quite sure the java sdk can also be improved a lot. I forwarded the info to @mitch_lbw, maybe he wants to apply for a grant to maintain the java sdk. I forwarded the info to him. I could also support him there as we developed the sdk together back then

2 Likes

Hey!

I see that this framework is used for blake2 - GitHub - tesseract-one/Blake2.swift: Swift wrapper for reference C implementation of Blake2b hash. It is a wrapper so everything looks good and this is for the mnemonic - GitHub - zcash-hackworks/MnemonicSwift: MnemonicSwift provides a Swift implementation of BIP39 using CriptoKit - potentially it can be audited more and the algorithm can be migrated to be inside the framework. I think that for the current state of implementation it should be ok.

3 Likes

Compatibility:
iOS 9+
MacOS 10.11+
tvOS 9+
watchOS 3+