annotate mrjunejune/test/snapshots/blog.snapshot @ 258:60a876c4587a

[ui] Add semantic primitive ownership Build a layered Zenbu token and sizing system, make authored controls use native-underneath primitives, migrate mrjunejune without imposing visual surfaces, and document/enforce HTML ownership in the catalog and wiki. Co-authored-by: Copilot <[email protected]>
author MrJuneJune <me@mrjunejune.com>
date Wed, 05 Aug 2026 05:25:40 -0700
parents 30c2196d03d4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
1 <!doctype html>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
2 <html lang="en">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
3 <head>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
4 <meta charset="UTF-8">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
6 <meta name="theme-color" content="#f7f3e8">
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
7 <link rel="icon" type="image/svg+xml" href="/public/epi_all_colors.svg">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
8 <link rel="manifest" href="/public/manifest.json">
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
9 <link rel="apple-touch-icon" href="/public/epi_all_colors.svg">
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
10
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
11 <link rel="preload" href="/public/fonts/Roboto-Regular.ttf" as="font" crossorigin>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
12 <link rel="preload" href="/public/fonts/Roboto-Thin.ttf"as="font" crossorigin>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
13
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
14 <!-- <link rel="preload" href="/public/fonts/atkinson-regular.woff" as="font" type="font/woff" crossorigin> -->
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
15 <!-- <link rel="preload" href="/public/fonts/atkinson-bold.woff" as="font" type="font/woff" crossorigin> -->
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
16
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
17 <!-- <link rel="preload" href="/public/fonts/more-sugar.extras.otf" as="font" type="font/otf" crossorigin> -->
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
18 <link rel="preload" href="/public/fonts/more-sugar.regular.otf" as="font" type="font/otf" crossorigin>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
19 <link rel="preload" href="/public/fonts/more-sugar.thin.otf" as="font" type="font/otf" crossorigin>
158
1c0878eb17de [MrJuneJune] Readme file gets compiled in server side.
June Park <parkjune1995@gmail.com>
parents: 145
diff changeset
20 <link rel="preload" href="/public/epi_all_colors.svg" as="image">
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
21
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
22 <link rel="stylesheet" href="/public/design-system/styles/tokens.css" />
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
23 <link rel="stylesheet" href="/public/design-system/styles/themes.css" />
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
24 <link rel="preload" href="/base.css" as="style" />
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
25 <link rel="stylesheet" href="/base.css" />
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
26 <link rel="stylesheet" href="/public/design-system/styles/components.css" />
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
27 <script
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
28 type="module"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
29 src="/public/design-system/components/index.js"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
30 ></script>
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
31
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
32 <script src="/public/pwa-register.js" defer></script>
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
33
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
34 </head>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
35 <body>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
36 <style>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
37 :root {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
38 --header-background: var(--white);
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
39 --header-color: var(--black);
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
40 --link-hover-accent: var(--awesome);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
41 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
42
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
43 #themeControl {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
44 position: fixed;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
45 top: 20px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
46 left: 20px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
47 z-index: 1000;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
48 transition: transform 0.2s ease;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
49 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
50
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
51 #themeControl:hover {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
52 transform: scale(1.05);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
53 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
54
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
55 #themeToggle {
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
56 display: flex;
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
57 flex-direction: column;
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
58 padding: 0;
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
59 border: 0;
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
60 background: transparent;
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
61 }
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
62
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
63 /* Professional header */
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
64 header {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
65 margin: auto;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
66 padding: 1.5em 1em;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
67 font-family: "More", sans-serif;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
68 width: 720px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
69 max-width: calc(100% - 2em);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
70 text-align: center;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
71 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
72
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
73 header h1 {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
74 margin: 0;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
75 font-size: 1.8em;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
76 font-weight: 700;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
77 letter-spacing: -0.5px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
78 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
79
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
80 header h1 a {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
81 text-decoration: none;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
82 color: var(--header-color);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
83 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
84
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
85 header h1 a::before {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
86 display: none;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
87 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
88
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
89 /* Mobile responsiveness */
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
90 @media (max-width: 720px) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
91 #themeControl {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
92 top: 15px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
93 left: 15px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
94 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
95
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
96 header {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
97 padding: 1em;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
98 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
99
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
100 header h1 {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
101 font-size: 1.5em;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
102 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
103 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
104
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
105 @media (max-width: 480px) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
106 #themeControl {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
107 top: 10px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
108 left: 10px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
109 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
110
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
111 #themeToggle img {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
112 height: 40px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
113 width: 40px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
114 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
115
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
116 header h1 {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
117 font-size: 1.3em;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
118 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
119 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
120
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
121 #logo {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
122 width: 300px;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
123 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
124
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
125 /* 1. DEFINE THE DEFAULTS (Light Mode) */
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
126 :root {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
127 --logo-invert: invert(0);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
128 --epi-grayscale: grayscale(0) brightness(1);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
129 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
130
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
131 /* 2. MANUAL DARK OVERRIDE */
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
132 html[data-zen-theme="ink"] {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
133 --logo-invert: invert(1);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
134 --epi-grayscale: grayscale(1);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
135 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
136
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
137 /* 3. MANUAL LIGHT OVERRIDE */
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
138 html[data-zen-theme="paper"] {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
139 --logo-invert: invert(0);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
140 --epi-grayscale: brightness(2.9) grayscale(1);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
141 }
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
142
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
143 html[data-zen-theme="playful"] {
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
144 --logo-invert: invert(0);
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
145 --epi-grayscale: saturate(1.25);
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
146 }
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
147
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
148 /* 4. SYSTEM PREFERENCE */
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
149 @media (prefers-color-scheme: dark) {
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
150 :root:not([data-zen-theme]) {
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
151 --logo-invert: invert(1);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
152 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
153 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
154
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
155 /* 5. APPLY TO ELEMENTS */
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
156 #logo {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
157 -webkit-filter: var(--logo-invert);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
158 filter: var(--logo-invert);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
159 transition: filter 0.3s ease;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
160 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
161
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
162 .epi-logo {
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
163 -webkit-filter: var(--epi-grayscale);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
164 filter: var(--epi-grayscale);
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
165 transition: filter 0.3s ease;
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
166 }
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
167 </style>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
168
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
169 <zen-button id="themeControl" appearance="plain" size="xl">
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
170 <button
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
171 id="themeToggle"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
172 type="button"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
173 aria-label="Change site theme"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
174 >
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
175 <img
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
176 id="epiChan"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
177 class="epi-logo"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
178 alt=""
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
179 src="/public/epi_all_colors.svg"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
180 height="50"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
181 width="50"
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
182 >
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
183 <span id="themeName" class="zen-visually-hidden" aria-live="polite">Auto</span>
256
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
184 </button>
30c2196d03d4 [site] Integrate Zenbu themes and components
MrJuneJune <me@mrjunejune.com>
parents: 158
diff changeset
185 </zen-button>
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
186
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
187 <header>
258
60a876c4587a [ui] Add semantic primitive ownership
MrJuneJune <me@mrjunejune.com>
parents: 256
diff changeset
188 <h1><a href="/" data-zen-link-effect="none">MrJuneJune</a></h1>
129
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
189 </header>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
190 <script src="/index.js"></script>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
191
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
192 <main>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
193 <h1 class="title" style="margin-bottom: 20px;"> Blogs </h1>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
194 <ul style="list-style: none;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
195 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
196 <span> January 08 2026 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
197 <p><h4><a href="/blog/websocket-demystified">Websocket Demystified</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
198 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
199 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
200 <span> January 02 2026 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
201 <p><h4><a href="/blog/my-seobeo-journey">Creating Network Library in C</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
202 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
203 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
204 <span> Apr 12 2025 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
205 <p><h4><a href="/blog/wsl2-ssh">WSL2 Cloudtop Setup</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
206 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
207 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
208 <span> Dec 10 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
209 <p><h4><a href="/blog/multithread-in-js">MultiThreading in JS</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
210 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
211 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
212 <span> Nov 23 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
213 <p><h4><a href="/blog/thoughts-on-tdd">My thoughts on TDD</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
214 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
215 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
216 <span> Nov 21 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
217 <p><h4><a href="/blog/optimizing-grass-rendering">Optimizing Random Placement with Colour Noise</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
218 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
219 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
220 <span> Nov 17 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
221 <p><h4><a href="/blog/thoughts-on-ide">My thoughts on IDE</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
222 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
223 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
224 <span> Nov 16 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
225 <p><h4><a href="/blog/optimizing-data-structures">Optimizing Data Structure for Performance</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
226 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
227 <li style="margin-bottom: 20px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
228 <span> Nov 13 2024 </span>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
229 <p><h4><a href="/blog/wasm-bunny">WASM using c3</a></h4></p>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
230 </li>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
231 </ul>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
232 </main>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
233 <div style="display: flex; align-items: center; justify-content: center; margin: 30px 0px;">
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
234 <small>&copy; 2026 June Park</small>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
235 </div>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
236
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
237 </body>
f7860f491a8c --amend
June Park <parkjune1995@gmail.com>
parents:
diff changeset
238 </html>