From 8bda936c4b4902027e20f43f6c956f0e23d5c434 Mon Sep 17 00:00:00 2001 From: sbb45 Date: Fri, 22 May 2026 15:16:04 +0500 Subject: [PATCH] =?UTF-8?q?=D0=B3=D0=BB=D0=B0=D0=B2=D0=BD=D0=B0=D1=8F=20?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=B0=D0=BD=D0=B8=D1=86=D0=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- eslint.config.js | 3 +- package.json | 4 + pnpm-lock.yaml | 12 ++ src/lib/components/DashboardMockup.svelte | 138 ++++++++++++++++++++++ src/lib/components/DashboardStatus.svelte | 134 +++++++++++++++++++++ src/lib/components/layout/Footer.svelte | 77 ++++++++++++ src/lib/components/layout/Header.svelte | 32 +++++ src/lib/components/ui/Button.svelte | 31 +++++ src/lib/utils.ts | 6 + src/routes/+error.svelte | 12 ++ src/routes/+layout.svelte | 17 ++- src/routes/+page.svelte | 23 +++- src/routes/_sections/About.svelte | 35 ++++++ src/routes/_sections/BlogPreview.svelte | 71 +++++++++++ src/routes/_sections/Cta.svelte | 26 ++++ src/routes/_sections/Features.svelte | 67 +++++++++++ src/routes/_sections/Hero.svelte | 33 ++++++ src/routes/_sections/Stats.svelte | 49 ++++++++ src/routes/_sections/Ticker.svelte | 24 ++++ src/routes/layout.css | 79 +++++++++++++ static/images/icons/arrow-right.svg | 4 + static/images/noise.png | Bin 0 -> 31595 bytes 22 files changed, 872 insertions(+), 5 deletions(-) create mode 100644 src/lib/components/DashboardMockup.svelte create mode 100644 src/lib/components/DashboardStatus.svelte create mode 100644 src/lib/components/layout/Footer.svelte create mode 100644 src/lib/components/layout/Header.svelte create mode 100644 src/lib/components/ui/Button.svelte create mode 100644 src/lib/utils.ts create mode 100644 src/routes/+error.svelte create mode 100644 src/routes/_sections/About.svelte create mode 100644 src/routes/_sections/BlogPreview.svelte create mode 100644 src/routes/_sections/Cta.svelte create mode 100644 src/routes/_sections/Features.svelte create mode 100644 src/routes/_sections/Hero.svelte create mode 100644 src/routes/_sections/Stats.svelte create mode 100644 src/routes/_sections/Ticker.svelte create mode 100644 static/images/icons/arrow-right.svg create mode 100644 static/images/noise.png diff --git a/eslint.config.js b/eslint.config.js index 0014edd..4816f0a 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -22,7 +22,8 @@ export default defineConfig( rules: { // typescript-eslint strongly recommend that you do not use the no-undef lint rule on TypeScript projects. // see: https://typescript-eslint.io/troubleshooting/faqs/eslint/#i-get-errors-from-the-no-undef-rule-about-global-variables-not-being-defined-even-though-there-are-no-typescript-errors - 'no-undef': 'off' + 'no-undef': 'off', + 'svelte/no-navigation-without-resolve': 'off' } }, { diff --git a/package.json b/package.json index cef5236..2773e9e 100644 --- a/package.json +++ b/package.json @@ -34,5 +34,9 @@ "typescript": "^6.0.2", "typescript-eslint": "^8.58.1", "vite": "^8.0.7" + }, + "dependencies": { + "clsx": "^2.1.1", + "tailwind-merge": "^3.6.0" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6e31fc5..ccd7d4d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -7,6 +7,13 @@ settings: importers: .: + dependencies: + clsx: + specifier: ^2.1.1 + version: 2.1.1 + tailwind-merge: + specifier: ^3.6.0 + version: 3.6.0 devDependencies: '@eslint/compat': specifier: ^2.0.4 @@ -1254,6 +1261,9 @@ packages: resolution: {integrity: sha512-fTjjT8cHLDwigcu2j3pv7Jq04LklXevPB8uBgyHNiTXv+RMNvVnrjS4UEYrLMkhuq1vpCodHjiW+z/95SDs/fg==} engines: {node: '>=18'} + tailwind-merge@3.6.0: + resolution: {integrity: sha512-uxL7qAVQriqRQPAyK3pj66VqskWqoZ37PW94jwOTwNfq/z9oyu1V+eqrZqtR2+fCiXdYOZe/Modt8GtvqNzu+w==} + tailwindcss@4.3.0: resolution: {integrity: sha512-y6nxMGB1nMW9R6k96e5gdIFzcfL/gTJRNaqGes1YvkLnPVXzWgbqFF2yLC0T8G774n24cx3Pe8XrKoniCOAH+Q==} @@ -2409,6 +2419,8 @@ snapshots: transitivePeerDependencies: - '@typescript-eslint/types' + tailwind-merge@3.6.0: {} + tailwindcss@4.3.0: {} tapable@2.3.3: {} diff --git a/src/lib/components/DashboardMockup.svelte b/src/lib/components/DashboardMockup.svelte new file mode 100644 index 0000000..125095a --- /dev/null +++ b/src/lib/components/DashboardMockup.svelte @@ -0,0 +1,138 @@ + + +
+
+ +
+
+
+
+
+
+ FLAMY TRADE +
+ + +
+ {#each signals as signal, i (signal.sym)} +
+ +
+ + {signal.sym} + +
+ + {dirLabel[signal.dir]} + + {signal.conf} +
+
+ + +
+ +
+ + +
+ {#each getLevels(signal) as level (level.label)} +
+ {level.label} + {level.val} +
+ {/each} +
+
+ {/each} +
+
+
diff --git a/src/lib/components/DashboardStatus.svelte b/src/lib/components/DashboardStatus.svelte new file mode 100644 index 0000000..b402a35 --- /dev/null +++ b/src/lib/components/DashboardStatus.svelte @@ -0,0 +1,134 @@ + + + diff --git a/src/lib/components/layout/Footer.svelte b/src/lib/components/layout/Footer.svelte new file mode 100644 index 0000000..f1c32ad --- /dev/null +++ b/src/lib/components/layout/Footer.svelte @@ -0,0 +1,77 @@ + + + diff --git a/src/lib/components/layout/Header.svelte b/src/lib/components/layout/Header.svelte new file mode 100644 index 0000000..d2a8960 --- /dev/null +++ b/src/lib/components/layout/Header.svelte @@ -0,0 +1,32 @@ + + +
+
+ Flamy Trade + + +
+
diff --git a/src/lib/components/ui/Button.svelte b/src/lib/components/ui/Button.svelte new file mode 100644 index 0000000..3b9f982 --- /dev/null +++ b/src/lib/components/ui/Button.svelte @@ -0,0 +1,31 @@ + + + + {@render children()} + + {#if variant === 'primary'} + Перейти + {/if} + diff --git a/src/lib/utils.ts b/src/lib/utils.ts new file mode 100644 index 0000000..7637fb9 --- /dev/null +++ b/src/lib/utils.ts @@ -0,0 +1,6 @@ +import { clsx, type ClassValue } from 'clsx'; +import { twMerge } from 'tailwind-merge'; + +export function cn(...inputs: ClassValue[]) { + return twMerge(clsx(inputs)); +} diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte new file mode 100644 index 0000000..e72a629 --- /dev/null +++ b/src/routes/+error.svelte @@ -0,0 +1,12 @@ + + +
+

+ Страница не найдена + Возможно стр +

+
diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 0d8eb03..11a3483 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -1,9 +1,22 @@ - + + + + + + + + +
{@render children()} +