---
title: Introduction
---

# Introduction

Vue Flow is a library for building node-based applications. These can be simple static diagrams or complex node-based
editors. You can implement custom nodes and edges. It also comes with components like a mini-map, viewport controls and
a background. 

Check out the [examples](/examples/) if you want to dive directly into the code.

## Key Features
 
- 👶 __Easy to use__: Seamless zooming & panning behaviour and single and multi-selections of
  elements

- 🎨 __Customizable__: Different and edge types and support for custom nodes with multiple handles and custom edges

- 🚀 __Fast rendering__: Only nodes that have changed are re-rendered and only those that are in the viewport are displayed (optionally)

- 🧲 __Handy utilities__: Comes with graph helper and state composable functions for advanced uses

- 📦 __Additional Components__:

  - 🖼 Background: With two built-in patterns and some configuration options like height, width or color.

  - 🧭 Minimap: Shows current nodes in a small map shape in the bottom right corner

  - 🕹 Controls: Control zoom behavior from a panel on the bottom left

- 🦾 __Reliable__: Fully written in TypeScript

::: warning
  Vue Flow is still version 0.x.x.
  
  Expect breaking changes between versions!
:::
