nuxt.config.ts 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. export default defineNuxtConfig({
  2. modules: [
  3. '@nuxtjs/tailwindcss',
  4. '@nuxtjs/color-mode',
  5. '@nuxtjs/google-fonts',
  6. '@nuxt/image',
  7. '@pinia/nuxt',
  8. '@formkit/auto-animate/nuxt',
  9. '@sentry/nuxt/module',
  10. 'nuxt-booster',
  11. 'nuxt-svgo',
  12. 'nuxt-snackbar',
  13. ],
  14. ssr: false,
  15. devtools: { enabled: true },
  16. css: ['animate.css', '~/public/css/config.css'],
  17. vue: {
  18. compilerOptions: {
  19. isCustomElement: (tag: string) => ['lottie-player'].includes(tag),
  20. },
  21. },
  22. runtimeConfig: {
  23. public: {
  24. API_URL: process.env.API_URL || 'http://localhost:8000',
  25. ACCOUNT_LOGIN: process.env.ACCOUNT_LOGIN,
  26. ACCOUNT_PASSWD: process.env.ACCOUNT_PASSWD,
  27. SENTRY_DSN: process.env.SENTRY_DSN,
  28. APP_VERSION: process.env.APP_VERSION,
  29. },
  30. },
  31. sourcemap: {
  32. client: true,
  33. },
  34. devServer: {
  35. port: 3000,
  36. },
  37. compatibilityDate: '2024-04-03',
  38. fontMetrics: {
  39. fonts: ['Montserrat'],
  40. },
  41. googleFonts: {
  42. download: true,
  43. families: {
  44. Montserrat: '100..900',
  45. },
  46. },
  47. sentry: {
  48. sourceMapsUploadOptions: {
  49. org: process.env.SENTRY_ORG,
  50. project: process.env.SENTRY_PROJECT,
  51. authToken: process.env.SENTRY_AUTH_TOKEN,
  52. },
  53. },
  54. svgo: {
  55. autoImportPath: '~/assets/icons',
  56. componentPrefix: 'i',
  57. defaultImport: 'component',
  58. svgoConfig: {
  59. plugins: [
  60. {
  61. name: 'convertColors',
  62. params: {
  63. currentColor: true,
  64. },
  65. },
  66. ],
  67. },
  68. },
  69. tailwindcss: {
  70. config: {
  71. theme: {
  72. extend: {
  73. colors: {
  74. primary: '#FF4646',
  75. foreground: '#EDE8D8',
  76. background: {
  77. 100: '#212121',
  78. 200: '#323232',
  79. },
  80. },
  81. },
  82. },
  83. },
  84. },
  85. snackbar: {
  86. bottom: true,
  87. duration: 3000,
  88. border: 'left',
  89. baseBackgroundColor: '#323232',
  90. dismissOnActionClick: false,
  91. dense: true,
  92. shadow: true,
  93. }
  94. })