From f0dd939acd090ec8536e3839106c27781ce9475b Mon Sep 17 00:00:00 2001 From: "Zed A. Shaw" Date: Tue, 27 May 2025 22:57:54 -0400 Subject: [PATCH] First commit of most of the pages laid out for the next phase. --- .gitignore | 28 + go.mod | 32 + go.sum | 53 + hello.go | 14 + public/blockstart.css | 241 ++++ public/color.css | 143 ++ public/game/1/turings-tarpit/index.html | 57 + public/game/index.html | 59 + public/global.css | 1637 +++++++++++++++++++++++ public/index.html | 88 ++ public/live/index.html | 51 + public/stream/1/index.html | 70 + public/stream/index.html | 67 + scratchpad/json_decode.go | 28 + scratchpad/template.html | 27 + scratchpad/user.json | 6 + 16 files changed, 2601 insertions(+) create mode 100644 .gitignore create mode 100644 go.mod create mode 100644 go.sum create mode 100644 hello.go create mode 100644 public/blockstart.css create mode 100644 public/color.css create mode 100644 public/game/1/turings-tarpit/index.html create mode 100644 public/game/index.html create mode 100644 public/global.css create mode 100644 public/index.html create mode 100644 public/live/index.html create mode 100644 public/stream/1/index.html create mode 100644 public/stream/index.html create mode 100644 scratchpad/json_decode.go create mode 100644 scratchpad/template.html create mode 100644 scratchpad/user.json diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..7337a95 --- /dev/null +++ b/.gitignore @@ -0,0 +1,28 @@ +# ---> Vim +# Swap +[._]*.s[a-v][a-z] +!*.svg # comment out if you don't need vector files +[._]*.sw[a-p] +[._]s[a-rt-v][a-z] +[._]ss[a-gi-z] +[._]sw[a-p] + +# Session +Session.vim +Sessionx.vim + +# Temporary +.netrwhist +*~ +# Auto-generated tag files +tags +# Persistent undo +[._]*.un~ + +backup +*.exe +*.dll +*.world +coverage +coverage/* +.venv diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..1d62f14 --- /dev/null +++ b/go.mod @@ -0,0 +1,32 @@ +module zedshaw-games/fibertest + +go 1.24.2 + +require github.com/gofiber/fiber/v2 v2.52.8 + +require ( + github.com/a-h/parse v0.0.0-20250122154542-74294addb73e // indirect + github.com/a-h/templ v0.3.865 // indirect + github.com/andybalholm/brotli v1.1.1 // indirect + github.com/cenkalti/backoff/v4 v4.3.0 // indirect + github.com/cli/browser v1.3.0 // indirect + github.com/fatih/color v1.16.0 // indirect + github.com/fsnotify/fsnotify v1.7.0 // indirect + github.com/google/uuid v1.6.0 // indirect + github.com/klauspost/compress v1.17.11 // indirect + github.com/mattn/go-colorable v0.1.13 // indirect + github.com/mattn/go-isatty v0.0.20 // indirect + github.com/mattn/go-runewidth v0.0.16 // indirect + github.com/natefinch/atomic v1.0.1 // indirect + github.com/rivo/uniseg v0.2.0 // indirect + github.com/valyala/bytebufferpool v1.0.0 // indirect + github.com/valyala/fasthttp v1.58.0 // indirect + github.com/valyala/tcplisten v1.0.0 // indirect + golang.org/x/mod v0.24.0 // indirect + golang.org/x/net v0.39.0 // indirect + golang.org/x/sync v0.13.0 // indirect + golang.org/x/sys v0.32.0 // indirect + golang.org/x/tools v0.32.0 // indirect +) + +tool github.com/a-h/templ/cmd/templ diff --git a/go.sum b/go.sum new file mode 100644 index 0000000..0e135dd --- /dev/null +++ b/go.sum @@ -0,0 +1,53 @@ +github.com/a-h/parse v0.0.0-20250122154542-74294addb73e h1:HjVbSQHy+dnlS6C3XajZ69NYAb5jbGNfHanvm1+iYlo= +github.com/a-h/parse v0.0.0-20250122154542-74294addb73e/go.mod h1:3mnrkvGpurZ4ZrTDbYU84xhwXW2TjTKShSwjRi2ihfQ= +github.com/a-h/templ v0.3.865 h1:nYn5EWm9EiXaDgWcMQaKiKvrydqgxDUtT1+4zU2C43A= +github.com/a-h/templ v0.3.865/go.mod h1:oLBbZVQ6//Q6zpvSMPTuBK0F3qOtBdFBcGRspcT+VNQ= +github.com/andybalholm/brotli v1.1.1 h1:PR2pgnyFznKEugtsUo0xLdDop5SKXd5Qf5ysW+7XdTA= +github.com/andybalholm/brotli v1.1.1/go.mod h1:05ib4cKhjx3OQYUY22hTVd34Bc8upXjOLL2rKwwZBoA= +github.com/cenkalti/backoff/v4 v4.3.0 h1:MyRJ/UdXutAwSAT+s3wNd7MfTIcy71VQueUuFK343L8= +github.com/cenkalti/backoff/v4 v4.3.0/go.mod h1:Y3VNntkOUPxTVeUxJ/G5vcM//AlwfmyYozVcomhLiZE= +github.com/cli/browser v1.3.0 h1:LejqCrpWr+1pRqmEPDGnTZOjsMe7sehifLynZJuqJpo= +github.com/cli/browser v1.3.0/go.mod h1:HH8s+fOAxjhQoBUAsKuPCbqUuxZDhQ2/aD+SzsEfBTk= +github.com/fatih/color v1.16.0 h1:zmkK9Ngbjj+K0yRhTVONQh1p/HknKYSlNT+vZCzyokM= +github.com/fatih/color v1.16.0/go.mod h1:fL2Sau1YI5c0pdGEVCbKQbLXB6edEj1ZgiY4NijnWvE= +github.com/fsnotify/fsnotify v1.7.0 h1:8JEhPFa5W2WU7YfeZzPNqzMP6Lwt7L2715Ggo0nosvA= +github.com/fsnotify/fsnotify v1.7.0/go.mod h1:40Bi/Hjc2AVfZrqy+aj+yEI+/bRxZnMJyTJwOpGvigM= +github.com/gofiber/fiber/v2 v2.52.8 h1:xl4jJQ0BV5EJTA2aWiKw/VddRpHrKeZLF0QPUxqn0x4= +github.com/gofiber/fiber/v2 v2.52.8/go.mod h1:YEcBbO/FB+5M1IZNBP9FO3J9281zgPAreiI1oqg8nDw= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/klauspost/compress v1.17.11 h1:In6xLpyWOi1+C7tXUUWv2ot1QvBjxevKAaI6IXrJmUc= +github.com/klauspost/compress v1.17.11/go.mod h1:pMDklpSncoRMuLFrf1W9Ss9KT+0rH90U12bZKk7uwG0= +github.com/mattn/go-colorable v0.1.13 h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA= +github.com/mattn/go-colorable v0.1.13/go.mod h1:7S9/ev0klgBDR4GtXTXX8a3vIGJpMovkB8vQcUbaXHg= +github.com/mattn/go-isatty v0.0.16/go.mod h1:kYGgaQfpe5nmfYZH+SKPsOc2e4SrIfOl2e/yFXSvRLM= +github.com/mattn/go-isatty v0.0.20 h1:xfD0iDuEKnDkl03q4limB+vH+GxLEtL/jb4xVJSWWEY= +github.com/mattn/go-isatty v0.0.20/go.mod h1:W+V8PltTTMOvKvAeJH7IuucS94S2C6jfK/D7dTCTo3Y= +github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc= +github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w= +github.com/natefinch/atomic v1.0.1 h1:ZPYKxkqQOx3KZ+RsbnP/YsgvxWQPGxjC0oBt2AhwV0A= +github.com/natefinch/atomic v1.0.1/go.mod h1:N/D/ELrljoqDyT3rZrsUmtsuzvHkeB/wWjHV22AZRbM= +github.com/rivo/uniseg v0.2.0 h1:S1pD9weZBuJdFmowNwbpi7BJ8TNftyUImj/0WQi72jY= +github.com/rivo/uniseg v0.2.0/go.mod h1:J6wj4VEh+S6ZtnVlnTBMWIodfgj8LQOQFoIToxlJtxc= +github.com/valyala/bytebufferpool v1.0.0 h1:GqA5TC/0021Y/b9FG4Oi9Mr3q7XYx6KllzawFIhcdPw= +github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyCJ6HpOuEn7z0Csc= +github.com/valyala/fasthttp v1.58.0 h1:GGB2dWxSbEprU9j0iMJHgdKYJVDyjrOwF9RE59PbRuE= +github.com/valyala/fasthttp v1.58.0/go.mod h1:SYXvHHaFp7QZHGKSHmoMipInhrI5StHrhDTYVEjK/Kw= +github.com/valyala/tcplisten v1.0.0 h1:rBHj/Xf+E1tRGZyWIWwJDiRY0zc1Js+CV5DqwacVSA8= +github.com/valyala/tcplisten v1.0.0/go.mod h1:T0xQ8SeCZGxckz9qRXTfG43PvQ/mcWh7FwZEA7Ioqkc= +github.com/xyproto/randomstring v1.0.5 h1:YtlWPoRdgMu3NZtP45drfy1GKoojuR7hmRcnhZqKjWU= +github.com/xyproto/randomstring v1.0.5/go.mod h1:rgmS5DeNXLivK7YprL0pY+lTuhNQW3iGxZ18UQApw/E= +golang.org/x/mod v0.24.0 h1:ZfthKaKaT4NrhGVZHO1/WDTwGES4De8KtWO0SIbNJMU= +golang.org/x/mod v0.24.0/go.mod h1:IXM97Txy2VM4PJ3gI61r1YEk/gAj6zAHN3AdZt6S9Ww= +golang.org/x/net v0.39.0 h1:ZCu7HMWDxpXpaiKdhzIfaltL9Lp31x/3fCP11bc6/fY= +golang.org/x/net v0.39.0/go.mod h1:X7NRbYVEA+ewNkCNyJ513WmMdQ3BineSwVtN2zD/d+E= +golang.org/x/sync v0.13.0 h1:AauUjRAJ9OSnvULf/ARrrVywoJDy0YS2AwQ98I37610= +golang.org/x/sync v0.13.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA= +golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= +golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= +golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.32.0 h1:s77OFDvIQeibCmezSnk/q6iAfkdiQaJi4VzroCFrN20= +golang.org/x/sys v0.32.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k= +golang.org/x/tools v0.32.0 h1:Q7N1vhpkQv7ybVzLFtTjvQya2ewbwNDZzUgfXGqtMWU= +golang.org/x/tools v0.32.0/go.mod h1:ZxrU41P/wAbZD8EDa6dDCa6XfpkhJ7HFMjHJXfBDu8s= diff --git a/hello.go b/hello.go new file mode 100644 index 0000000..ffee6d4 --- /dev/null +++ b/hello.go @@ -0,0 +1,14 @@ +package main + +import ( + "log" + "github.com/gofiber/fiber/v2" +) + +func main() { + app := fiber.New() + + app.Static("/", "./public") + + log.Fatal(app.Listen(":5001")) +} diff --git a/public/blockstart.css b/public/blockstart.css new file mode 100644 index 0000000..ff7c188 --- /dev/null +++ b/public/blockstart.css @@ -0,0 +1,241 @@ +:root { + --color-border: hsl(0, 0%, 0%); + --border-radius: 5px; + --text: 0; + --value: 9; + --value-scale: 12%; + --pad: 10px; + --bottom-margin: 2rem; + --w: initial; + --h: initial; + --value0: hsl(0, 0%, calc(0 * var(--value-scale))); + --value1: hsl(0, 0%, calc(1 * var(--value-scale))); + --value2: hsl(0, 0%, calc(2 * var(--value-scale))); + --value3: hsl(0, 0%, calc(3 * var(--value-scale))); + --value4: hsl(0, 0%, calc(4 * var(--value-scale))); + --value5: hsl(0, 0%, calc(5 * var(--value-scale))); + --value6: hsl(0, 0%, calc(6 * var(--value-scale))); + --value7: hsl(0, 0%, calc(7 * var(--value-scale))); + --value8: hsl(0, 0%, calc(8 * var(--value-scale))); + --value9: hsl(0, 0%, calc(9 * var(--value-scale))); +} + +body { + padding: 0px; + margin: 0px; +} + +blockstart { + background-color: #fff; + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + display: flex; + flex-direction: column; + justify-content: flex-start; + padding: 0px; + margin: 0px; + width: 100%; + min-width: 100%; + max-width: 100%; + height: fit-content; + min-height: fit-content; + padding: 1rem; +} + +blockstart > * + * { + margin-bottom: var(--bottom-margin); +} + +blockstart > *:last-child { + margin-bottom: 0px; +} + +blockstart a { + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); +} + +blockstart block { + --spacing: space-evenly; + + display: flex; + background-color: hsl(0, 0%, calc(var(--value) * var(--value-scale))); + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + justify-content: var(--spacing); + flex-direction: column; + padding: var(--pad); + width: var(--w); + min-width: var(--w); + max-width: var(--w); + height: var(--h); + min-height: var(--h); + max-height: var(--h); +} + +blockstart block > * { + --spacing: flex-start; + --pad: 10px; + --w: initial; + --h: initial; + + background-color: hsl(0, 0%, calc(var(--value) * var(--value-scale))); + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + display: flex; + justify-content: var(--spacing); + align-self: stretch; + flex-direction: column; + margin: 2px; + padding: var(--pad); + width: var(--w); + min-width: var(--w); + max-width: var(--w); + height: var(--h); + min-height: var(--h); + max-height: var(--h); +} + +blockstart stack { + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + display: grid; + grid-template-rows: 1fr; + grid-template-columns: 1fr; + grid-template-areas: "cover"; +} + +blockstart stack > * { + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + width: 100%; + height: 100%; + position: relative; + grid-area: cover; +} + +blockstart stack > .top { + z-index: 10; +} + +blockstart .wide { + width: 100%; +} + +blockstart .no-flex { + display: block; + flex: unset; + flex-direction: unset; + align-self: unset; +} + +blockstart .center { + justify-content: center; + align-items: center; + align-self: center; +} + +blockstart .center-text { + text-align: center; + justify-content: center; + align-items: center; +} + +blockstart .center-self { + align-self: center; +} + +blockstart .vertical { + flex-direction: column; +} + +blockstart .horizontal { + flex-direction: row; +} + +blockstart grid { + --cols: auto; + --rows: auto; + --gap: 0.5rem; + + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + display: grid; + grid-gap: var(--gap); + grid-template-columns: repeat(var(--cols), 1fr); + grid-template-rows: repeat(var(--rows), 1fr); +} + + +blockstart hr { + --height: 1rem; + + min-height: var(--height); + visibility: hidden; +} + +blockstart hr.huge { + --height: 3rem; +} + +blockstart shape { + --value: 2; + --text: 9; + --pad: 1rem; + + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + background-color: hsl(0, 0%, calc(var(--value) * var(--value-scale))); + display: flex; + width: var(--w); + min-width: var(--w); + max-width: var(--w); + height: var(--h); + min-height: var(--h); + max-height: var(--h); + text-align: center; + justify-content: center; + align-items: center; + align-self: center; + padding: pad; +} + +blockstart .debug { + border: 1px solid red; +} + +blockstart .debug > * { + border: 1px solid blue; +} + +blockstart .border { + border: 2px solid var(--color-border); + border-radius: var(--border-radius); +} + +blockstart .compact { + justify-content: flex-start; +} + +blockstart .compact > * { + flex: unset; +} + +.solid { + --value: 4; + --text: 9; +} + +.fill { + flex: 1 1 auto; +} + +button { + --value: 7; + --text: 0; + + background-color: hsl(0, 0%, calc(var(--value) * var(--value-scale))); + color: hsl(0, 0%, calc(var(--text) * var(--value-scale))); + border: 2px solid var(--color-border); + border-radius: var(--border-radius); +} + +button:hover { + filter: brightness(90%); +} + +[style*="--aspect-ratio"] { + aspect-ratio: var(--aspect-ratio); +} diff --git a/public/color.css b/public/color.css new file mode 100644 index 0000000..621f922 --- /dev/null +++ b/public/color.css @@ -0,0 +1,143 @@ +@font-face { + font-family: computer; + src: url(/fonts/computer.woff); +} + +/* Grays + --value9: hsl(0, 0%, 100%); + --value8: hsl(210, 17%, 98%); + --value8a: hsl(210, 17%, 98%, 0); + --value7: hsl(210, 16%, 93%); + --value6: hsl(210, 14%, 89%); + --value5: hsl(210, 14%, 83%); + --value4: hsl(210, 11%, 71%); + --value3: hsl(208, 7%, 46%); + --value2: hsl(210, 9%, 31%); + --value1: hsl(210, 10%, 23%); + --value0: hsl(210, 11%, 15%); + + Greens + --value9: #f7fcf5; + --value8: #e5f5e0; + --value8a: hsl(210, 17%, 98%, 0); + --value7: #83cad4; + --value6: #73c17a; + --value5: #006d2c; + --value4: hsl(210, 11%, 71%); + --value3: hsl(208, 7%, 46%); + --value2: hsl(210, 9%, 31%); + --value1: #06160c; + --value0: #010402; +*/ + +:root { + --value9: #f7fcf5; + --value8: #e5f5e0; + --value8a: hsl(210, 17%, 98%, 0); + --value7: #daf0d5; + --value6: #73c17a; + --value5: #238b45; + --value4: #006d2c; + --value3: #105329; + --value2: #0e321b; + --value1: #06160c; + --value0: #010402; + + --gray9: hsl(0, 0%, 100%); + --gray8: hsl(210, 17%, 98%); + --gray8a: hsl(210, 17%, 98%, 0); + --gray7: hsl(210, 16%, 93%); + --gray6: hsl(210, 14%, 89%); + --gray5: hsl(210, 14%, 83%); + --gray4: hsl(210, 11%, 71%); + --gray3: hsl(208, 7%, 46%); + --gray2: hsl(210, 9%, 31%); + --gray1: hsl(210, 10%, 23%); + --gray0: hsl(210, 11%, 15%); + + --orange: hsl(19, 97%, 41%); + --yellow: hsl(44, 100%, 52%); + --red: hsl(334, 100%, 50%); + --purple: hsl(265, 83%, 57%); + --blue: hsl(217, 100%, 61%); + --green: hsl(98, 32%, 45%); + --black: hsl(240, 100%, 0%); + + --invert-orange: var(--value9); + --invert-yellow: var(--value0); + --invert-red: var(--value9); + --invert-purple: var(--value9); + --invert-blue: var(--value9); + --invert-green: var(--value9); + + --color-accent: var(--value7); + --color-bg-inverted: var(--gray6); + --color-bg-secondary: var(--gray2); + --color-bg-code-text: var(--value2); + --color-bg-tertiary: var(--value3); + --color-bg: var(--value0); + --color-border: var(--gray3); + --color-error: var(--red); + --color-good: var(--green); + --color-icon-image: var(--value8); + --color-inactive: var(--value4); + --color-info: var(--yellow); + --color-input-bg: var(--value7); + --color-input-border: var(--value7); + --color-input-button: var(--value6); + --color-overlay-background: var(--value2); + --color-overlay-shadow: var(--value6); + --color-overlay-text: var(--value7); + --color-play-icon: var(--value4); + --color-pulse-1: hsla(0, 0%, 80%, 1); + --color-pulse-2: hsla(0, 0%, 80%, 0.7); + --color-pulse-3: hsla(0, 0%, 80%, 0.1); + --color-pulse-4: hsla(0, 0%, 80%, 0); + --color-secondary-accent: var(--value7); + --color-secondary: var(--value7); + --color-shadow-secondary: var(--value6); + --color-shadow: var(--value2); + --color-text-inverted: var(--value0); + --color-text-secondary: var(--value8); + --color-text: var(--value9); + --color-warning: var(--orange); + --color: var(--value9); + --gray-bg: var(--gray1); + --color-scrollbar-thumb: hsla(0, 0%, 40%, 0.8); + --color-scrollbar-track-piece: hsla(0, 0%, 20%, 0.8); + --color-bg-transparent: var(--value8a); + --color-bg-code: var(--gray1); + --color-border-tabs: var(--value6); + --color-shadow-dark: var(--value2); + + + --font-family: "Andale Mono", "Monaco", monospace, monospace; + --font-title: "Palatino", serif; + --font-computer: "computer", monospace; + --font-size: 1.05em; + --font-text-size: 1.4em; /* for paragraphs mostly */ + --font-label-size: 1rem; + --font-heading-size: 1.2em; + --font-heading-weight: 300; + --font-header-nav: 1.3em; + --font-button-size: 1.4em; + --hover-brightness: 0.9; + --justify-important: center; + --justify-blockquote: left; + --justify-normal: left; + --line-height: 1.5; + --width-sidebar: 320px; + --width-card: 385px; + --width-card-medium: 460px; + --width-card-wide: 800px; + --width-content: 1080px; + --width-badge: 20px; + --font-size-badge: 13px; + --fixed-header-height: 73px; + --fixed-footer-height: 400px; + --color-scrollbar-thumb: hsla(0, 0%, 60%, 0.8); + --color-scrollbar-track-piece: hsla(0, 0%, 100%, 0.9); + + --color-bg-header: var(--value0); + --color-text-header: var(--value9); +} diff --git a/public/game/1/turings-tarpit/index.html b/public/game/1/turings-tarpit/index.html new file mode 100644 index 0000000..d27ab57 --- /dev/null +++ b/public/game/1/turings-tarpit/index.html @@ -0,0 +1,57 @@ + + + + + + + + ZedShaw's Game Thing + + + + +
+ 🏑 Zed's Game Dev Website Yay +
+ + + Gameplay Demo Video + + +

