diff --git a/app/app.vue b/app/app.vue index 7a39414..39a11cc 100644 --- a/app/app.vue +++ b/app/app.vue @@ -1,8 +1,5 @@ diff --git a/app/pages/index.vue b/app/pages/index.vue index cb9ed62..60a54c1 100644 --- a/app/pages/index.vue +++ b/app/pages/index.vue @@ -25,7 +25,7 @@ show-arrow autoplay dot-type="line" - class="rounded-xl w-full max-h-[360px] aspect-video flex-shrink-1" + class="rounded-xl w-full max-h-[360px] aspect-video shrink" >

About us

diff --git a/app/pages/products/index.vue b/app/pages/products/index.vue new file mode 100644 index 0000000..41a3b53 --- /dev/null +++ b/app/pages/products/index.vue @@ -0,0 +1,54 @@ + + + diff --git a/assets/css/tailwind.css b/assets/css/tailwind.css deleted file mode 100644 index b5c61c9..0000000 --- a/assets/css/tailwind.css +++ /dev/null @@ -1,3 +0,0 @@ -@tailwind base; -@tailwind components; -@tailwind utilities; diff --git a/nuxt.config.ts b/nuxt.config.ts index 140cd9e..49b8e77 100644 --- a/nuxt.config.ts +++ b/nuxt.config.ts @@ -1,52 +1,86 @@ +import tailwindcss from "@tailwindcss/vite"; +import AutoImport from "unplugin-auto-import/vite"; +import Components from "unplugin-vue-components/vite"; +import { NaiveUiResolver } from "unplugin-vue-components/resolvers"; +import { generateTailwindColorThemes } from "@bg-dev/nuxt-naiveui/utils"; + // https://nuxt.com/docs/api/configuration/nuxt-config export default defineNuxtConfig({ compatibilityDate: "2025-07-15", devtools: { enabled: true }, + ssr: false, + css: ["~/assets/css/main.css"], app: { + pageTransition: { name: "page", mode: "out-in" }, head: { title: "Solsynth", titleTemplate: "%s - Solsynth", link: [{ rel: "icon", type: "image/png", href: "/favicon.png" }], }, }, - scripts: { - globals: { - umami: { - src: "https://cloud.umami.is/script.js", - "data-website-id": "eef151fb-07e2-461b-8b7f-2547aab735d4", - defer: true, - }, - }, - }, - nitro: { - preset: "cloudflare_module", - cloudflare: { - deployConfig: true, - wrangler: { - d1_databases: [ - { - binding: "DB", - database_name: "capital-content", - database_id: "73d65123-3c42-4dc9-b540-8e89678962a2", - }, - ], - }, - }, - }, - content: { - database: { - type: "d1", - bindingName: "DB", - }, - }, + nitro: {}, modules: [ "@nuxt/content", "@nuxt/eslint", "@nuxt/image", "@nuxt/scripts", - "@nuxtjs/tailwindcss", - "nuxtjs-naive-ui", "@vueuse/nuxt", - "@eschricht/nuxt-color-mode", + "@bg-dev/nuxt-naiveui", ], + vite: { + plugins: [ + tailwindcss(), + AutoImport({ + imports: [ + { + "naive-ui": [ + "useDialog", + "useMessage", + "useNotification", + "useLoadingBar", + ], + }, + ], + }), + Components({ + resolvers: [NaiveUiResolver()], + }), + ], + }, + naiveui: { + colorModePreference: "system", + colorModePreferenceCookieName: "fi-ColorMode", + themeConfig: { + ...generateTailwindColorThemes(), + shared: { + common: { + fontFamily: + "Nunito Variable, v-sans, ui-system, -apple-system, sans-serif", + primaryColor: "#3F51B5FF", + primaryColorHover: "#5767C1FF", + primaryColorPressed: "#3546A4FF", + primaryColorSuppl: "#4C5EC5FF", + borderRadius: "16px", + borderRadiusSmall: "8px", + }, + Input: { + borderRadius: "8px", + }, + Select: { + borderRadius: "8px", + }, + Dropdown: { + borderRadius: "8px", + }, + Button: { + borderRadius: "8px", + borderRadiusLarge: "12px", + borderRadiusMedium: "8px", + borderRadiusSmall: "4px", + }, + }, + light: {}, + dark: {}, + }, + }, }); diff --git a/package.json b/package.json index 83cb879..bebd9de 100644 --- a/package.json +++ b/package.json @@ -10,28 +10,31 @@ "postinstall": "nuxt prepare" }, "dependencies": { - "@eschricht/nuxt-color-mode": "1.2.0", - "@fontsource-variable/nunito": "^5.2.6", + "@bg-dev/nuxt-naiveui": "^2.0.0", + "@fontsource-variable/nunito": "^5.2.7", "@nuxt/content": "3.6.3", "@nuxt/eslint": "1.7.1", "@nuxt/image": "1.10.0", "@nuxt/scripts": "0.11.10", - "@nuxtjs/tailwindcss": "6.14.0", - "@octokit/rest": "^22.0.0", - "@unhead/vue": "^2.0.3", - "@vueuse/core": "^13.6.0", + "@octokit/rest": "^22.0.1", + "@unhead/vue": "^2.0.19", + "@vueuse/core": "^13.9.0", "@vueuse/nuxt": "13.6.0", - "better-sqlite3": "^12.2.0", - "eslint": "^9.0.0", - "nuxt": "^4.0.1", + "better-sqlite3": "^12.5.0", + "eslint": "^9.39.1", + "nuxt": "^4.2.1", "nuxtjs-naive-ui": "1.0.2", "typed.js": "^2.1.0", - "vue": "^3.5.18", - "vue-router": "^4.5.1", - "wrangler": "^4.26.1" + "vue": "^3.5.25", + "vue-router": "^4.6.3", + "wrangler": "^4.51.0" }, "devDependencies": { - "@tailwindcss/typography": "^0.5.16", - "@vicons/material": "^0.13.0" + "@tailwindcss/typography": "^0.5.19", + "@vicons/material": "^0.13.0", + "daisyui": "^5.5.5", + "naive-ui": "^2.43.2", + "unplugin-auto-import": "^20.3.0", + "unplugin-vue-components": "^30.0.0" } }