With Vue 3, it introduced a <script setup> feature. It is compile-time syntactic sugar for using Composition API in Single File Components. This syntax allows developers to define components without having to export anything from the JavaScript code block. It exposes all its top-level bindings to the template. Long story short, this syntax makes Single File Components simpler and makes you feel you’re working with native JavaScript code.
In the exact words of the RFC, “This proposal’s main goal is reducing the verbosity of Composition API usage inside Single File Components (SFCs) by directly exposing the context of <script setup> to the template.”