Turing's Tarpit

+ + + Some Image + +

Polaroid retro pork belly yes plz bitters, viral chicharrones typewriter chartreuse vice Brooklyn. Adaptogen pour-over vibecession viral. Tote bag tonx DIY microdosing. Pickled selvage bespoke small batch, blue bottle twee tacos jean shorts before they sold out chicharrones solarpunk. Hoodie taiyaki poutine jianbing chambray.

+
+
+ + + +

Polaroid retro pork belly yes plz bitters, viral chicharrones typewriter chartreuse vice Brooklyn. Adaptogen pour-over vibecession viral. Tote bag tonx DIY microdosing. Pickled selvage bespoke small batch, blue bottle twee tacos jean shorts before they sold out chicharrones solarpunk. Hoodie taiyaki poutine jianbing chambray.

+
+ + +

Current Status

+

Polaroid retro pork belly yes plz bitters, viral chicharrones typewriter chartreuse vice Brooklyn. Adaptogen pour-over vibecession viral. Tote bag tonx DIY microdosing. Pickled selvage bespoke small batch, blue bottle twee tacos jean shorts before they sold out chicharrones solarpunk. Hoodie taiyaki poutine jianbing chambray.

+
+ + +

Planned Work

+

Polaroid retro pork belly yes plz bitters, viral chicharrones typewriter chartreuse vice Brooklyn. Adaptogen pour-over vibecession viral. Tote bag tonx DIY microdosing. Pickled selvage bespoke small batch, blue bottle twee tacos jean shorts before they sold out chicharrones solarpunk. Hoodie taiyaki poutine jianbing chambray.

