Skip to content

Quinence/zilliqa-dev-starter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Zilliqa Development Starter

This repository outlines how to get started with development on the Zilliqa Blockchain. It also lists tutorials, courses, and tools on Zilliqa development.

What is Zilliqa?

Zilliqa is the first public blockchain built entirely on a sharded architecture that's scalable, secure, decentralised, fast and low-cost. To design smart contracts, Zilliqa uses Scilla — an intermediate-level smart contract language developed with contract safety being prioritized.

It is not strictly necessary to understand the design of Zilliqa architecture to start developing on Zilliqa. Nonetheless, the Zilliqa Design Story is an important read before diving deeper.

📖 Read Part 1 (Network Sharding), Part 2 (Consensus Protocol), and Part 3 (Making Consensus Efficient).

Getting started with testnet ZIL tokens

Like any common public Blockchain, Zilliqa has a testnet (for test and development) and a mainnet (the real Blockchain). Before any development, it is important to get accustomed to creating an account and getting some testnet ZIL tokens (tokens in Zilliqa are called ZIL).

🏁 The developer wallet is a great way to quickly create a new wallet. Once a wallet is created, use the ZIL faucet there to request free testnet ZILs. Be sure to save the wallet details (e.g. the keystore file) so that you can use this account at the later part of the development.

You may install Zilpay — the Zilliqa-backed web3 wallet that can be used with any decentralized apps (dApps) on Zilliqa. The Chrome extension can be used in Google Chrome and Chromium-based browsers (e.g. Brave). The accounts already created in the testnet can then be imported in Zilpay as well.

Starting with smart contract development in Scilla

Learning the Scilla smart contract language is the first step of Blockchain development in Zilliqa. Like any smart contract language, Scilla has its own learning curve. However, there are great tools to aid the process.

🚀 Learn Scilla in a fun and interactive way at LearnScilla.

The online IDE for Scilla is a great place to design and test Scilla smart contracts. Pro tip: Use the testnet (and not simulated environment) in the IDE for a consistent experience.

🧵 A collection of smart contracts and design patterns can be found at:

Interacting with the Zilliqa Blockchain

While the smart contracts can technically be deployed and interacted with from the online IDE, there are many other ways to interact with the Zilliqa Blockchain programmatically.

👐 The most popular is the Zilliqa JavaScript Library. It has first-class support for TypeScript, and allows to interact with the Zilliqa Blockchain from browser-side application frameworks (e.g. React) as well as any Node.js project (e.g. serverside). There are implementations in other languages as well, e.g. the Golang SDK.

Zilpay also has an extensive API whose signature is analogous to the Zilliqa JavaScript Library. It is also recommended when interacting with the Zilliqa Blockchain from client-side applications with dynamic user interactions (e.g. paying with Zilpay).

Ceres is a great way of getting started with local development instead of working directly with the official testnet, or Zilliqa's Isolated Server environment, see Ceres on Zilliqa Dev Portal. It runs different Zilliqa development tools under Docker containers and is really easy to use. Hence, you can focus on Scilla development and interacting with the (local) block chain without having to manage the tools.

For example, with ceres it just takes two clicks to start a local isolated server (a test server to run a local Zilliqa network on, e.g., http://localhost:5555, instead of interacting with https://zilliqa-isolated-server.zilliqa.com/). Simply head to the Releases and download the latest version for your platform.

Building fullstack dApps on the Zilliqa Blockchain

Zilliqa provides cutting-edge tools for building dApps. Scilla is strongly typed and safe-by-design — enabling fast and secure smart contract development. The Zilliqa JavaScript Library and the Zilpay API — along with the TypeScript support — allows to effeciently deploy contracts, call methods (called transitions in Zilliqa), interact with the Zilliqa Blockchain.

🚀 Comb through a full-fledged fullstack application on Zilliqa for listing and renting houses: the code and the walkthrough.

Join the gang

The Zilliqa development community is strong. Catch us at the Telegram group or the Discord Server.

🧑🏻‍💻 Have a project in mind? Quinence is the preferred development partner of Zilliqa. Reach out for a quick chat.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •