Before we dig any deeper into Cadence and start building more complex dApps, we're gonna set up a developer environment locally so we can write code, deploy contracts, and interact with our dApps without using the Playground.
There are a few different options for wallets to choose from:
- Lilico - A non-custodial browser extension wallet (Only works with Chromium browsers, sorry Firefox)
- portto - A custodial iOS, and Android wallet
- Finoa - An institutional grade custodial wallet (Requires KYC)
- Dapper - A custodial web wallet (Requires KYC)
We recommend using either Lilico or portto. I am going to be using Lilico as it's easier to just use a browser extension than a mobile wallet during development, in my opinion.
Once you install the extension, it will take you through setting up a new FLOW wallet. Go ahead and do the required steps.
This is currently connected to the FLOW mainnet. What we want to do is enable Developer Mode on this. Go to settings (cog icon, bottom right), click on Developer Mode, and turn on the toggle switch.
Then, select Testnet for the network.
Once your wallet is all set up, we need to get some testnet FLOW tokens.
- Visit the Flow Testnet Faucet
- Copy your wallet address from Lilico and paste it in the address input box
- Click on
Fund your accountand wait to receive the Testnet Tokens
The Flow CLI is a command-line interface that provides useful utilities for building Flow applications. Think of it like Hardhat, but for Flow.
Install the Flow CLI on your computer. Installation instructions vary based on operating system, so follow the installation steps here to get the up-to-date instructions.
We will use the CLI to create dApps moving forward for Flow.

