-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnuxt.config.ts
101 lines (100 loc) · 2.42 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
import svgLoader from 'vite-svg-loader'
export default defineNuxtConfig({
modules: ['@nuxt/ui', '@nuxt/eslint', '@pinia/nuxt', '@nuxtjs/seo', '@nuxtjs/sitemap'],
ssr: false,
devtools: { enabled: true },
app: {
head: {
title: 'shliste ~ Deine smarte Einkaufsliste',
htmlAttrs: {
lang: 'de',
},
meta: [
{ name: 'description', content: 'Erstelle und verwalte mühelos deine Einkaufslisten mit shliste. Pack Produkte ein, hake sie ab und behalte immer den Überblick beim Shoppen!' },
{ name: 'theme-color', content: '#FCE7F3' },
{ name: 'apple-mobile-web-app-capable', content: 'yes' },
],
link: [
{ rel: 'preconnect', href: 'https://fonts.googleapis.com' },
{ rel: 'preconnect', href: 'https://fonts.gstatic.com', crossorigin: 'anonymous' },
{ rel: 'stylesheet', href: 'https://fonts.googleapis.com/css2?family=Zain:wght@200;300;400;700;800;900&display=swap' },
{ rel: 'manifest', href: '/manifest.json' },
{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' },
],
script: [
{ src: '/initSw.js' },
],
},
},
css: [
'@/assets/css/main.scss',
],
site: {
indexable: true,
url: 'https://shliste.app',
},
colorMode: {
preference: 'light',
},
runtimeConfig: {
environment: process.env.NUXT_ENVIRONMENT,
google: {
client: {
id: process.env.NUXT_GOOGLE_CLIENT_ID,
secret: process.env.NUXT_GOOGLE_CLIENT_SECRET,
redirectUri: process.env.NUXT_GOOGLE_REDIRECT_URI,
},
},
openai: {
apiKey: process.env.NUXT_OPENAI_API_KEY,
},
},
build: {
transpile: ['tailwindcss'],
},
future: {
compatibilityVersion: 4,
},
compatibilityDate: '2024-09-10',
nitro: {
publicAssets: [
{
baseURL: '/server',
dir: 'static',
},
],
},
vite: {
css: {
preprocessorOptions: {
scss: {
// additionalData: '@import "@/assets/css/_variables.scss";',
api: 'modern',
},
},
},
plugins: [
svgLoader({}),
],
build: {
sourcemap: true,
minify: 'terser',
cssCodeSplit: true,
terserOptions: {
compress: {
drop_console: true,
drop_debugger: true,
},
},
},
cacheDir: '.vite',
},
eslint: {
config: {
stylistic: true,
},
},
seo: {
enabled: true,
},
})