Kin Crypto Challenge

Intro

Speedrunner
3 min readOct 11, 2019

One evening, I found out a medium post from Kin foundation, they are starting some kind of new hackathon “Kin Crypto Challange”. It interested me and I suggested to my friend to join my small team — make a simple mobile application, he agreed.

In the rules for the challenge — it was strictly spelled out “Your application should use the Kin SDK”. So, the first thing we plunged into was — documentation of this SDK.
The first thing that surprised me was the presence of several SDK implementations in different languages, such as Python\Node.js\iOS and Android. It’s obvious that Kin Foundation is focusing on the development of mobile applications, which is exactly what we did.

I think this is correct way, because every year the amount of mobile traffic is growing, and the number of people buying desktops is only falling. Kin guys tries to be proactive.

In our application, we decided to use react-native on client side and Tornado (python) on server-side. First of all, we made a simple prototype application, without interacting with the blockchain, just the HTTP API client-server interaction. Further, we start working with the testnet network, and here the first big difference between Kin devtools and other projects. In most of the projects we worked with, you need to go to additional resource to get test coins (rinkeby faucets, etc faucet, etc). In case of the Kin SDK, you can do everything much easier. Calling the command:

await client.friendbot (‘your_address’)

You will receive 10,000 coins in the testnet. And that’s it, as we get some coins — we start to make transfers between accounts and other stuff.

Another big difference with the Kin SDK is how we can send transactions. Since this is the main functionality of any blockchain network, it is very important to simplify this process as much as possible. And we all know how difficult it is — to send signedTranasctions on the ethreum using web3.js. But on Kin planet, you can make the same just with one line code

await account.send_kin (‘reciever_address’, ‘amount’, fee = minimum_fee, memo_text =” your_memo_text “)

And that’s it, you can put all this code in 1 line and it will work. Also, if you get any issues during developing — you can ask your question on discrod channel and get answer during a day, that’s realy cool.

Asynchronous. We know the async/await javascript syntax and how it works in Node.js. So, we were very surprised that the Kin SDK supports this functionality in the Python SDK. To read more about Kin SDK Asynchronous — go to https://medium.com/kinblog/update-the-kin-python-sdk-is-now-asynchronous-86f18881c4c8.

But there was some shortcomings also, because no one is perfect. :) From time to time we received the same error messages for different problems and had to think out how to solve them. I think in the future developers will fix this.

Conclusion

In general, our team is pleased with the simplicity of interacting with Kin blockchain and we hope that other projects will take over the best practices of the Kin SDK and improve their libraries.

Future Plans

- we wanna add registration by creating new wallet
- add task sections
- add some new Kin spending opportunities for users

Some screens from our app:

--

--

Speedrunner

Working on some blockchain projects, love cryptoanarhysm ideas.