Welcome to the Flow Developer Docs
Your resource for everything you'll need to build the future on Flow
Flow is a fast, decentralized, and developer-friendly blockchain, designed as the foundation for a new generation of games, apps, and the digital assets that power them. It is based on a unique, multi-role architecture, and designed to scale without sharding, allowing for massive improvements in speed and throughput while preserving a developer-friendly, ACID-compliant environment.
Get Started
⚡️Preview our new Flow Developer Portal ⚡️
- With the growing number of developers, tools, and content in the Flow ecosystem, we are creating a new experience to help developers not only find and discover what they need, but also have new ways to connect and contribute with the community.
 We are launching the full experience in July 2022 but you can preview the new design, layout and content here:
 Homepage
 Getting Started
 Developer Tools
 Community
 Learn
🏃♂️ Sample Projects
- Flow App Quickstart A detailed guide covering how to use the FCL (Flow Client Library) to build a serverless app that connects to Flow, using React! Ready to jump right in? Use one of our quickstart projects: SvelteKit, NextJS, NuxtJS 
- 🆕 Kitty Items The Kitty Items application is a full-featured NFT marketplace that demonstrates what a full-stack application can look like on Flow. It's designed to showcase the power of Cadence and Flow's client libraries. 
- Flow Core Contracts The smart contracts that define the core functionality of the Flow protocol. 
- Wallet API Demonstration App A demonstration (written in TypeScript) of a RESTful API that implements a simple custodial wallet service for the Flow blockchain. 
🛠 Developer Tools
- Flow CLI 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. 
- Flow Emulator The Flow Emulator is a lightweight tool that emulates the behaviour of the real Flow network. The emulator exposes a gRPC server that implements the Flow Access API, which is designed to have near feature parity with the real network API. 
- VSCode Flow An extension for VSCode editor that integrates Cadence, the resource-oriented smart contract programming language of Flow, into Visual Studio Code. It provides features like syntax highlighting, type checking, code completion, etc. 
- FCL Developer Wallet An application that emulates Flow compatible wallets for use during local development. Click to view the project Github repository, or go to the Kitty Items project for instructions on how to use it while building your project. 
🚀 Trending in the community
- 🏆 FLIP Fest WinnersFLIP Fest was conducted over 3 months with over 100 developers participating in working on issues for reward bounties provided by Flow! Check out tools, features & improvements, and standards. 
- ⭐️ Gold Star ContractsA non-exhaustive list of Cadence contracts, scripts, transactions that exemplify best practices. These contracts are so-called foundational because they are standard interfaces that any FT or NFT contract will implement. They introduce commonly seen resources such as Vaults, Collections as well as standard events. 
- 📺 VideosLearn more about Flow and Cadence by watching videos ... 📜 Articles
 Hello World on Flow
 Resource Oriented Programming Paradigm
 Series: Learn Cadence
 Series: Build Flow apps
 Flow's NFT Metadata StandardRead articles covering Flow and Cadence ... 
 Get the Flow down (learning resources compilation)
 Intro to Flow blockchain
 Cadence at a glance
 How Cadence and Flow will revolutionize smart contract programming
 Taking your First Steps with Cadence
 How to Create NFTs Like NBA Top Shot With Flow and IPFS
 NFT School: How to build a Flow NFT pet store
 Flow Zero to Jacob
🏄🏼♂️ Learn Cadence
- Open Cadence A list of high-quality Cadence code to help you learn and implement your smart-contract ideas. Highlights include: Mint an NFT 
 Set NFT metadata
 Create an NFT marketplace
 Purchase an NFT on a marketplace
- Cadence Tutorials A detailed guide covering how to start using the Cadence smart contract programming language. This guide also covers how to create scripts and transactions in Cadence to interact with Flow. 
- Cadence Language Reference The language definition for Cadence, covering Cadence syntax. Complete and up-to-date with examples. 
- Cadence Best Practices & Patterns A collection of helpful best-practices for writing Cadence code, sourced from Flow contributions. 
- Flow Playground The Flow Playground is an interactive browser-based IDE for experimenting with Cadence code. It uses the Cadence language server for full type-checking and error reporting. The Playground is the fastest way to prototype your Cadence project and experiment with the language. 
👩💻 Flow SDKs
- SDK Guidelines Considering building an SDK for Flow? These guidelines will help light your path. 
- Access Node - HTTP API Flow Access Nodes now have an HTTP API. Mainnet: https://rest-mainnet.onflow.org/v1/ Testnet: https://rest-testnet.onflow.org/v1/ 
- FCL (Flow Client Library) Connect to the Flow blockchain from your JavaScript environment. Works in both browser and NodeJS. 
- Flow GO SDK The Flow GO SDK is a powerful full-fetured set of tools for creating applications and services that leverage the Flow blockchain. 
- Flow JVM SDK The Flow JVM SDK is a library for JVM languages (e.g. Java, Kotlin) that provides utilities to interact with the Flow blockchain. 
- Community SDKs View all Available SDKs for Flow, including SDKs for Ruby, .NET, Elixir, Dart and others!