| 1 | # Configure Vue App |
| 2 | |
| 3 | <Environment type="client" /> |
| 4 | |
| 5 | Slidev uses [Vue 3](https://v3.vuejs.org/) to render the application on the client side. You can extend the app to add custom plugins or configurations. |
| 6 | |
| 7 | Create `./setup/main.ts` with the following content: |
| 8 | |
| 9 | ```ts twoslash [setup/main.ts] |
| 10 | /* eslint-disable import/first */ |
| 11 | import type { Plugin } from 'vue' |
| 12 | |
| 13 | declare const YourPlugin: Plugin |
| 14 | // ---cut--- |
| 15 | import { defineAppSetup } from '@slidev/types' |
| 16 | |
| 17 | export default defineAppSetup(({ app, router }) => { |
| 18 | // Vue App |
| 19 | app.use(YourPlugin) |
| 20 | }) |
| 21 | ``` |
| 22 | |
| 23 | This can also be used as the main entrance of your Slidev app to do some initializations before the app starts. |
| 24 | |
| 25 | Learn more: [Vue Application API](https://v3.vuejs.org/api/application-api.html#component). |
| 26 |