106 lines
3.6 KiB
TypeScript
106 lines
3.6 KiB
TypeScript
// https://nuxt.com/docs/api/configuration/nuxt-config
|
|
export default defineNuxtConfig({
|
|
ssr: true,
|
|
|
|
app: {
|
|
head: {
|
|
title: 'Veridian',
|
|
htmlAttrs: {
|
|
lang: 'en',
|
|
},
|
|
meta: [
|
|
{ name: 'viewport', content: 'width=device-width, initial-scale=1' },
|
|
{
|
|
name: 'description',
|
|
content: 'A chat-based AI assistant for your LLMs.',
|
|
},
|
|
{
|
|
name: 'keywords',
|
|
content:
|
|
'LLM, AI, Chat, Assistant, Agent, LLMs, OpenAI, GPT, GPT-3, GPT-4, Claude, ChatGPT, Whisper, Bard, Bing, Anthropic, DeepAI, Dolly, StableLM, Vicuna, Llama, Alpaca, ChatGLM, MOSS, MPT, Codex, Codex2, Codex 3, Codex 4, Falcon, Flan-T5, T5, Llama2, LLaMA, LLaMA2, StableLM, OpenAssistant, OpenChat',
|
|
},
|
|
],
|
|
link: [
|
|
{
|
|
rel: 'stylesheet',
|
|
href: 'https://cdn.jsdelivr.net/npm/katex@0.16.8/dist/katex.min.css',
|
|
}
|
|
],
|
|
// script: [
|
|
// {
|
|
// src: 'https://cdn.jsdelivr.net/npm/eruda',
|
|
// },
|
|
// {
|
|
// innerHTML: `
|
|
// eruda.init();
|
|
// `,
|
|
// }
|
|
// ]
|
|
},
|
|
},
|
|
|
|
vite: {
|
|
server: {
|
|
allowedHosts: true,
|
|
},
|
|
optimizeDeps: {
|
|
include: [
|
|
"shiki/themes/vitesse-dark.mjs", "shiki/themes/vitesse-light.mjs", "shiki/themes/min-light.mjs", "shiki/themes/min-dark.mjs", "shiki/langs/js.mjs", "shiki/langs/jsx.mjs", "shiki/langs/json.mjs", "shiki/langs/ts.mjs", "shiki/langs/tsx.mjs", "shiki/langs/vue.mjs", "shiki/langs/css.mjs", "shiki/langs/html.mjs", "shiki/langs/bash.mjs", "shiki/langs/md.mjs", "shiki/langs/mdc.mjs", "shiki/langs/yaml.mjs", "shiki/langs/py.mjs", "shiki/langs/typescript.mjs", "shiki/langs/javascript.mjs",
|
|
'@vue/devtools-core',
|
|
'@vue/devtools-kit',
|
|
'@nuxt/hints/runtime/hydration/component',
|
|
'vue-virtual-scroller',
|
|
'shiki',
|
|
'better-auth/vue',
|
|
'big.js',
|
|
'unified',
|
|
'remark-gfm',
|
|
'remark-parse',
|
|
'remark-rehype',
|
|
'remark-math',
|
|
'rehype-katex',
|
|
'@triplit/client',
|
|
'@triplit/db'
|
|
],
|
|
}
|
|
},
|
|
|
|
// bizarely, when I enable this, it adds an 8 second or so lag when I navigate to a different page occasionally
|
|
// experimental: {
|
|
// viewTransition: true,
|
|
// },
|
|
|
|
modules: ['@nuxt/hints', '@nuxt/icon', '@unocss/nuxt', '@nuxtjs/color-mode', 'triplit-nuxt', 'nuxt-shiki'],
|
|
|
|
shiki: {
|
|
bundledThemes: ['vitesse-dark', 'vitesse-light'],
|
|
bundledLangs: ['js', 'jsx', 'json', 'ts', 'tsx', 'vue', 'css', 'html', 'bash', 'md', 'mdc', 'yaml', 'py'],
|
|
defaultTheme: 'vitesse-dark',
|
|
},
|
|
|
|
triplit: {
|
|
schema_path: './triplit/schema.ts',
|
|
serverUrl: process.env.NUXT_PUBLIC_TRIPLIT_URL,
|
|
token: process.env.NUXT_TRIPLIT_ANON_TOKEN,
|
|
storage: 'memory',
|
|
// we will connect automatically in the auth plugin when we call startSession
|
|
autoConnect: false,
|
|
},
|
|
|
|
colorMode: {
|
|
preference: 'system',
|
|
fallback: 'dark',
|
|
storage: 'cookie',
|
|
},
|
|
|
|
devtools: {
|
|
enabled: true,
|
|
|
|
timeline: {
|
|
enabled: true,
|
|
},
|
|
},
|
|
|
|
compatibilityDate: '2025-07-15',
|
|
});
|