diff --git a/.github/workflows/pr-validation.yml b/.github/workflows/pr-validation.yml index 3193e84..f695a36 100644 --- a/.github/workflows/pr-validation.yml +++ b/.github/workflows/pr-validation.yml @@ -295,7 +295,7 @@ jobs: } // Page status table - const pages = ['home', 'news', 'about', 'screenshots', 'downloads', 'quick-manual', 'support', 'license']; + const pages = ['home', 'screenshots', 'documentation', 'downloads', 'support']; const pageRows = pages.map(p => { const desktopImg = report.images.find(i => i.name === `${p}-desktop.png`); const mobileImg = report.images.find(i => i.name === `${p}-mobile.png`); diff --git a/e2e/pr-screenshots/documentation-dark-desktop.png b/e2e/pr-screenshots/documentation-dark-desktop.png new file mode 100644 index 0000000..1687aab Binary files /dev/null and b/e2e/pr-screenshots/documentation-dark-desktop.png differ diff --git a/e2e/pr-screenshots/documentation-dark-mobile.png b/e2e/pr-screenshots/documentation-dark-mobile.png new file mode 100644 index 0000000..8efeffd Binary files /dev/null and b/e2e/pr-screenshots/documentation-dark-mobile.png differ diff --git a/e2e/pr-screenshots/documentation-light-desktop.png b/e2e/pr-screenshots/documentation-light-desktop.png new file mode 100644 index 0000000..dbf4133 Binary files /dev/null and b/e2e/pr-screenshots/documentation-light-desktop.png differ diff --git a/e2e/pr-screenshots/documentation-light-mobile.png b/e2e/pr-screenshots/documentation-light-mobile.png new file mode 100644 index 0000000..1add440 Binary files /dev/null and b/e2e/pr-screenshots/documentation-light-mobile.png differ diff --git a/e2e/pr-screenshots/downloads-dark-desktop.png b/e2e/pr-screenshots/downloads-dark-desktop.png new file mode 100644 index 0000000..4d2c97c Binary files /dev/null and b/e2e/pr-screenshots/downloads-dark-desktop.png differ diff --git a/e2e/pr-screenshots/downloads-dark-mobile.png b/e2e/pr-screenshots/downloads-dark-mobile.png new file mode 100644 index 0000000..aa953e6 Binary files /dev/null and b/e2e/pr-screenshots/downloads-dark-mobile.png differ diff --git a/e2e/pr-screenshots/downloads-light-desktop.png b/e2e/pr-screenshots/downloads-light-desktop.png new file mode 100644 index 0000000..a5fe6c8 Binary files /dev/null and b/e2e/pr-screenshots/downloads-light-desktop.png differ diff --git a/e2e/pr-screenshots/downloads-light-mobile.png b/e2e/pr-screenshots/downloads-light-mobile.png new file mode 100644 index 0000000..afc55f9 Binary files /dev/null and b/e2e/pr-screenshots/downloads-light-mobile.png differ diff --git a/e2e/pr-screenshots/home-dark-desktop.png b/e2e/pr-screenshots/home-dark-desktop.png new file mode 100644 index 0000000..ea62a9e Binary files /dev/null and b/e2e/pr-screenshots/home-dark-desktop.png differ diff --git a/e2e/pr-screenshots/home-dark-mobile.png b/e2e/pr-screenshots/home-dark-mobile.png new file mode 100644 index 0000000..80986c9 Binary files /dev/null and b/e2e/pr-screenshots/home-dark-mobile.png differ diff --git a/e2e/pr-screenshots/home-light-desktop.png b/e2e/pr-screenshots/home-light-desktop.png new file mode 100644 index 0000000..fec7371 Binary files /dev/null and b/e2e/pr-screenshots/home-light-desktop.png differ diff --git a/e2e/pr-screenshots/home-light-mobile.png b/e2e/pr-screenshots/home-light-mobile.png new file mode 100644 index 0000000..99ce6be Binary files /dev/null and b/e2e/pr-screenshots/home-light-mobile.png differ diff --git a/e2e/pr-screenshots/screenshots-dark-desktop.png b/e2e/pr-screenshots/screenshots-dark-desktop.png new file mode 100644 index 0000000..010e66d Binary files /dev/null and b/e2e/pr-screenshots/screenshots-dark-desktop.png differ diff --git a/e2e/pr-screenshots/screenshots-dark-mobile.png b/e2e/pr-screenshots/screenshots-dark-mobile.png new file mode 100644 index 0000000..3e55a54 Binary files /dev/null and b/e2e/pr-screenshots/screenshots-dark-mobile.png differ diff --git a/e2e/pr-screenshots/screenshots-light-desktop.png b/e2e/pr-screenshots/screenshots-light-desktop.png new file mode 100644 index 0000000..7ba73ba Binary files /dev/null and b/e2e/pr-screenshots/screenshots-light-desktop.png differ diff --git a/e2e/pr-screenshots/screenshots-light-mobile.png b/e2e/pr-screenshots/screenshots-light-mobile.png new file mode 100644 index 0000000..63567d7 Binary files /dev/null and b/e2e/pr-screenshots/screenshots-light-mobile.png differ diff --git a/e2e/pr-screenshots/support-dark-desktop.png b/e2e/pr-screenshots/support-dark-desktop.png new file mode 100644 index 0000000..3a6a01c Binary files /dev/null and b/e2e/pr-screenshots/support-dark-desktop.png differ diff --git a/e2e/pr-screenshots/support-dark-mobile.png b/e2e/pr-screenshots/support-dark-mobile.png new file mode 100644 index 0000000..f7b5e2d Binary files /dev/null and b/e2e/pr-screenshots/support-dark-mobile.png differ diff --git a/e2e/pr-screenshots/support-light-desktop.png b/e2e/pr-screenshots/support-light-desktop.png new file mode 100644 index 0000000..1d3c1e4 Binary files /dev/null and b/e2e/pr-screenshots/support-light-desktop.png differ diff --git a/e2e/pr-screenshots/support-light-mobile.png b/e2e/pr-screenshots/support-light-mobile.png new file mode 100644 index 0000000..eed2b80 Binary files /dev/null and b/e2e/pr-screenshots/support-light-mobile.png differ diff --git a/e2e/screenshots.spec.ts b/e2e/screenshots.spec.ts index f896c1f..f070b68 100644 --- a/e2e/screenshots.spec.ts +++ b/e2e/screenshots.spec.ts @@ -3,13 +3,10 @@ import { expectScreenshot, printWarningSummary } from './visual'; const pages = [ { path: '/', name: 'home' }, - { path: '/news', name: 'news' }, - { path: '/about', name: 'about' }, { path: '/screenshots', name: 'screenshots' }, + { path: '/documentation', name: 'documentation' }, { path: '/downloads', name: 'downloads' }, - { path: '/quick-manual', name: 'quick-manual' }, { path: '/support', name: 'support' }, - { path: '/license', name: 'license' }, ]; const MOBILE_VIEWPORT = { width: 375, height: 812 }; @@ -38,14 +35,19 @@ test.describe('mobile screenshots', () => { test.describe('redirects', () => { const redirects = [ - { from: '/news.html', to: '/news' }, - { from: '/about.html', to: '/about' }, + { from: '/news', to: '/support' }, + { from: '/news.html', to: '/support' }, + { from: '/about', to: '/documentation' }, + { from: '/about.html', to: '/documentation' }, { from: '/screenshots.html', to: '/screenshots' }, { from: '/downloads.html', to: '/downloads' }, - { from: '/quick_manual', to: '/quick-manual' }, - { from: '/quick_manual.html', to: '/quick-manual' }, + { from: '/quick_manual', to: '/documentation' }, + { from: '/quick_manual.html', to: '/documentation' }, + { from: '/quick-manual', to: '/documentation' }, + { from: '/quick-manual.html', to: '/documentation' }, { from: '/support.html', to: '/support' }, - { from: '/license.html', to: '/license' }, + { from: '/license', to: '/support' }, + { from: '/license.html', to: '/support' }, ]; for (const { from, to } of redirects) { diff --git a/e2e/screenshots/about-desktop.png b/e2e/screenshots/about-desktop.png deleted file mode 100644 index ee44e99..0000000 Binary files a/e2e/screenshots/about-desktop.png and /dev/null differ diff --git a/e2e/screenshots/about-mobile.png b/e2e/screenshots/about-mobile.png deleted file mode 100644 index dbfe110..0000000 Binary files a/e2e/screenshots/about-mobile.png and /dev/null differ diff --git a/e2e/screenshots/documentation-desktop.png b/e2e/screenshots/documentation-desktop.png new file mode 100644 index 0000000..3c4dc60 Binary files /dev/null and b/e2e/screenshots/documentation-desktop.png differ diff --git a/e2e/screenshots/documentation-mobile.png b/e2e/screenshots/documentation-mobile.png new file mode 100644 index 0000000..0ecfc40 Binary files /dev/null and b/e2e/screenshots/documentation-mobile.png differ diff --git a/e2e/screenshots/downloads-desktop.png b/e2e/screenshots/downloads-desktop.png index c899828..7c1e600 100644 Binary files a/e2e/screenshots/downloads-desktop.png and b/e2e/screenshots/downloads-desktop.png differ diff --git a/e2e/screenshots/downloads-mobile.png b/e2e/screenshots/downloads-mobile.png index 2c79aa5..82d175a 100644 Binary files a/e2e/screenshots/downloads-mobile.png and b/e2e/screenshots/downloads-mobile.png differ diff --git a/e2e/screenshots/home-desktop.png b/e2e/screenshots/home-desktop.png index 541c551..56bcbb2 100644 Binary files a/e2e/screenshots/home-desktop.png and b/e2e/screenshots/home-desktop.png differ diff --git a/e2e/screenshots/home-mobile.png b/e2e/screenshots/home-mobile.png index 6965277..5a6c767 100644 Binary files a/e2e/screenshots/home-mobile.png and b/e2e/screenshots/home-mobile.png differ diff --git a/e2e/screenshots/license-desktop.png b/e2e/screenshots/license-desktop.png deleted file mode 100644 index fecf276..0000000 Binary files a/e2e/screenshots/license-desktop.png and /dev/null differ diff --git a/e2e/screenshots/license-mobile.png b/e2e/screenshots/license-mobile.png deleted file mode 100644 index f66be7f..0000000 Binary files a/e2e/screenshots/license-mobile.png and /dev/null differ diff --git a/e2e/screenshots/news-desktop.png b/e2e/screenshots/news-desktop.png deleted file mode 100644 index bbc654c..0000000 Binary files a/e2e/screenshots/news-desktop.png and /dev/null differ diff --git a/e2e/screenshots/news-mobile.png b/e2e/screenshots/news-mobile.png deleted file mode 100644 index 09a5ab9..0000000 Binary files a/e2e/screenshots/news-mobile.png and /dev/null differ diff --git a/e2e/screenshots/quick-manual-desktop.png b/e2e/screenshots/quick-manual-desktop.png deleted file mode 100644 index 9ed6dd1..0000000 Binary files a/e2e/screenshots/quick-manual-desktop.png and /dev/null differ diff --git a/e2e/screenshots/quick-manual-mobile.png b/e2e/screenshots/quick-manual-mobile.png deleted file mode 100644 index 86965ff..0000000 Binary files a/e2e/screenshots/quick-manual-mobile.png and /dev/null differ diff --git a/e2e/screenshots/screenshots-desktop.png b/e2e/screenshots/screenshots-desktop.png index 24fe1fa..e564df0 100644 Binary files a/e2e/screenshots/screenshots-desktop.png and b/e2e/screenshots/screenshots-desktop.png differ diff --git a/e2e/screenshots/screenshots-mobile.png b/e2e/screenshots/screenshots-mobile.png index c7d2354..59445c9 100644 Binary files a/e2e/screenshots/screenshots-mobile.png and b/e2e/screenshots/screenshots-mobile.png differ diff --git a/e2e/screenshots/support-desktop.png b/e2e/screenshots/support-desktop.png index 417fbe7..fc07156 100644 Binary files a/e2e/screenshots/support-desktop.png and b/e2e/screenshots/support-desktop.png differ diff --git a/e2e/screenshots/support-mobile.png b/e2e/screenshots/support-mobile.png index dc21d43..4adb3c6 100644 Binary files a/e2e/screenshots/support-mobile.png and b/e2e/screenshots/support-mobile.png differ diff --git a/eslint.config.mjs b/eslint.config.mjs index bb2613e..d9b9a92 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -13,7 +13,6 @@ const eslintConfig = [ ...compat.extends('next/core-web-vitals', 'next/typescript', 'prettier'), { rules: { - 'react/jsx-no-target-blank': 'off', 'prefer-const': 'error', }, }, diff --git a/package.json b/package.json index 59c27b0..d2605bc 100644 --- a/package.json +++ b/package.json @@ -7,9 +7,9 @@ "author": { "name": "Volodymyr Vreshch", "email": "vreshch@gmail.com", - "url": "http://vreshch.com" + "url": "https://vreshch.com" }, - "homepage": "http://diffractwd.com", + "homepage": "https://diffractwd.com", "repository": { "type": "git", "url": "git+https://github.com/vreshch/diffractwd.com.git" @@ -29,7 +29,8 @@ "test:unit": "vitest run", "test:watch": "vitest", "test:e2e": "npx playwright test", - "test:e2e:ui": "npx playwright test --ui" + "test:e2e:ui": "npx playwright test --ui", + "verify": "npx tsc --noEmit && next lint && npm run build && vitest run" }, "dependencies": { "clsx": "^2.1.1", diff --git a/public/hero.jpg b/public/hero.jpg new file mode 100644 index 0000000..927924b Binary files /dev/null and b/public/hero.jpg differ diff --git a/public/screenshots/screenshot1_mini.jpg b/public/screenshots/screenshot1_mini.jpg index fddc989..81d041b 100644 Binary files a/public/screenshots/screenshot1_mini.jpg and b/public/screenshots/screenshot1_mini.jpg differ diff --git a/public/screenshots/screenshot2_mini.jpg b/public/screenshots/screenshot2_mini.jpg index 0ffe885..b040307 100644 Binary files a/public/screenshots/screenshot2_mini.jpg and b/public/screenshots/screenshot2_mini.jpg differ diff --git a/public/screenshots/screenshot3_mini.jpg b/public/screenshots/screenshot3_mini.jpg index 2e578a1..b192473 100644 Binary files a/public/screenshots/screenshot3_mini.jpg and b/public/screenshots/screenshot3_mini.jpg differ diff --git a/public/screenshots/screenshot4_mini.jpg b/public/screenshots/screenshot4_mini.jpg index dc39a4c..05e0ea6 100644 Binary files a/public/screenshots/screenshot4_mini.jpg and b/public/screenshots/screenshot4_mini.jpg differ diff --git a/src/app/about/page.tsx b/src/app/about/page.tsx deleted file mode 100644 index 63ce294..0000000 --- a/src/app/about/page.tsx +++ /dev/null @@ -1,70 +0,0 @@ -import type { Metadata } from 'next'; -import Link from 'next/link'; - -export const metadata: Metadata = { - title: 'DiffractWD - About', -}; - -export default function AboutPage() { - return ( -
-

