A Vue.js application consists of a root Vue instance created with new Vue, optionally organized into a tree of nested, reusable components. For example, a todo app’s component tree might look like this:
│ ├─ DeleteTodoButton
│ └─ EditTodoButton
All Vue components are also Vue instances.