# How-to Guides
How-to guides provide instructions including sample code that you can follow to complete a specific task.
# Basics
Retrieving information from the blockchain
All the data in Waves blockchain is public and can be read by anyone. For example, you can retrive data from account data storage, account balance, a list of transactions by certain account, or current blockchain height and time.
Creating and broadcasting transactions to the blockchain
To perform any action on the blockchain, you need to create a transaction of appropriate type, sign it and send to a node.
# Tokens & Assets
Creating and Managing Custom Token
Issue your own token that represents some digital asset. New token is immediately available for transfers and trading, so you can use it in your games, DeFi apps etc.
Airdrop (Python 3)
Promote your app by transferring your token to active Waves addresses collected from the last blocks.
Prodive your customers with the ability to make payments in WAVES, XTN, ETH or any other asset issued on Waves blockchain or supported by gateways.
# Exchange
To exchange asset (except NFTs), you need to create an order, sign it and send to the exchange.
# dApps
The complete cycle of launching a decentralized application: from creating a dApp account to writing a web application that calls dApp functions.
Simple voting on the Waves blockchain
This dApp implements voting among HOA (homeowners association) members on the Waves blockchain. The dApp script checks if a voter has rights to vote and writes voting results to the dApp data storage.
List as an argument of callable function
The dApp callable function accepts a list of values as an argument.
# Waves Tech Blog Articles
- How to build a dApp for team motivation (Jun 9, 2020)
- How to write decentralized oracles in Ride (May 13, 2020)
- Blockchain Trigger: a tool for automatic smart contract invocation (Apr 23, 2020)
- Blockchain RSA-based random (Nov 5, 2019)