+
+ + +

Read The Code

+

Polaroid retro pork belly yes plz bitters, viral chicharrones typewriter chartreuse vice Brooklyn. Adaptogen pour-over vibecession viral. Tote bag tonx DIY microdosing. Pickled selvage bespoke small batch, blue bottle twee tacos jean shorts before they sold out chicharrones solarpunk. Hoodie taiyaki poutine jianbing chambray.

+ +
+ +
+ + + + diff --git a/public/game/index.html b/public/game/index.html new file mode 100644 index 0000000..2fbf6c4 --- /dev/null +++ b/public/game/index.html @@ -0,0 +1,59 @@ + + + + + + + + ZedShaw's Game Thing + + + +
+ 🏑 Zed's Game Dev Website Yay +
+ + + +

Zed's Trash Ass Games

+ +

More fun than a barrel full of monkeys with syphilus. +

+
+ +
+ + Game B + Game A + Game B + Game A + Game B + Game A + Game B + Game A + Game B + Game A + Game B + Game B + + + + + Left Image +
+

Checkout my Git

+

I put al of my code online for people to read and study. If you're curious about the code behind my games or anything else I make then take a look at my git. It's like a buffet of half-finished genius.

+ + +
+
+
+ + +
+ + + + diff --git a/public/global.css b/public/global.css new file mode 100644 index 0000000..02e4701 --- /dev/null +++ b/public/global.css @@ -0,0 +1,1637 @@ +/* Hea vily modified from the wonderful MVP.css v1.6.2 - https://github.com/andybrewer/mvp */ +@import 'color.css'; + +/* You can remove this if you don't do any code in your project. */ +@import '/css/prism.css'; + +body * { + /* This fixes the classic CSS braindead decision that children can explode out + * of their parent's box. + */ + box-sizing: border-box; +} + +aside { + display: block; + font-size: 1.2em; + line-height: var(--line-height); + padding: 1rem 1rem; + text-align: var(--justify-blockquote); + border-radius: var(--border-radius); + background-color: var(--color-bg-secondary); + border: 1px solid var(--value3); +} + +aside.warning { + background-color: var(--value7); + color: var(--color-text-inverted); +} + +/* Layout */ +article aside { + background: var(--color-secondary-accent); + border-left: 4px solid var(--color-secondary); + padding: 0.01rem 0.8rem; +} + +body { + background: var(--color-bg); + color: var(--color-text); + font-family: var(--font-family); + line-height: var(--line-height); + margin: 0; + overflow-x: hidden; + overflow-y: overlay; + text-rendering: optimizeSpeed; + -webkit-font-smoothing: antialiased; +} + +::-webkit-scrollbar { + width: 10px; +} + +::-webkit-scrollbar-thumb { + background: var(--color-scrollbar-thumb); +} +::-webkit-scrollbar-track-piece { + background: var(--color-scrollbar-track-piece); +} + +header { + background-color: var(--color-bg-header); + color: var(--color-text-header); + display: flex; + justify-content: center; + text-align: var(--justify-important); +} + +header, +main { + margin: 0 auto; + padding-left: 0.5rem; + padding-right: 0.5rem; + padding-top: 0rem; +} + +header.fixed { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 90; + height: var(--fixed-header-height); +} + +main { + max-width: var(--width-content); + min-height: 800px; + margin-bottom: 2rem; + display: flex; + flex-direction: column; +} + +header.fixed + main { + margin-top: var(--fixed-header-height) !important; + min-height: unset; +} + +footer { + background-color: var(--color-bg-header); + color: var(--color-text-header); + padding: 0px; + width: 100%; + display: flex; + flex-direction: row; + justify-content: space-evenly; +} + +footer aside { + background-color: var(--color-bg-secondary); + width: 33%; + padding: 1em; +} + +footer aside h4 { + margin-top: 0px; + margin-bottom: 0.5rem; +} + +hr { + background-color: var(--color-bg-secondary); + border: none; + height: 1px; + margin: 1rem 0; +} + +section { + display: flex; + flex-wrap: wrap; + justify-content: var(--justify-important); +} + +section aside { + border: 1px solid var(--color-bg-secondary); + border-radius: var(--border-radius); + box-shadow: var(--box-shadow) var(--color-shadow); + margin: 1rem; + padding: 1.25rem; + width: var(--width-card); +} + +section aside img { + max-width: 100%; +} + +[hidden] { + display: none; +} + +/* Headers */ +article header, +div header, +main header { + padding-top: 0; +} + +header a.button { + margin-left: 0.5rem; + margin-right: 0.5rem; +} + +header nav { + max-width: var(--width-content); +} + +header nav a { + /* this covers all links in the header nav */ + font-size: var(--font-header-nav); + text-decoration-line: none; +} + +header nav > a { + /* this is for just a tags in the header, not inside