We are excited to bring you a recap of our most recent hackathon, hosted with teams already building in the ecosystem. We are pleased to say that the feedback from developers building on Nervos during the hackathon has been very positive and that they have produced some impressive projects in a short time frame.
We knew giving developers a chance to build together on Nervos would lead to some great examples of what can be expected from Nervos development in the future.
Here are the 5 projects completed by teams over the 10 day virtual hackathon:
- LeapDAO: Spin DeFi, borrowing and lending CKB on Nervos
- SECBIT Labs: Clover protocol, a lightweight zkRollup approach for Nervos CKB
- NerBRos: Pictosis, an NFT auction marketplace on Nervos
- GrowFi: On-chain info cells for sUDT
- Rebase: Token Bridge, a cross-chain tool to transfer DAI on Ethereum to Nervos
In the end, the winners were:
1st place: Clover protocol by the SECBIT team, a lightweight zkRollup approach for Nervos CKBClover Protocol for CKB
Clover protocol on GitHub
2nd place: Pictosis, by the NerBRos team, a NFT auction marketplace on NervosPictosis
Pictosis on Github:
3rd place: Spin-DeFi by the LeapDAO team, borrowing and lending CKB on NervosSpin-DeFi
Spin-DeFi on Github:
In preparation for the hackathon, a number of contributors prepared excellent tutorials capturing the processes of building on CKB today. Check them out!
- Dapps with CKB Lecture 1: Introduction (English) (Chinese)
- Dapps with CKB Lecture 2: On-chain Scripts with Capsule (Chinese with English subtitles)
- Dapps with CKB Lecture 3: Dapps with Lumos (Chinese with English subtitles) Part 1 Part 2
- Dapps with CKB Lecture 4: Dapp Architecture with Lumos (English)
- Understanding the Token Sale Lock Script (English)
- CKB Studio Tutorial (English)
- PW-Core Programming walkthrough (English) (Chinese)
- How to develop a CKB Dapp with Keypering (Chinese with English subtitles)
Additionally, there were a number of interesting insights that came out of the hackathon:
For a quick dApp template with a React + Typescript front end and Express server backend that handles CKB interactions using Lumos, check out:
The simplest dApp for pw-sdk is a great place to start and handles transaction generation on client side:
For a quick development environment, check out the BSN free node for development level usage. It provides both Mainnet and Testnet access and CKB node/indexer RPCs:
There are also a couple of oracle examples on CKB available today:
Capsule allows for writing tests for only certain aspects of a contract’s verification logic. This allows a developer to build a context with pre-assumed state and tailor that context to have the properties for a very specific aspect of the logic, reducing the number of steps for testing.
The design of sUDT on Nervos is very different from ERC20 on Ethereum. For sUDTs on Nervos, there is no need to re-deploy the entire contract for each new token. Each different token definition can reference the standard sUDT type script; a different argument to the type script will denote a different sUDT token.
For sUDT support, check out https://github.com/ququzone/ckb-udt-cli.
The combination of open transactions and stateful computation seems to open up a wide design space. As Tannr said regarding brainstorming auction designs for Pictosis, “Non-determinism isn’t a problem even for open tx on CKB since, as it turns out, you can rely on the script’s custom logic at verification-time to ensure one of a set of possible outcomes defined earlier.”
It’s an exciting time for our project as we see more application and infrastructure developers really start to dig into building on Nervos. We’re glad you’re a part of this journey!
If you’d like to stay in the loop about future events like this hackathon, please subscribe to the newsletter at the bottom of http://www.nervos.org.
To stay updated on all things Nervos: