generated from viandwi24/nuxt3-awesome-starter
-
Notifications
You must be signed in to change notification settings - Fork 0
/
nuxt.config.ts
111 lines (97 loc) · 1.89 KB
/
nuxt.config.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
import { IntlifyModuleOptions } from '@intlify/nuxt3'
import UnpluginComponentsVite from 'unplugin-vue-components/vite'
import IconsResolver from 'unplugin-icons/resolver'
declare module '@nuxt/schema' {
interface NuxtConfig {
intlify?: IntlifyModuleOptions
}
}
// https://v3.nuxtjs.org/docs/directory-structure/nuxt.config
export default defineNuxtConfig({
// server side rendering mode
ssr: true,
// typescripts
typescript: {
strict: true,
typeCheck: true,
},
// css
css: [
'virtual:windi-base.css',
'virtual:windi-components.css',
'virtual:windi-utilities.css',
'~/assets/sass/vendor.scss',
'~/assets/sass/app.scss',
],
// plugins
plugins: ['~/plugins/navbar.ts'],
// build
build: {
transpile: ['@headlessui/vue'],
},
// modules
modules: [
'unplugin-icons/nuxt',
'@intlify/nuxt3',
'@pinia/nuxt',
'@nuxt/content',
'@vueuse/nuxt',
'@nuxtjs/eslint-module',
'nuxt-windicss',
],
// experimental features
experimental: {
reactivityTransform: false,
},
// auto import components
components: true,
// vite plugins
vite: {
plugins: [
UnpluginComponentsVite({
dts: true,
resolvers: [
IconsResolver({
prefix: 'Icon',
}),
],
}),
],
},
// localization - i18n config
intlify: {
localeDir: 'locales',
vueI18n: {
locale: 'en',
fallbackLocale: 'en',
availableLocales: ['en', 'id', 'ja', 'ko'],
},
},
// vueuse
vueuse: {
ssrHandlers: true,
},
// windicss
windicss: {
analyze: {
analysis: {
interpretUtilities: false,
},
server: {
port: 4000,
open: false,
},
},
scan: true,
},
// content
content: {
documentDriven: true,
markdown: {
mdc: true,
},
highlight: {
theme: 'github-dark',
},
},
})