summaryrefslogtreecommitdiff
path: root/old_stuff/src/layouts/Terminal.astro
diff options
context:
space:
mode:
authorKyren223 <contact@kyren.codes>2026-10-06 20:46:31 +0300
committerKyren223 <contact@kyren.codes>2026-10-06 20:46:31 +0300
commitba1be9573ef20d6424ae987257a1c727c47d4b53 (patch)
treee59ef56f19142215070d0516a9b3a110d15557b6 /old_stuff/src/layouts/Terminal.astro
parentea056b6e080669ba4b6f16c2757b4e2e88ea0553 (diff)
Initial setup for website rewrite
Diffstat (limited to 'old_stuff/src/layouts/Terminal.astro')
-rw-r--r--old_stuff/src/layouts/Terminal.astro69
1 files changed, 69 insertions, 0 deletions
diff --git a/old_stuff/src/layouts/Terminal.astro b/old_stuff/src/layouts/Terminal.astro
new file mode 100644
index 0000000..e13a8ac
--- /dev/null
+++ b/old_stuff/src/layouts/Terminal.astro
@@ -0,0 +1,69 @@
+---
+import "@styles/terminal.css";
+import Nav from "@components/Nav.astro";
+import Head from "@components/Head.astro";
+
+interface Props {
+ path: string;
+}
+
+// sm:w-[68.75vw] sm:h-[38vw] sm:p-[2.2vw] sm:text-[1.125vw] sm:border-[0.2vw] sm:border-solid" -->
+
+const { path: title } = Astro.props;
+---
+
+<!doctype html>
+<html lang="en">
+ <Head title=`${title}` description="My personal website" />
+ <body>
+ <main
+ class="w-[95vw] h-[97vh] p-[2.2svh] text-[3vw] mt-[10vw]
+ sm:w-[68.75vw] sm:h-[35vw] sm:p-[2.2vw] sm:text-[1.125vw] sm:border-[0.2vw] sm:border-solid sm:mt-[0vw]"
+ >
+ <Nav path={title} />
+ <slot />
+ </main>
+ </body>
+</html>
+<style>
+ main {
+ display: block;
+ position: absolute;
+ top: 50%;
+ left: 50%;
+ transform: translate(-50%, -50%);
+ background: var(--background);
+ font-weight: 300;
+ }
+</style>
+<script>
+ function setTheme(theme) {
+ const root = document.documentElement;
+
+ // Get current values from root
+ const computed = getComputedStyle(root);
+ const existingTheme = {};
+
+ const themeKeys = ["primary", "secondary", "accent", "extra", "text", "alt", "background", "font"];
+
+ themeKeys.forEach(key => {
+ existingTheme[key] = theme[key] ?? computed.getPropertyValue(`--${key}`).trim();
+ root.style.setProperty(`--${key}`, existingTheme[key]);
+ });
+
+ localStorage.setItem("theme", JSON.stringify(existingTheme));
+ }
+
+ function loadTheme() {
+ const savedTheme = localStorage.getItem("theme");
+ if (savedTheme) {
+ setTheme(JSON.parse(savedTheme));
+ }
+ }
+
+ // Attach to window so it's accessible globally
+ window.setTheme = setTheme;
+
+ // Load theme on page load
+ loadTheme();
+</script>