mirror your GitHub repos to tangled.org automatically
1// https://nuxt.com/docs/api/configuration/nuxt-config
2export default defineNuxtConfig({
3 devServer: {
4 host: '127.0.0.1',
5 },
6 modules: [
7 '@nuxtjs/html-validator',
8 '@nuxt/scripts',
9 '@nuxt/fonts',
10 '@nuxt/image',
11 'nuxt-og-image',
12 '@nuxt/test-utils',
13 ],
14 devtools: { enabled: true },
15 css: ['~/assets/css/tokens.css', '~/assets/css/base.css'],
16 fonts: {
17 families: [
18 { name: 'JetBrains Mono', provider: 'google', weights: [400, 500, 700] },
19 { name: 'IBM Plex Sans', provider: 'google', weights: [300, 400, 600] },
20 ],
21 },
22 runtimeConfig: {
23 databaseUrl: '',
24 githubAppId: '',
25 githubAppPrivateKey: '',
26 githubAppClientId: '',
27 githubAppClientSecret: '',
28 githubWebhookSecret: '',
29 cronSecret: '',
30 workerBudgetMs: '',
31 maxPackBytes: '',
32 encryptionKey: '',
33 atprotoPrivateJwk: '',
34 sessionPassword: '',
35 public: {
36 url: '',
37 },
38 },
39 typescript: {
40 nodeTsConfig: {
41 include: ['../vite.config.ts'],
42 },
43 },
44 app: {
45 head: {
46 htmlAttrs: { lang: 'en' },
47 title: 'synchub.to',
48 link: [
49 { rel: 'icon', type: 'image/svg+xml', href: '/favicon.svg' },
50 { rel: 'alternate icon', href: '/favicon.ico' },
51 ],
52 },
53 },
54 future: {
55 compatibilityVersion: 4,
56 },
57 experimental: {
58 typedPages: true,
59 },
60 routeRules: {
61 '/': { noScripts: true, prerender: true },
62 '/dashboard': { ssr: false, prerender: true },
63 '/connect': { ssr: false },
64 },
65 nitro: {
66 vercel: {
67 config: {
68 crons: [
69 {
70 path: '/api/jobs/run',
71 schedule: '* * * * *',
72 },
73 ],
74 },
75 functions: {
76 maxDuration: 300,
77 },
78 },
79 typescript: {
80 tsConfig: {
81 // Pull dotted directories like `server/routes/.well-known/` into the
82 // server tsconfig; TypeScript's default include glob skips them.
83 include: ['../server/**/.*/**/*'],
84 },
85 },
86 },
87 compatibilityDate: '2024-04-03',
88 // Ensure that any HTML validation errors are treated as build errors
89 htmlValidator: {
90 failOnError: true,
91 },
92})