diff --git a/bun.lockb b/bun.lockb index 7e04572..a18a950 100755 Binary files a/bun.lockb and b/bun.lockb differ diff --git a/global.d.ts b/global.d.ts index f7088f6..2c67759 100644 --- a/global.d.ts +++ b/global.d.ts @@ -1,15 +1,5 @@ -import P5 from "p5" -import * as p5Sound from 'p5/lib/addons/p5.sound' -import * as p5Global from 'p5/global' - -export = P5; -export as namespace p5; - declare global { - interface Window { - p5: typeof P5, - setup: () => void, - preload: () => void, - draw: () => void - } -} \ No newline at end of file + let __BLOG_POSTS__: string[] + let __STICKERS__: string[] +} +export { }; diff --git a/package.json b/package.json index cfe6a40..304be8c 100644 --- a/package.json +++ b/package.json @@ -18,7 +18,6 @@ "esbuild": "^0.23.0", "marked": "^13.0.2", "mime-types": "^2.1.35", - "nano-jsx": "^0.1.0", - "p5": "^1.9.4" + "nano-jsx": "^0.1.0" } } \ No newline at end of file diff --git a/src/plugins/dev.ts b/src/plugins/dev.ts index 7fc1305..844e667 100644 --- a/src/plugins/dev.ts +++ b/src/plugins/dev.ts @@ -66,6 +66,9 @@ export default class DevPlugin extends Plugin { } return new Response(rawFile, { headers: { + "Cache-Control": "no-cache, no-store, must-revalidate", + "Pragma": "no-cache", + "Expires": "0", "Content-Type": (mime.lookup(type) || "application/octet-stream") + "; charset=utf-8", }, }); diff --git a/src/plugins/variables.ts b/src/plugins/variables.ts index a73abfe..b83de4b 100644 --- a/src/plugins/variables.ts +++ b/src/plugins/variables.ts @@ -15,6 +15,9 @@ export default class Variables extends Plugin { this.variables["__BLOG_POSTS__"] = JSON.stringify( fs.readdirSync("./website/blogs").map((z) => z.replace(".md", "")) ); + this.variables["__STICKERS__"] = JSON.stringify( + fs.readdirSync("./website/assets/stickers") + ); const templatePath = path.resolve(__dirname, "../../website/templates"); if (fs.existsSync(templatePath)) { for (const file of fs.readdirSync(templatePath)) { diff --git a/website/assets/stickers/meow_sticker.webp b/website/assets/stickers/meow_sticker.webp new file mode 100644 index 0000000..4f2c49b Binary files /dev/null and b/website/assets/stickers/meow_sticker.webp differ diff --git a/website/assets/sticker.webp b/website/assets/stickers/monero1_sticker.webp similarity index 100% rename from website/assets/sticker.webp rename to website/assets/stickers/monero1_sticker.webp diff --git a/website/assets/stickers/monero2_sticker.webp b/website/assets/stickers/monero2_sticker.webp new file mode 100644 index 0000000..aef5a09 Binary files /dev/null and b/website/assets/stickers/monero2_sticker.webp differ diff --git a/website/assets/stickers/monero3_sticker.webp b/website/assets/stickers/monero3_sticker.webp new file mode 100644 index 0000000..aabdbb9 Binary files /dev/null and b/website/assets/stickers/monero3_sticker.webp differ diff --git a/website/assets/stickers/ovpn_sticker.webp b/website/assets/stickers/ovpn_sticker.webp new file mode 100644 index 0000000..07f260a Binary files /dev/null and b/website/assets/stickers/ovpn_sticker.webp differ diff --git a/website/assets/style.css b/website/assets/style.css index 5bfef93..bd30cf7 100644 --- a/website/assets/style.css +++ b/website/assets/style.css @@ -1,36 +1,127 @@ -body[data-theme="light"] { - color: #31363F; +@import url("https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Noto+Emoji:wght@300..700&display=swap"); + +body { + font-family: "Inter", sans-serif; + font-optical-sizing: auto; + font-style: normal; + font-variation-settings: "slnt" 0; + scrollbar-color: #ffffffae #000000a1; + scrollbar-width: thin; } -body[data-theme="dark"] { - color: #eeeeee; +.order { + display: grid; + grid-template-areas: + "one two" + "four blog" + "three blog"; + grid-gap: 5px; + grid-template-columns: repeat(2, minmax(0, 1fr)); + height: 98vh; +} +@media only screen and (max-width: 600px) { + .order { + grid-template-areas: + "one " + "two " + "blog " + "blog "; + grid-template-columns: 1fr; + } + .three { + display: none !important; + } + body { + scrollbar-width: auto !important; + } +} +.emoji { + font-family: "Noto Emoji", sans-serif; + font-optical-sizing: auto; + font-style: normal; + font-variation-settings: "slnt" 0; +} +.paper > h1, +h2, +h3, +h4, +h5, +h6, +h6s { + margin: 0; + padding: 0; +} +.paper { + color: white; + background-color: #000000de; + padding: 15px; + border: 1px black solid; + border-radius: 5px; + word-wrap: break-word; + overflow: auto; +} +.blog { + grid-area: blog; +} +.one { + grid-area: one; +} +.two { + grid-area: two; +} +.three { + grid-area: three; + display: flex; + flex-direction: row; + gap: 20px; +} +.three > img, +.three > video { + height: 100%; +} +.four { + grid-area: four; +} +.e-mail { + font-size: small; +} +/*https://danmarshall.github.io/google-font-to-svg-path/*/ +/*https://yoksel.github.io/url-encoder/*/ +.repeating-bg { + background-image: url("data:image/svg+xml,%3Csvg width='99.612' height='99.612' viewBox='0 0 99.612 99.612' xmlns='http://www.w3.org/2000/svg'%3E%3Cg id='svgGroup' stroke-linecap='round' fill-rule='evenodd' font-size='9pt' stroke='%23000' stroke-width='0.25mm' fill='%23000' style='stroke:%23000;stroke-width:0.25mm;fill:%23000'%3E%3Cpath d='M 30.47 95.753 A 48.715 48.715 0 0 0 49.806 99.611 Q 60.109 99.611 69.142 95.729 Q 78.175 91.847 85.011 85.011 Q 91.847 78.175 95.729 69.142 Q 99.611 60.109 99.611 49.806 Q 99.611 39.503 95.729 30.47 Q 91.847 21.437 85.011 14.601 Q 78.175 7.765 69.142 3.883 Q 60.109 0.001 49.806 0.001 A 48.715 48.715 0 0 0 30.47 3.859 Q 21.437 7.716 14.576 14.576 Q 7.716 21.437 3.859 30.445 A 46.98 46.98 0 0 0 3.169 32.146 A 48.984 48.984 0 0 0 0.001 49.806 A 48.715 48.715 0 0 0 3.859 69.142 Q 7.716 78.175 14.576 85.035 Q 21.437 91.896 30.47 95.753 Z M 49.806 97.657 A 46.875 46.875 0 0 0 68.409 93.946 Q 77.101 90.236 83.668 83.668 Q 90.236 77.101 93.946 68.409 A 46.875 46.875 0 0 0 97.657 49.806 A 46.875 46.875 0 0 0 93.946 31.202 Q 90.236 22.511 83.668 15.944 Q 77.101 9.376 68.409 5.665 A 46.875 46.875 0 0 0 49.806 1.954 A 46.875 46.875 0 0 0 31.202 5.665 Q 22.511 9.376 15.944 15.944 Q 9.376 22.511 5.665 31.202 A 46.875 46.875 0 0 0 1.954 49.806 A 46.875 46.875 0 0 0 5.665 68.409 Q 9.376 77.101 15.944 83.668 Q 22.511 90.236 31.202 93.946 A 46.875 46.875 0 0 0 49.806 97.657 Z M 25.636 75.441 L 23.976 74.464 Q 26.271 70.314 30.299 67.213 Q 34.327 64.112 39.381 62.355 A 31.511 31.511 0 0 1 49.806 60.597 A 31.511 31.511 0 0 1 60.231 62.355 A 31.668 31.668 0 0 1 69.313 67.237 A 24.816 24.816 0 0 1 74.121 72.115 A 22.347 22.347 0 0 1 75.636 74.464 L 73.976 75.441 A 21.687 21.687 0 0 0 69.296 69.752 A 25.564 25.564 0 0 0 68.043 68.727 A 29.994 29.994 0 0 0 59.547 64.186 Q 54.835 62.55 49.806 62.55 Q 44.777 62.55 40.04 64.186 A 30.049 30.049 0 0 0 32.025 68.342 A 28.374 28.374 0 0 0 31.544 68.702 A 22.453 22.453 0 0 0 26.811 73.573 A 20.69 20.69 0 0 0 25.636 75.441 Z M 29.355 43.927 A 4.755 4.755 0 0 0 32.618 45.216 Q 34.913 45.216 36.549 43.263 A 6.833 6.833 0 0 0 37.75 41.187 A 7.624 7.624 0 0 0 38.185 38.575 A 8.876 8.876 0 0 0 38.177 38.195 A 6.983 6.983 0 0 0 36.549 33.888 A 6.828 6.828 0 0 0 36.126 33.427 A 4.823 4.823 0 0 0 32.618 31.935 A 4.64 4.64 0 0 0 30.025 32.707 A 6.163 6.163 0 0 0 28.712 33.888 Q 27.052 35.841 27.052 38.575 A 8.824 8.824 0 0 0 27.056 38.841 A 6.945 6.945 0 0 0 28.712 43.263 A 6.831 6.831 0 0 0 29.355 43.927 Z M 63.73 43.927 A 4.755 4.755 0 0 0 66.993 45.216 Q 69.288 45.216 70.924 43.263 A 6.833 6.833 0 0 0 72.125 41.187 A 7.624 7.624 0 0 0 72.56 38.575 A 8.876 8.876 0 0 0 72.552 38.195 A 6.983 6.983 0 0 0 70.924 33.888 A 6.828 6.828 0 0 0 70.501 33.427 A 4.823 4.823 0 0 0 66.993 31.935 A 4.64 4.64 0 0 0 64.4 32.707 A 6.163 6.163 0 0 0 63.087 33.888 Q 61.427 35.841 61.427 38.575 A 8.824 8.824 0 0 0 61.431 38.841 A 6.945 6.945 0 0 0 63.087 43.263 A 6.831 6.831 0 0 0 63.73 43.927 Z' vector-effect='non-scaling-stroke'/%3E%3C/g%3E%3C/svg%3E"); + background-position: 20px 20px; } -body[data-theme="dark"]>.center>a { - color: #eeeeee !important; +a { + color: white; +} +.fake-input > .input { + border: none; + border-bottom: 2px solid black; +} +.fake-input > .input:focus { + border-bottom: 2px solid red; + outline: none; +} +.fake-input { + border-radius: 6px; + border: 3px solid black; + padding: 2px; +} +.button { + background-color: transparent; + border-radius: 6px; + border: 3px dotted black; + padding: 6px; } -body[data-theme="light"]>.center>a { - color: #31363F !important; +.body-center { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + width: 100%; + display: flex; + justify-content: center; + align-items: center; } - -:root { - font-family: Inter, sans-serif; - font-feature-settings: 'liga' 1, 'calt' 1; -} - -@supports (font-variation-settings: normal) { - :root { - font-family: InterVariable, sans-serif; - } -} - -.center { - position: absolute; - top: 10px; - left: 10px; -} - -.selected { - font-weight: bold; -} \ No newline at end of file diff --git a/website/blog.html b/website/blog.html deleted file mode 100644 index 2daa940..0000000 --- a/website/blog.html +++ /dev/null @@ -1,10 +0,0 @@ -__TEMPLATE_HEAD__ - - - -
- - - - -