From 627aa23b26f38d8684ef68d0793ee23d207b4f39 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Thu, 5 Feb 2026 12:37:16 +1000 Subject: [PATCH 1/6] add tearforge + codeberg socials --- www/index.html | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/www/index.html b/www/index.html index 75391a0..da2909b 100644 --- a/www/index.html +++ b/www/index.html @@ -101,7 +101,7 @@
Bluesky
- +
  • @@ -115,6 +115,32 @@
  • +
  • + + + + + +
    Tearforge
    + +
  • + +
  • + + + + + + + + + + + +
    Codeberg
    + +
  • +
  • From 3fc3992958229b849423d21aacee77292ac83373 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Thu, 5 Feb 2026 12:37:28 +1000 Subject: [PATCH 2/6] fix socials layout --- www/css/ppty.css | 6 ------ www/css/style.css | 37 ++++++++++++++++++++----------------- www/index.html | 4 ++-- 3 files changed, 22 insertions(+), 25 deletions(-) diff --git a/www/css/ppty.css b/www/css/ppty.css index ecf388d..a540afe 100644 --- a/www/css/ppty.css +++ b/www/css/ppty.css @@ -3,12 +3,6 @@ /* =========================================================== */ .ppty { - /* display: block; */ - /* flex-direction: column; */ - /* justify-content: start; */ - /* align-content: center; */ - /* align-items: start; */ - overflow: hidden; font-family: monospace; diff --git a/www/css/style.css b/www/css/style.css index 67aec8a..a6f8bb6 100644 --- a/www/css/style.css +++ b/www/css/style.css @@ -46,45 +46,48 @@ main { } .socials-list { - /* display: flex; */ - /* flex-direction: column; */ - /* gap: 1ch; */ - /* align-content: centerr; */ - /* align-items: start; */ + margin: 0; + padding: 0; + width: 45ch; list-style: none; - width: 45ch; } .socials-item { + border-bottom: 1px solid var(--theme-icon-off); + padding: 8px 0; + display: flex; - align-items: start; gap: 12px; - padding: 8px 0; - border-bottom: 1px solid var(--theme-icon-off); } .socials-icon { width: 2ch; height: 2ch; - object-fit: contain; + flex: 0 0 40px; /* fixed column */ + object-fit: contain; } .socials-name { flex: 1 1 140px; - text-align: left; - min-width: 0; /* important to allow truncation if needed */ overflow: hidden; - text-overflow: ellipsis; white-space: nowrap; + + text-align: left; + text-overflow: ellipsis; } .socials-link { - flex: 0 0 auto; /* fixed link column width; adjust as needed */ - text-align: left; - color: var(--theme-link); - text-decoration: none; + min-width: 0; /* important to allow truncation if needed */ + + overflow: hidden; white-space: nowrap; + + text-align: left; + text-decoration: none; + text-overflow: ellipsis; + + color: var(--theme-link); } diff --git a/www/index.html b/www/index.html index da2909b..2c147d8 100644 --- a/www/index.html +++ b/www/index.html @@ -88,8 +88,8 @@
    -
    -
    +
    +
    From 44bff3affd66904ea45fe8530c2f6d95ac4bd957 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Fri, 6 Feb 2026 01:18:49 +1000 Subject: [PATCH 3/6] add theme-text-muted --- www/css/themes/core.css | 1 + www/css/themes/maps/rose-pine.css | 1 + 2 files changed, 2 insertions(+) diff --git a/www/css/themes/core.css b/www/css/themes/core.css index e8af746..661c075 100644 --- a/www/css/themes/core.css +++ b/www/css/themes/core.css @@ -1,6 +1,7 @@ .theme-base { color: var(--theme-base); } .theme-bg { color: var(--theme-bg); } .theme-text { color: var(--theme-text); } +.theme-text-muted { color: var(--theme-text-muted); } .theme-link { color: var(--theme-link); } .theme-icon { color: var(--theme-icon); } diff --git a/www/css/themes/maps/rose-pine.css b/www/css/themes/maps/rose-pine.css index a9fd520..36c7a68 100644 --- a/www/css/themes/maps/rose-pine.css +++ b/www/css/themes/maps/rose-pine.css @@ -21,6 +21,7 @@ Variables: --theme-base: var(--palette-rose-pine-base); --theme-bg: var(--palette-rose-pine-base); --theme-text: var(--palette-rose-pine-text); + --theme-text-muted: var(--palette-rose-pine-muted); --theme-link: var(--palette-rose-pine-foam); --theme-icon: var(--palette-rose-pine-pine); From ce335eb9154ea1445494fb1182ddada1ee034f77 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Fri, 6 Feb 2026 01:19:18 +1000 Subject: [PATCH 4/6] add debug arg to ppty --- www/js/main.js | 39 +++++++++++++++++++++++---------------- www/js/ppty/ppty.js | 13 ++++++++----- 2 files changed, 31 insertions(+), 21 deletions(-) diff --git a/www/js/main.js b/www/js/main.js index 0ab4243..f50c58b 100644 --- a/www/js/main.js +++ b/www/js/main.js @@ -3,7 +3,25 @@ import { PPTY } from "./ppty/lib.js"; main(); -function endBoot(root) { +function showMain(debug) { + document + .querySelector("main") + .animate( + [ + { visibility: "visible" }, + { visibility: "visible", opacity: 1 } + ], + { + duration: 400 * !debug, + fill: "forwards", + } + ); +} + +function endBoot(root, debug) { + if (root == null) + return showMain(); + const style = getComputedStyle(root); const paddingLeft = parseFloat(style.paddingLeft); const paddingRight = parseFloat(style.paddingRight); @@ -18,26 +36,15 @@ function endBoot(root) { const fade = root.animate( [{ opacity: 0 }], { - duration: 400, - delay: 3000, + duration: 400 * !debug, + delay: 3000 * !debug, fill: "forwards", } ); fade.onfinish = () => { root.remove(); - document - .querySelector("main") - .animate( - [ - { visibility: "visible" }, - { visibility: "visible", opacity: 1 } - ], - { - duration: 400, - fill: "forwards", - } - ); + showMain(); } } @@ -62,7 +69,7 @@ function main() { } ]) .onfinish(endBoot) - .run(); + .run(false); const canvas = document.querySelector("#bg-canvas"); canvas.setAttribute('width', window.innerWidth); diff --git a/www/js/ppty/ppty.js b/www/js/ppty/ppty.js index a471e3f..9b71e6c 100644 --- a/www/js/ppty/ppty.js +++ b/www/js/ppty/ppty.js @@ -8,8 +8,8 @@ function animDelta(anim) { class PPTY { #root; #blockOptions; - #startCallback = _ => { }; - #finishCallback = _ => { }; + #startCallback = (root, debug) => { }; + #finishCallback = (root, debug) => { }; constructor(root, blockOptions) { this.#root = root; @@ -26,10 +26,13 @@ class PPTY { return this; } - run() { + run(debug = false) { var delay = 0; - this.#startCallback(this.#root); + this.#startCallback(this.#root, debug); + + if (debug) + return this.#finishCallback(this.#root, debug); this.#root .querySelectorAll(".ppty-block") @@ -120,7 +123,7 @@ class PPTY { setTimeout(() => { command.style.borderRightColor = "transparent"; if (index == blocks.length - 1) - this.#finishCallback(this.#root); + this.#finishCallback(this.#root, debug); }, delay); }); } From 795d62154b7a77cf9b3231db098767db7185f8b6 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Fri, 6 Feb 2026 01:19:58 +1000 Subject: [PATCH 5/6] increase initial commandDelay to account for average page compilation+loading --- www/js/main.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/www/js/main.js b/www/js/main.js index f50c58b..5d6820e 100644 --- a/www/js/main.js +++ b/www/js/main.js @@ -56,7 +56,7 @@ function main() { { cps: 12, promptDelay: 0.5, - commandDelay: 0.7, + commandDelay: 2.4, outputDelay: 1, blinkTime: 0.6, }, From bafb0c07b1687d458ee9040d9ea4f092f4843618 Mon Sep 17 00:00:00 2001 From: Emile Clark-Boman Date: Fri, 6 Feb 2026 01:20:27 +1000 Subject: [PATCH 6/6] uh no idea, i just a bunch probably... --- www/css/style.css | 75 +++++++++++++++++-- www/index.html | 185 ++++++++++++++++++++++++++-------------------- 2 files changed, 174 insertions(+), 86 deletions(-) diff --git a/www/css/style.css b/www/css/style.css index a6f8bb6..424539d 100644 --- a/www/css/style.css +++ b/www/css/style.css @@ -1,10 +1,23 @@ +html, body { + inset: 0 0 0 0; + margin: 0; + padding: 0; + width: 100%; + height: 100%; +} + body { - background-color: var(--theme-bg); + min-height: 100%; } main { visibility: hidden; opacity: 0; + + width: 100%; + height: 100%; + + z-index: 0; } #bg-canvas { @@ -20,7 +33,7 @@ main { .centered-container { position: absolute; inset: 0 0 0 0; - margin: auto; + margin: auto auto; display: flex; } @@ -35,8 +48,8 @@ main { border: 0.5ch solid var(--theme-tty-border); padding: 20px; - width: auto; - height: auto; + /* width: auto; */ + /* height: auto; */ background-color: var(--theme-bg); color: var(--theme-text); @@ -45,6 +58,56 @@ main { font-size: 1.5em } +#boot-ppty { + z-index: 1; +} + +#frames { + /* border-box means padding+margin are included in width+height */ + box-sizing: border-box; + width: 100%; + height: 100%; + padding: 5% 10% 0% 5%; + + display: grid; + grid-template-areas: + "whoami butterfly" + "socials butterfly" + "disclaimer disclaimer" + ; + grid-template-columns: 1fr 1fr; +} + +#whoami { + grid-area: whoami; + + width: 100%; + height: 100%; + + display: flex; + align-items: center; + justify-content: start; + gap: 2ch; +} + +#whoami .avatar { + height: 18ch; + display: block; /* avoid inline-image gaps */ + object-fit: scale-down; +} + +#socials { + grid-area: socials; +} + +#butterfly { + grid-area: butterfly; +} + +#disclaimer { + grid-area: disclaimer; +} + .socials-list { margin: 0; padding: 0; @@ -71,7 +134,7 @@ main { } .socials-name { - flex: 1 1 140px; + flex: 1 1 9ch; overflow: hidden; white-space: nowrap; @@ -89,5 +152,5 @@ main { text-decoration: none; text-overflow: ellipsis; - color: var(--theme-link); + color: var(--theme-tty-command); } diff --git a/www/index.html b/www/index.html index 2c147d8..6297589 100644 --- a/www/index.html +++ b/www/index.html @@ -1,5 +1,4 @@ - @@ -20,31 +19,24 @@ - - - + - -