diff --git a/flake.nix b/flake.nix index 4656ecb..d0d10a9 100644 --- a/flake.nix +++ b/flake.nix @@ -75,7 +75,7 @@ default = pkgs.mkShell { buildInputs = with pkgs; [ air # live go app reloading - sass + dart-sass go gopls gotools diff --git a/web/dashboard.templ b/web/dashboard.templ index f3d0da4..08f8bd0 100644 --- a/web/dashboard.templ +++ b/web/dashboard.templ @@ -1,12 +1,18 @@ package web templ dashboard() { - Home -

Hello World!

- - -
- + Dashboard +
+
+
+
+

Back

+
+ +
+
+ +
+
- } diff --git a/web/sass/catppuccin.scss b/web/sass/catppuccin.scss new file mode 100644 index 0000000..f88a5c4 --- /dev/null +++ b/web/sass/catppuccin.scss @@ -0,0 +1,114 @@ +$palette: ( + "latte": ( + "rosewater": #dc8a78, + "flamingo": #dd7878, + "pink": #ea76cb, + "mauve": #8839ef, + "red": #d20f39, + "maroon": #e64553, + "peach": #fe640b, + "yellow": #df8e1d, + "green": #40a02b, + "teal": #179299, + "sky": #04a5e5, + "sapphire": #209fb5, + "blue": #1e66f5, + "lavender": #7287fd, + "text": #4c4f69, + "subtext1": #5c5f77, + "subtext0": #6c6f85, + "overlay2": #7c7f93, + "overlay1": #8c8fa1, + "overlay0": #9ca0b0, + "surface2": #acb0be, + "surface1": #bcc0cc, + "surface0": #ccd0da, + "base": #eff1f5, + "mantle": #e6e9ef, + "crust": #dce0e8 + ), + "frappe": ( + "rosewater": #f2d5cf, + "flamingo": #eebebe, + "pink": #f4b8e4, + "mauve": #ca9ee6, + "red": #e78284, + "maroon": #ea999c, + "peach": #ef9f76, + "yellow": #e5c890, + "green": #a6d189, + "teal": #81c8be, + "sky": #99d1db, + "sapphire": #85c1dc, + "blue": #8caaee, + "lavender": #babbf1, + "text": #c6d0f5, + "subtext1": #b5bfe2, + "subtext0": #a5adce, + "overlay2": #949cbb, + "overlay1": #838ba7, + "overlay0": #737994, + "surface2": #626880, + "surface1": #51576d, + "surface0": #414559, + "base": #303446, + "mantle": #292c3c, + "crust": #232634 + ), + "macchiato": ( + "rosewater": #f4dbd6, + "flamingo": #f0c6c6, + "pink": #f5bde6, + "mauve": #c6a0f6, + "red": #ed8796, + "maroon": #ee99a0, + "peach": #f5a97f, + "yellow": #eed49f, + "green": #a6da95, + "teal": #8bd5ca, + "sky": #91d7e3, + "sapphire": #7dc4e4, + "blue": #8aadf4, + "lavender": #b7bdf8, + "text": #cad3f5, + "subtext1": #b8c0e0, + "subtext0": #a5adcb, + "overlay2": #939ab7, + "overlay1": #8087a2, + "overlay0": #6e738d, + "surface2": #5b6078, + "surface1": #494d64, + "surface0": #363a4f, + "base": #24273a, + "mantle": #1e2030, + "crust": #181926 + ), + "mocha": ( + "rosewater": #f5e0dc, + "flamingo": #f2cdcd, + "pink": #f5c2e7, + "mauve": #cba6f7, + "red": #f38ba8, + "maroon": #eba0ac, + "peach": #fab387, + "yellow": #f9e2af, + "green": #a6e3a1, + "teal": #94e2d5, + "sky": #89dceb, + "sapphire": #74c7ec, + "blue": #89b4fa, + "lavender": #b4befe, + "text": #cdd6f4, + "subtext1": #bac2de, + "subtext0": #a6adc8, + "overlay2": #9399b2, + "overlay1": #7f849c, + "overlay0": #6c7086, + "surface2": #585b70, + "surface1": #45475a, + "surface0": #313244, + "base": #1e1e2e, + "mantle": #181825, + "crust": #11111b + ) +); diff --git a/web/sass/catpuccin.scss b/web/sass/catpuccin.scss deleted file mode 100644 index af6f287..0000000 --- a/web/sass/catpuccin.scss +++ /dev/null @@ -1,115 +0,0 @@ - -///latte -$latte-base: #eff1f5; -$latte-text: #4c4f69; -$latte-pink: #ea76cb; -$latte-mauve: #8839ef; -$latte-red: #d20f39; -$latte-maroon: #e64553; -$latte-peach: #fe640b; -$latte-yellow: #df8e1d; -$latte-green: #40a02b; -$latte-teal: #179299; -$latte-sky: #04a5e5; -$latte-sapphire: #209fb5; -$latte-blue: #1e66f5; -$latte-lavender: #7287fd; -$latte-text: #4c4f69; -$latte-subtext1: #5c5f77; -$latte-subtext0: #6c6f85; -$latte-overlay2: #7c7f93; -$latte-overlay1: #8c8fa1; -$latte-overlay0: #9ca0b0; -$latte-surface2: #acb0be; -$latte-surface1: #bcc0cc; -$latte-surface0: #ccd0da; -$latte-base: #eff1f5; -$latte-mantle: #e6e9ef; -$latte-crust: #dce0e8; -///frappé -$frappe-base: #303446; -$frappe-text: #c6d0f5; -$frappe-pink: #f4b8e4; -$frappe-mauve: #ca9ee6; -$frappe-red: #e78284; -$frappe-maroon: #ea999c; -$frappe-peach: #ef9f76; -$frappe-yellow: #e5c890; -$frappe-green: #a6d189; -$frappe-teal: #81c8be; -$frappe-sky: #99d1db; -$frappe-sapphire: #85c1dc; -$frappe-blue: #8caaee; -$frappe-lavender: #babbf1; -$frappe-text: #c6d0f5; -$frappe-subtext1: #b5bfe2; -$frappe-subtext0: #a5adce; -$frappe-overlay2: #949cbb; -$frappe-overlay1: #838ba7; -$frappe-overlay0: #737994; -$frappe-surface2: #626880; -$frappe-surface1: #51576d; -$frappe-surface0: #414559; -$frappe-base: #303446; -$frappe-mantle: #292c3c; -$frappe-crust: #232634; -///macchiato -$macchiato-base: #24273a; -$macchiato-text: #cad3f5; -$macchiato-pink: #f5bde6; -$macchiato-mauve: #c6a0f6; -$macchiato-red: #ed8796; -$macchiato-maroon: #ee99a0; -$macchiato-peach: #f5a97f; -$macchiato-yellow: #eed49f; -$macchiato-green: #a6da95; -$macchiato-teal: #8bd5ca; -$macchiato-sky: #91d7e3; -$macchiato-sapphire: #7dc4e4; -$macchiato-blue: #8aadf4; -$macchiato-lavender: #b7bdf8; -$macchiato-text: #cad3f5; -$macchiato-subtext1: #b8c0e0; -$macchiato-subtext0: #a5adcb; -$macchiato-overlay2: #939ab7; -$macchiato-overlay1: #8087a2; -$macchiato-overlay0: #6e738d; -$macchiato-surface2: #5b6078; -$macchiato-surface1: #494d64; -$macchiato-surface0: #363a4f; -$macchiato-base: #24273a; -$macchiato-mantle: #1e2030; -$macchiato-crust: #181926; -///mocha -$mocha-base: #1e1e2e; -$mocha-text: #cdd6f4; -$mocha-pink: #f5c2e7; -$mocha-mauve: #cba6f7; -$mocha-red: #f38ba8; -$mocha-maroon: #eba0ac; -$mocha-peach: #fab387; -$mocha-yellow: #f9e2af; -$mocha-green: #a6e3a1; -$mocha-teal: #94e2d5; -$mocha-sky: #89dceb; -$mocha-sapphire: #74c7ec; -$mocha-blue: #89b4fa; -$mocha-lavender: #b4befe; -$mocha-text: #cdd6f4; -$mocha-subtext1: #bac2de; -$mocha-subtext0: #a6adc8; -$mocha-overlay2: #9399b2; -$mocha-overlay1: #7f849c; -$mocha-overlay0: #6c7086; -$mocha-surface2: #585b70; -$mocha-surface1: #45475a; -$mocha-surface0: #313244; -$mocha-base: #1e1e2e; -$mocha-mantle: #181825; -$mocha-crust: #11111b; - - - -/// scss file using the themes from -/// Catppuccin : https://github.com/catppuccin/catppuccin -/// Claquettes diff --git a/web/sass/nav.scss b/web/sass/nav.scss index f35dcba..4ffd6b0 100644 --- a/web/sass/nav.scss +++ b/web/sass/nav.scss @@ -1,15 +1,21 @@ header { - background-color: $nav-bg; + background-color: var(--#{$prefix}-nav-bg); height: 30px; width: 100%; margin-top: 10px; margin-bottom: 10px; } nav { - background-color: $nav-bg; display: flex; flex-direction: column; + a#logo-a { + font-size: 12pt; + pointer-events: none; + color: var(--#{$prefix}-nav-color); + background-color: var(--#{$prefix}-nav-logo-bg); + } + ul { margin: 0; padding: 0; @@ -17,26 +23,26 @@ nav { padding-left: 0; } li { - margin-top: 10px; - margin-bottom: 10px; + margin-top: 8px; + margin-bottom: 8px; } a.active { pointer-events: none; - background-color: $nav-active-bg; - color: $nav-active-color; + background-color: var(--#{$prefix}-nav-active-bg); + color: var(--#{$prefix}-nav-active-color); } a { transition: background-color $hl-trn-spd ease-in, color $hl-trn-spd ease-in; border-radius: 5px; text-align: center; - padding: 12px 0px; + padding: 6px 0px; display: inline-block; cursor: pointer; - color: $nav-color; + color: var(--#{$prefix}-nav-color); width: 100%; text-decoration: none; } a:hover { - background-color: $nav-hover; + background-color: var(--#{$prefix}-nav-hover); } } diff --git a/web/sass/site.scss b/web/sass/site.scss index bed97e1..0b45722 100644 --- a/web/sass/site.scss +++ b/web/sass/site.scss @@ -1,37 +1,52 @@ -@import 'catpuccin'; +$prefix: pf; + +@import "variables"; // highlight transition speed $hl-trn-spd: 0.2s; -$bg: $latte-base; -$nav-bg: $latte-crust; -$nav-color: $latte-text; -$nav-hover: $latte-surface2; -$nav-active-bg: $latte-mauve; -$nav-active-color: $latte-base; -$green: $latte-green; - @import 'mixins'; @import 'nav'; + body { - background-color: $latte-base; + background-color: var(--#{$prefix}-bg); } -body.dark-mode { - $bg: $macchiato-base; - $nav-bg: $macchiato-crust; - $green: $macchiato-green; +w-full { + width: 100%; +} +.d-flex { + display: flex; +} +.my-auto { + margin-left: auto; + margin-right: auto; +} +.m-0 { + margin: 0px; } -div#below-header { - display:flex; +.container { + width: 100%; + margin-right: auto; + margin-left: auto; +} + +.row { + display: flex; + flex-wrap: wrap; +} + +.col { + box-sizing: border-box; } div#left-col { width: 15vw; padding: 10px; + background-color: var(--#{$prefix}-nav-bg); } div#main-body-content { @@ -51,4 +66,5 @@ div#main-body-content.htmx-added { div#right-col { width: 15vw; padding: 10px; + background-color: var(--#{$prefix}-nav-bg); } diff --git a/web/sass/variables.scss b/web/sass/variables.scss new file mode 100644 index 0000000..716c4bd --- /dev/null +++ b/web/sass/variables.scss @@ -0,0 +1,27 @@ +@use 'catppuccin'; + +@each $flavor, $color in catppuccin.$palette { + body.#{$flavor} { + --#{$prefix}-bg: #{map-get($color, 'base')}; + --#{$prefix}-crust: #{map-get($color, 'crust')}; + --#{$prefix}-mantle: #{map-get($color, 'mantle')}; + --#{$prefix}-surface0: #{map-get($color, 'surface0')}; + + --#{$prefix}-nav-bg: #{map-get($color, 'crust')}; + --#{$prefix}-nav-color: #{map-get($color, 'text')}; + --#{$prefix}-nav-logo-bg: #{map-get($color, 'rosewater')}; + --#{$prefix}-nav-hover: #{map-get($color, 'surface2')}; + --#{$prefix}-nav-active-bg: #{map-get($color, 'mauve')}; + --#{$prefix}-nav-active-color: #{map-get($color, 'base')}; + } +} + +.c-s0 { + background-color: var(--#{$prefix}-surface0); +} +.c-crust { + background-color: var(--#{$prefix}-crust); +} +.c-mantle { + background-color: var(--#{$prefix}-mantle); +} diff --git a/web/templates/index.html b/web/templates/index.html index 54769f3..a33cd28 100644 --- a/web/templates/index.html +++ b/web/templates/index.html @@ -6,16 +6,18 @@ - +
-
+