Skip to content

Latest commit

 

History

History
131 lines (96 loc) · 5.83 KB

File metadata and controls

131 lines (96 loc) · 5.83 KB

flow-cli — The Flow Command-Line Interface

License Release Discord Built on Flow Go Reference

Logo

Flow CLI brings Flow to your terminal. Easily interact with the network and build your dapps.
Read the docs»

Report Bug · Contribute · Read Guidelines

TL;DR

  • What: Official command-line interface for the Flow network. Deploy contracts, run transactions and scripts, manage accounts and keys, and run a local emulator from your terminal.
  • Who it's for: Developers building dapps, smart contracts, or tooling on Flow.
  • Why use it: A single tool covering project scaffolding, local development, contract deployment, and network interaction across emulator, testnet, and mainnet.
  • Status: see Releases for the latest version.
  • License: Apache-2.0.
  • Related repos: onflow/cadence · onflow/flow-go · onflow/fcl-js
  • The reference command-line interface for the Flow network, open-sourced since 2019.

Installation

To install the Flow CLI, follow the installation instructions on the Flow documentation website.

Documentation

You can find the CLI documentation on the CLI documentation website.

Features

The Flow CLI is a command line tool that allows you to interact with the Flow network. Read about supported commands in the CLI documentation website.

Usage:
  flow [command]

👋 Welcome Flow developer!
   If you are starting a new flow project use our super commands, start by running 'flow init'. 

🔥 Super Commands
  generate     Generate template files for common Cadence code
  init         Start a new Flow project

📦 Flow Entities
  accounts     Create and retrieve accounts and deploy contracts
  blocks       Retrieve blocks
  collections  Retrieve collections
  events       Retrieve events

💬 Flow Interactions
  scripts      Execute Cadence scripts
  transactions Build, sign, send and retrieve transactions

🔨 Flow Tools
  cadence      Execute Cadence code
  dev-wallet   Run a development wallet
  emulator     Run Flow network for development
  flix         execute, generate, package
  flowser      Run Flowser project explorer
  test         Run Cadence tests

🏄 Flow Project
  deploy       Deploy all project contracts
  project      Manage your Cadence project
  run          Start emulator and deploy all project contracts

🔒 Flow Security
  keys         Generate and decode Flow keys
  signatures   Signature verification and creation

🔗 Dependency Manager
  dependencies Manage contracts and dependencies

The Flow CLI includes several commands to interact with Flow networks, such as querying account information, or sending transactions. It also includes the Flow Emulator.

Alt Text

Contributing

Read contributing document.

FAQ

What is the Flow CLI? The Flow CLI is a command-line tool for interacting with the Flow network. It supports deploying contracts, sending transactions, running scripts, managing accounts and keys, and running a local emulator.

How do I install the Flow CLI? Follow the installation instructions at developers.flow.com/tools/flow-cli/install. Installers are provided for macOS, Linux, and Windows.

How do I start a new Flow project? Run flow init to scaffold a new project. This uses the super commands described in the Features section above.

Does the Flow CLI include a local emulator? Yes. The CLI bundles the Flow Emulator so you can develop and test locally before deploying to testnet or mainnet.

Where can I find the reference for flow.json? See docs/configuration.md in this repo and the configuration reference on the docs site.

How do I report a bug or request a feature? Open an issue at github.com/onflow/flow-cli/issues. For security issues, follow SECURITY.md.

What license is the Flow CLI released under? Apache-2.0. See LICENSE.

About Flow

This repo is part of the Flow network, a Layer 1 blockchain built for consumer applications, AI Agents, and DeFi at scale.