From 6d0acc8e04ee248897580c61c6111e278ef3b222 Mon Sep 17 00:00:00 2001 From: Lucas Date: Sun, 4 Jan 2026 01:33:29 +1000 Subject: [PATCH] Fixed design and texts --- package-lock.json | 69 +++- package.json | 1 + src/App.vue | 5 +- src/assets/main.css | 25 +- src/components/Footer.vue | 50 ++- src/components/Navbar.vue | 17 +- src/components/sections/UnderConstruction.vue | 28 ++ src/components/sections/about/AboutCTA.vue | 29 ++ src/components/sections/about/AboutHero.vue | 20 + .../sections/about/AboutOurMission.vue | 87 +++++ .../sections/about/AboutTechnology.vue | 67 ++++ .../sections/about/AboutTheProblem.vue | 109 ++++++ src/components/sections/blog/BlogHero.vue | 17 + .../sections/blog/BlogRecentArticles.vue | 66 ++++ src/components/sections/blog/BlogSections.vue | 20 + .../community/CommunityDevRoadMap.vue | 66 ++++ .../sections/community/CommunityHero.vue | 18 + .../community/CommunityHowToContribute.vue | 62 +++ .../community/CommunityProjectSupport.vue | 94 +++++ .../sections/community/CommunityUpdates.vue | 50 +++ .../sections/documentation/DocsHero.vue | 23 ++ .../sections/documentation/DocsQuickLinks.vue | 39 ++ .../sections/downloads/DownloadsHero.vue | 60 +++ src/components/sections/hiw/HiwCTA.vue | 31 ++ src/components/sections/hiw/HiwCore.vue | 50 +++ src/components/sections/hiw/HiwEncryption.vue | 84 ++++ src/components/sections/hiw/HiwHero.vue | 19 + src/components/sections/hiw/HiwModules.vue | 137 +++++++ src/components/sections/hiw/HiwP2P.vue | 81 ++++ src/components/sections/home/HomeCTA.vue | 20 + src/components/sections/home/HomeHero.vue | 40 ++ .../sections/home/HomePrinciples.vue | 62 +++ .../sections/support/SupportContactForm.vue | 45 +++ .../sections/support/SupportFAQ.vue | 24 ++ .../support/SupportGettingStarted.vue | 75 ++++ .../sections/support/SupportHero.vue | 26 ++ .../sections/support/SupportNeedHelp.vue | 30 ++ .../sections/support/SupportQuickLinks.vue | 33 ++ .../sections/support/SupportVideos.vue | 29 ++ src/components/ui/ThemeToggleButton.vue | 29 ++ src/components/ui/canvas/DotsMouse.vue | 71 +++- src/main.js | 9 +- src/stores/theme.js | 20 + src/views/About.vue | 287 ++------------ src/views/Blog.vue | 189 ++------- src/views/Community.vue | 299 ++------------ src/views/Docs.vue | 176 +-------- src/views/Downloads.vue | 224 +---------- src/views/Home.vue | 114 +----- src/views/HowItWorks.vue | 366 ++---------------- src/views/Support.vue | 179 ++------- tailwind.config.js | 16 + 52 files changed, 2087 insertions(+), 1700 deletions(-) create mode 100644 src/components/sections/UnderConstruction.vue create mode 100644 src/components/sections/about/AboutCTA.vue create mode 100644 src/components/sections/about/AboutHero.vue create mode 100644 src/components/sections/about/AboutOurMission.vue create mode 100644 src/components/sections/about/AboutTechnology.vue create mode 100644 src/components/sections/about/AboutTheProblem.vue create mode 100644 src/components/sections/blog/BlogHero.vue create mode 100644 src/components/sections/blog/BlogRecentArticles.vue create mode 100644 src/components/sections/blog/BlogSections.vue create mode 100644 src/components/sections/community/CommunityDevRoadMap.vue create mode 100644 src/components/sections/community/CommunityHero.vue create mode 100644 src/components/sections/community/CommunityHowToContribute.vue create mode 100644 src/components/sections/community/CommunityProjectSupport.vue create mode 100644 src/components/sections/community/CommunityUpdates.vue create mode 100644 src/components/sections/documentation/DocsHero.vue create mode 100644 src/components/sections/documentation/DocsQuickLinks.vue create mode 100644 src/components/sections/downloads/DownloadsHero.vue create mode 100644 src/components/sections/hiw/HiwCTA.vue create mode 100644 src/components/sections/hiw/HiwCore.vue create mode 100644 src/components/sections/hiw/HiwEncryption.vue create mode 100644 src/components/sections/hiw/HiwHero.vue create mode 100644 src/components/sections/hiw/HiwModules.vue create mode 100644 src/components/sections/hiw/HiwP2P.vue create mode 100644 src/components/sections/home/HomeCTA.vue create mode 100644 src/components/sections/home/HomeHero.vue create mode 100644 src/components/sections/home/HomePrinciples.vue create mode 100644 src/components/sections/support/SupportContactForm.vue create mode 100644 src/components/sections/support/SupportFAQ.vue create mode 100644 src/components/sections/support/SupportGettingStarted.vue create mode 100644 src/components/sections/support/SupportHero.vue create mode 100644 src/components/sections/support/SupportNeedHelp.vue create mode 100644 src/components/sections/support/SupportQuickLinks.vue create mode 100644 src/components/sections/support/SupportVideos.vue create mode 100644 src/components/ui/ThemeToggleButton.vue create mode 100644 src/stores/theme.js create mode 100644 tailwind.config.js diff --git a/package-lock.json b/package-lock.json index 1335a73..2db3491 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,6 +11,7 @@ "@tailwindcss/vite": "^4.1.17", "clsx": "^2.1.1", "lucide-vue-next": "^0.556.0", + "pinia": "^3.0.4", "radix-vue": "^1.9.17", "tailwind-merge": "^3.4.0", "vue": "^3.5.25", @@ -2029,7 +2030,6 @@ "version": "2.9.0", "resolved": "https://registry.npmjs.org/birpc/-/birpc-2.9.0.tgz", "integrity": "sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==", - "dev": true, "license": "MIT", "funding": { "url": "https://github.com/sponsors/antfu" @@ -2126,7 +2126,6 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-4.0.5.tgz", "integrity": "sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==", - "dev": true, "license": "MIT", "dependencies": { "is-what": "^5.2.0" @@ -2390,7 +2389,6 @@ "version": "5.5.3", "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", - "dev": true, "license": "MIT" }, "node_modules/is-docker": { @@ -2432,7 +2430,6 @@ "version": "5.5.0", "resolved": "https://registry.npmjs.org/is-what/-/is-what-5.5.0.tgz", "integrity": "sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==", - "dev": true, "license": "MIT", "engines": { "node": ">=18" @@ -2787,7 +2784,6 @@ "version": "3.0.1", "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", - "dev": true, "license": "MIT" }, "node_modules/mrmime": { @@ -2900,6 +2896,66 @@ "url": "https://github.com/sponsors/jonschlinkert" } }, + "node_modules/pinia": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/pinia/-/pinia-3.0.4.tgz", + "integrity": "sha512-l7pqLUFTI/+ESXn6k3nu30ZIzW5E2WZF/LaHJEpoq6ElcLD+wduZoB2kBN19du6K/4FDpPMazY2wJr+IndBtQw==", + "license": "MIT", + "dependencies": { + "@vue/devtools-api": "^7.7.7" + }, + "funding": { + "url": "https://github.com/sponsors/posva" + }, + "peerDependencies": { + "typescript": ">=4.5.0", + "vue": "^3.5.11" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/pinia/node_modules/@vue/devtools-api": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.7.9.tgz", + "integrity": "sha512-kIE8wvwlcZ6TJTbNeU2HQNtaxLx3a84aotTITUuL/4bzfPxzajGBOoqjMhwZJ8L9qFYDU/lAYMEEm11dnZOD6g==", + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^7.7.9" + } + }, + "node_modules/pinia/node_modules/@vue/devtools-kit": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.7.9.tgz", + "integrity": "sha512-PyQ6odHSgiDVd4hnTP+aDk2X4gl2HmLDfiyEnn3/oV+ckFDuswRs4IbBT7vacMuGdwY/XemxBoh302ctbsptuA==", + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^7.7.9", + "birpc": "^2.3.0", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.2" + } + }, + "node_modules/pinia/node_modules/@vue/devtools-shared": { + "version": "7.7.9", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.7.9.tgz", + "integrity": "sha512-iWAb0v2WYf0QWmxCGy0seZNDPdO3Sp5+u78ORnyeonS6MT4PC7VPrryX2BpMJrwlDeaZ6BD4vP4XKjK0SZqaeA==", + "license": "MIT", + "dependencies": { + "rfdc": "^1.4.1" + } + }, + "node_modules/pinia/node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", + "license": "MIT" + }, "node_modules/postcss": { "version": "8.5.6", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz", @@ -2979,7 +3035,6 @@ "version": "1.4.1", "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", - "dev": true, "license": "MIT" }, "node_modules/rollup": { @@ -3074,7 +3129,6 @@ "version": "14.0.1", "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", - "dev": true, "license": "BSD-3-Clause", "engines": { "node": ">=0.10.0" @@ -3084,7 +3138,6 @@ "version": "2.2.6", "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.6.tgz", "integrity": "sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==", - "dev": true, "license": "MIT", "dependencies": { "copy-anything": "^4" diff --git a/package.json b/package.json index 93cd2fa..2e690c4 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "@tailwindcss/vite": "^4.1.17", "clsx": "^2.1.1", "lucide-vue-next": "^0.556.0", + "pinia": "^3.0.4", "radix-vue": "^1.9.17", "tailwind-merge": "^3.4.0", "vue": "^3.5.25", diff --git a/src/App.vue b/src/App.vue index 22374c7..61c2dbc 100644 --- a/src/App.vue +++ b/src/App.vue @@ -4,14 +4,15 @@ import Footer from './components/Footer.vue'; diff --git a/src/assets/main.css b/src/assets/main.css index a461c50..27005dc 100644 --- a/src/assets/main.css +++ b/src/assets/main.css @@ -1 +1,24 @@ -@import "tailwindcss"; \ No newline at end of file +@import "tailwindcss"; + +@theme { + --color-background: rgb(var(--background)); + --color-foreground: rgb(var(--foreground)); +} + +@layer base { + :root { + --background: 240 240 240; + --foreground: 15 23 42; + } + + .dark { + --background: 2 6 23; + --foreground: 226 232 240; + } +} + +@layer utilities { + .animate-spin-slow { + animation: spin 4s linear infinite; + } +} \ No newline at end of file diff --git a/src/components/Footer.vue b/src/components/Footer.vue index 6379245..e07d774 100644 --- a/src/components/Footer.vue +++ b/src/components/Footer.vue @@ -6,9 +6,9 @@ const currentYear = new Date().getFullYear() diff --git a/src/components/Navbar.vue b/src/components/Navbar.vue index 0847109..43b893c 100644 --- a/src/components/Navbar.vue +++ b/src/components/Navbar.vue @@ -2,8 +2,8 @@ import { ref } from 'vue' import { RouterLink } from 'vue-router' import { Menu, X } from 'lucide-vue-next' - import Button from '@/components/ui/Button.vue' +import ThemeToggleButton from './ui/ThemeToggleButton.vue' const mobileMenuOpen = ref(false) @@ -17,13 +17,14 @@ const navLinks = [ { href: "/blog", label: "Blog" }, { href: "/support", label: "Support" }, ] +