import colors from 'vuetify/es5/util/colors' export default { // Enable server-side rendering (https://go.nuxtjs.dev/ssr-mode) ssr: true, // Target (https://go.nuxtjs.dev/config-target) target: 'static', // Global page headers (https://go.nuxtjs.dev/config-head) head: { titleTemplate: '%s - IT-Tools', title: 'IT-Tools', meta: [ {charset: 'utf-8'}, {name: 'viewport', content: 'width=device-width, initial-scale=1'}, { hid: 'description', name: 'description', content: 'Aggregated set of useful tools that every developer may need once in a while.' }, {hid: 'keywords', name: 'keywords', content: ['tools', 'tool', 'it', 'developer', 'web', 'computing']} ], link: [{rel: 'icon', type: 'image/x-icon', href: '/favicon.ico'}] }, // Global CSS (https://go.nuxtjs.dev/config-css) css: [], // Plugins to run before rendering page (https://go.nuxtjs.dev/config-plugins) plugins: [ {src: '~/plugins/pwa-update.plugin.ts', mode: 'client'}, '~/plugins/vuetify-toast' ], // Auto import components (https://go.nuxtjs.dev/config-components) components: true, // Modules for dev and build (recommended) (https://go.nuxtjs.dev/config-modules) buildModules: [ // https://go.nuxtjs.dev/typescript '@nuxt/typescript-build', // https://go.nuxtjs.dev/vuetify '@nuxtjs/vuetify', // '@nuxtjs/router-extras' '~/buildModules/tool-config', '~/buildModules/memo', '@nuxtjs/google-fonts' ], // Modules (https://go.nuxtjs.dev/config-modules) modules: [ // https://go.nuxtjs.dev/axios '@nuxtjs/axios', // https://go.nuxtjs.dev/pwa '@nuxtjs/pwa', '@nuxtjs/svg', 'nuxt-i18n', '@nuxtjs/markdownit', 'vue-plausible', '@nuxtjs/sitemap' // Must stay last ], plausible: { domain: process.env.NUXT_ENV_PLAUSIBLE_DOMAIN, apiHost: process.env.NUXT_ENV_PLAUSIBLE_API_HOST, trackLocalhost: false }, // Axios module configuration (https://go.nuxtjs.dev/config-axios) axios: {}, // Vuetify module configuration (https://go.nuxtjs.dev/config-vuetify) vuetify: { defaultAssets: { icons: 'mdi' }, icons: { iconfont: 'mdi' }, customVariables: ['~/assets/variables.scss'], treeShake: { components: [ 'VSnackbar', 'VBtn', 'VIcon' ] }, theme: { dark: true, options: {customProperties: true}, themes: { dark: { primary: '#05e677', accent: colors.grey.darken3, secondary: colors.amber.darken3, info: colors.teal.lighten1, warning: colors.amber.base, error: colors.deepOrange.accent4, success: colors.green.accent3, background: '#324148', foreground: '#28353b', toolbar: '#243137' } } } }, i18n: { vueI18nLoader: true, locales: ['en'], defaultLocale: 'en', strategy: 'no_prefix' }, // Build Configuration (https://go.nuxtjs.dev/config-build) build: { extractCSS: true }, router: {}, googleFonts: { display: 'swap', prefetch: true, preconnect: true, preload: true, families: { Roboto: { wght: [300, 400, 500, 700, 900] } } }, sitemap: { hostname: 'https://it-tools.tech', gzip: true }, markdownit: { preset: 'default', linkify: true, breaks: true, runtime: true, typographer: true, html: false, use: [ 'markdown-it-anchor', 'markdown-it-highlightjs' ] } }