About

-
-
-
-
Supporting file formats
-
- Powder Pattern Import: Bruker/Siemens RAW Files - (*.raw), Philips RD Files (*.rd), Scintag ARD Files (*.ard), Sietronics CPI Files - (*.cpi), Riet7 DAT Files (*.dat), DBW Files (*.dbw), GSAS Files (*.gsas), Jade MDI Files - (*.mdi), Rigaku RIG Files (*.rig), Philips UDF Files(*.udf), UXD Files (*.uxd), XDA - Files (*.xda), XDD Files (*.xdd), XY Files (*.xy) -
-
- Molecule Import: ShelX File (*.ins,*.res), - Crystallography Information File (*.cif) -
-
-
-
Main functions
-
+ Multiple Powder Pattern and Molecule Import
-
+ Symulation of Powder Patterns based on single crystal data
-
+ Background subtraction, Smoth, and Scale of Powder Patterns
-
+ Working area properties change (Grids, Tics, Axis Labels,..)
-
+ Graph properties change (Color,...)
-
+ Picture export to *.wmf
-
+ Auto Update and Error Report modules
-
-
-
System requirements
-
Windows XP, Vista, Windows 7
-
Microsoft .NET Framework 2.0 need to be installed
-
-
-
Technical details
-
Program Written in C#, pure object orientated language.
-
- Core is base on Sharp Develop, which were proved can be easily scale up. -
-
Program can be easily extended through Addin system.
-
- Licensed under terms of  - - BSD License. - -
-
-
-
Modules included
-
ICSharpCode.Core (Sharp Develop Application Core)
-
ICSharpCode.AddInManager (Sharp Develop AddInManager)
-
ICSharpCode.SharpZipLib,Ionic.Zip (Zip support Library)
-
log4net (Log support)
-
PowDLL (Powder Pattern Import)
-
WeifenLuo.WinFormsUI.Docking (Advanced Windows Docking)
-
ZedGraph (Graph Functionality)
-
-
-
- ); -} diff --git a/src/app/documentation/page.tsx b/src/app/documentation/page.tsx new file mode 100644 index 0000000..64a8f49 --- /dev/null +++ b/src/app/documentation/page.tsx @@ -0,0 +1,366 @@ +import type { Metadata } from 'next'; +import Image from 'next/image'; + +export const metadata: Metadata = { + title: 'DiffractWD - Documentation', +}; + +const steps = [ + { + number: 1, + title: 'Import your files', + description: + 'Import powder patterns and crystal structures. Supported formats: *.raw, *.rd, *.ard, *.cpi, *.dat, *.dbw, *.gsas, *.mdi, *.rig, *.udf, *.uxd, *.xda, *.xdd, *.xy, ShelX (*.ins, *.res), CIF (*.cif).', + image: '/manual/help1.jpg', + }, + { + number: 2, + title: 'Adjust visibility', + description: + 'Change visibility of patterns and perform all necessary comparisons between experimental and simulated data.', + image: '/manual/help2.jpg', + }, + { + number: 3, + title: 'Customize properties', + description: + 'Fine-tune 2-theta range, FWHM of profiles, and curve colors. Adjust grids, axis labels, and work area properties.', + image: '/manual/help3.jpg', + }, + { + number: 4, + title: 'Export your results', + description: + 'Copy the image to clipboard or export to WMF format for publication-quality figures.', + image: '/manual/help4.jpg', + }, +]; + +const fileFormats = [ + { + category: 'Powder Patterns', + formats: 'RAW, RD, ARD, CPI, DAT, DBW, GSAS, MDI, RIG, UDF, UXD, XDA, XDD, XY', + }, + { category: 'Crystal Structures', formats: 'ShelX (INS, RES), CIF' }, +]; + +const capabilities = [ + { + text: 'Multiple powder pattern and molecule import', + icon: ( + + + + + ), + }, + { + text: 'Powder pattern simulation from single crystal data', + icon: ( + + + + ), + }, + { + text: 'Background subtraction, smoothing, and scaling', + icon: ( + + + + + + + + ), + }, + { + text: 'Customizable work area (grids, tics, axis labels)', + icon: ( + + + + + ), + }, + { + text: 'Graph color and style customization', + icon: ( + + + + + + ), + }, + { + text: 'Image export to WMF format', + icon: ( + + + + + ), + }, + { + text: 'Auto-update and error reporting', + icon: ( + + + + + ), + }, +]; + +const modules = [ + { name: 'ICSharpCode.Core', description: 'Application core framework' }, + { name: 'ICSharpCode.AddInManager', description: 'Add-in management' }, + { name: 'ICSharpCode.SharpZipLib', description: 'Archive support' }, + { name: 'log4net', description: 'Logging' }, + { name: 'PowDLL', description: 'Powder pattern import' }, + { name: 'WeifenLuo.WinFormsUI.Docking', description: 'Window docking' }, + { name: 'ZedGraph', description: 'Graph rendering' }, +]; + +export default function DocumentationPage() { + return ( +
+
+
+

Documentation

+

+ Learn how to use DiffractWD for powder diffraction analysis. +

+
+
+ +
+ + {/* Quick Start */} +
+
+
+ + + +
+

+ Quick Start +

+
+
+ {steps.map((step) => ( +
+
+ {`Step +
+
+
+ + Step {step.number} + +

+ {step.title} +

+
+

+ {step.description} +

+
+
+ ))} +
+
+ + {/* File Formats */} +
+
+
+ + + + +
+

+ Supported File Formats +

+
+
+ + + + + + + + + {fileFormats.map((row) => ( + + + + + ))} + +
+ Category + + Formats +
+ {row.category} + + {row.formats} +
+
+
+ + {/* Capabilities */} +
+
+
+ + + + +
+

+ Capabilities +

+
+
+ {capabilities.map((cap) => ( +
+
+ {cap.icon} +
+ {cap.text} +
+ ))} +
+
+ + {/* System & Technical */} +
+
+
+
+ + + + +
+

+ System Requirements +

+
+
+
    +
  • + + Windows XP, Vista, or Windows 7 +
  • +
  • + + Microsoft .NET Framework 2.0 +
  • +
+
+
+ +
+
+
+ + + +
+

+ Technical Details +

+
+
+
    +
  • + + Written in C# (object-oriented) +
  • +
  • + + Built on SharpDevelop application core +
  • +
  • + + Extensible through add-in system +
  • +
  • + + MIT License +
  • +
+
+
+
+ + {/* Modules */} +
+
+
+ + + + + +
+

+ Included Modules +

+
+
+ + + + + + + + + {modules.map((mod) => ( + + + + + ))} + +
+ Module + + Purpose +
+ {mod.name} + + {mod.description} +
+
+
+
+
+ ); +} diff --git a/src/app/downloads/page.tsx b/src/app/downloads/page.tsx index c3c96fa..957f34d 100644 --- a/src/app/downloads/page.tsx +++ b/src/app/downloads/page.tsx @@ -1,82 +1,146 @@ import type { Metadata } from 'next'; -import Image from 'next/image'; import Link from 'next/link'; export const metadata: Metadata = { title: 'DiffractWD - Downloads', }; +const downloads = [ + { + title: 'Installation Program', + description: 'Recommended. Includes installer with all dependencies.', + href: '/downloads/diffractwd.exe', + type: 'EXE', + recommended: true, + icon: ( + + + + + + ), + }, + { + title: 'Compressed Binaries', + description: 'Portable version. Extract and run without installation.', + href: '/downloads/diffractwd_bin.zip', + type: 'ZIP', + recommended: false, + icon: ( + + + + + + ), + }, + { + title: 'Source Code', + description: 'Full C# source code. Build with Visual Studio or SharpDevelop.', + href: '/downloads/diffractwd_src.zip', + type: 'ZIP', + recommended: false, + icon: ( + + + + + ), + }, +]; + export default function DownloadsPage() { return (
-

Downloads

-
-
-
-
DiffractWD 1.30
-
-
- - Download Program - Installation program - +
+
+
+ + Latest stable release +
+

Downloads

+

+ DiffractWD v1.30 — choose the package that works best for you. +

+
+
+ +
+ +
+ {downloads.map((dl) => ( + + {dl.recommended && ( + + Recommended + + )} +
+ {dl.icon}
-
- - Download Compressed Binaries - Compressed binaries - +
+ {dl.type}
-
- - Download Source Files - Source files - +

+ {dl.title} +

+

+ {dl.description} +

+ + ))} +
+ +
+
+
+
+ + + + +
+

+ System Requirements +

+
+
    +
  • + + Windows XP, Vista, or Windows 7 +
  • +
  • + + Microsoft .NET Framework 2.0 +
  • +
+
+
+
+
+ + +
-
-
-
-
Requirements
-
Windows XP, Vista or Windows 7
-
Microsoft .NET Framework 2.0
-
-
-
License
-
- DiffractWD is totally free and licensed under the{' '} - - BSD License - - . -
-
+

License

+
+

+ DiffractWD is free and open source, licensed under the MIT License. See the full + license text on the{' '} + + Support + {' '} + page. +

+
+ ); diff --git a/src/app/globals.css b/src/app/globals.css index 3b394ea..fb6f9b3 100644 --- a/src/app/globals.css +++ b/src/app/globals.css @@ -2,25 +2,45 @@ @source "../**/*.{ts,tsx}"; +@custom-variant dark (&:where(.dark, .dark *)); + @theme { - --color-primary: #2b6892; - --color-primary-light: #4a97cc; - --color-heading: #182c60; - --color-sidebar-hover: #f5f5f5; - --color-sidebar-border: #0275d8; - --color-subtitle: #373a3c; + --color-primary: #1e3a5f; + --color-primary-light: #2b6892; + --color-accent: #2563eb; + --color-accent-light: #60a5fa; + --color-surface: #eef2f7; + --color-surface-alt: #e3e9f1; + --color-surface-hover: #dce3ed; + --color-heading: #1e3a5f; + --color-body: #374a60; + --color-muted: #5a6d82; + --color-border: #c2cdd9; + --color-dark-bg: #0f172a; + --color-dark-surface: #1e293b; + --color-dark-surface-alt: #334155; + --color-dark-text: #f1f5f9; + --color-dark-text-secondary: #94a3b8; + --color-dark-border: #334155; } * { box-sizing: border-box; } -html, +html { + scroll-behavior: smooth; +} + +html { + overflow-y: scroll; +} + body { padding: 0; margin: 0; - overflow-y: scroll; font-family: + Inter, -apple-system, BlinkMacSystemFont, Segoe UI, @@ -32,6 +52,14 @@ body { Droid Sans, Helvetica Neue, sans-serif; + color: var(--color-body); + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.dark body { + color: var(--color-dark-text); + background-color: var(--color-dark-bg); } a { diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 1800d3c..dcd0290 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -1,5 +1,5 @@ import type { Metadata } from 'next'; -import { Sidebar } from '@/components/sidebar'; +import { Navigation } from '@/components/navigation'; import './globals.css'; export const metadata: Metadata = { @@ -12,29 +12,33 @@ export const metadata: Metadata = { export default function RootLayout({ children }: { children: React.ReactNode }) { return ( - - -
-
-
-
-

Diffract WD

-

- :: by Vreshch :: -

-
-
-
- -
-
{children}
-
-
-
- © Vreshch V.D. {new Date().getFullYear()} -
+ + +