mediocregopher.com/index.html

192 lines
8.1 KiB
HTML

<html>
<head>
<title>Mediocre Gopher</title>
<!--
<link rel="icon" href="favicon.ico" type="image/x-icon"/>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon"/>
-->
<style type="text/css">
@font-face {
font-family: Raleway;
src: url(Raleway-VariableFont_wght.ttf);
}
body { background-color:#434343; color:#bada55; font-family:Raleway; }
a:link { color:#bada55; font-weight: bold; }
a:visited { color:#bada55; font-weight: normal; }
a:hover { color:#bada55; text-decoration: none; }
.fuck-it-up { font-family:Courier,monospace; font-size:8pt; line-height:4pt; color:#bada55; }
.block { padding:3rem 0 3rem 3rem; float:left; }
</style>
</head>
<body>
<div class="block">
<pre class="fuck-it-up">
.%*. .-.
.%@@@+. .--=%@@@-
=@@@@@@- :--+@@@@@@@@@*
*@%@@@@@%: :--=#@@@@@@@@@@@@#@@+
@@::%@@@@@@-: :::-=%@@@@@@@@@@@@@@%#*- :@*
.@@ =@@@@@@@@@+-:::::::-=*@@@@@@@@@@@@@@@@@@@%##- @@:
#@# +%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%%#*: -@@
#@- *%@@@@@@@@@@@@@@@@@%%%#= %@=
@@: -=+++== .. @@:
@@ . -@@@ +@@
#@% =@@@@- +@@@@# *+ %@#
#@- -@@@@@@@. +@@@@@% .%@@@@= @@:
@@: +@@@@@@@@@ +@+ +@@@ %@@@@@@@@@ -@@
@@ *@%@* :@@@ *@+ -@@@ %@@@@@@@@@@@# @@@
#@% %@ @% %@@ *@* .@@@ =@@@*@@ :@@@@ @@:
%@:## *@+ :@@ :@@ @@@ %@@: @# .@@@ .@@
@@:. @@: .@@ @@ @@@ %@: @@ @@% @@%
@@ -@@. =@@ @@. @@@ %@. #@- @@# @@.
%@% +@@. @@. %@- @@@ #@ @@. :@@ -@@
%@: +@@+ .@% #@= @@@.@ *@@ +@+ @@*
@@: +@@%. .%% *@+ @@@ %@@ -@# @@
@@ :@@@@@@% :@@ @@% %@@ @# *@@
%@@ #@@@@* @@ @@% %@@. %@. @@:
@@: ===: @@. @@% %@@: =@%. .@@
@@. #@= @@% %@@%+%@#. @@%
@@ +@* @@# -@@@@@* .@@
%@@ :@@ @@# %@@#: =@@
@@: .@@ @@# : @@=
@@. @@. @@# :@@
@@ #@= @@% %@%
#@@ +@+ #@% .@@
@@: =@# +@% =@%
@@ :@% -@@ @@+
@@ .@@ -@: -@@
-@@ @% .: *@#
@@* # @@.
@@ =@@
.@@ @@*
.@@ .@@
*@@ =@#
@@* @@*
@@ -@@
.@@ +@*
.@@ @@-
-@@ =@@
%@% #@*
@@ @@:
@@ +@@
.@@ %@+
:@% @@.
:@% *@%
-@. %@=
%@ @@.
@@ *@%
@@ %@=
@% @@:
:@% +@@
:@* =+- #@+
:@: .%@@@. @@-
-@ =@@@@@# :@@
=@ *@#.=@@% #@%
*@ #@- -@@% %@-
@@ #@: :@@% @@:
@@ #% .@@% .#@@* -@@
@% #% .@@% +@@@@@- %@%
@# %@ :@@% .@@@@@@@@ %@:
@# %@ :@@% +@@% .@@@@ @@:
@# %@ :@@% #@@: :@@@ -@@
@# @@. .@@@ .@@% .@@@= %@%
@# @@. .@@@: %@@- @@@% %@:
@# @@ @@@@ %@@@ *@@@ @@:
@# .@@ @@@@@@@@@@= :@@@ @@
* @@@ :@@@@@@@@. :@@@ *@@
.@@@@@% -@@@@@. .@@@ @@=
@@@@@: .. @@@ @@.
-@%: @@@ @@.
@@@ @@
-@@ =@@
.@@ @@+
.@@:@@.
@@#@-
@@@.
+@-
-
</pre>
</div>
<div class="block">
<h1>Social</h1>
<ul>
<li><a href="https://blog.mediocregopher.com">Blog</a> is for WIP projects.</li>
<li><a href="https://twitter.com/mediocre_gopher">Twitter</a> is for shitcoins.</li>
</ul>
<h1>Portfolios</h1>
<ul>
<li><a href="https://github.com/mediocregopher">GitHub</a> is for code I've written.
<li><a href="https://opensea.io/mediocregopher?tab=created">OpenSea</a> is for art I've made.
<li><a href="https://bgpicciano.com">Resume</a> is for jobs I've had.
</ul>
<h1>Projects</h1>
<ul>
<li><a href="https://github.com/mediocregopher/radix">radix</a> is for using redis with go.
<li><a href="https://dehub.dev">dehub</a> is for decentralized git projects.
</ul>
</div>
</body>
<script>
function replaceAt(str, index, replacement) {
return str.substr(0, index) + replacement+ str.substr(index + replacement.length);
}
const fuckItUpEls = document.querySelectorAll(".fuck-it-up");
// right-pad the lines in each fuck-it-up
fuckItUpEls.forEach((pre) => {
const lines = pre.innerText.split('\n');
let maxL = 0;
lines.forEach((line) => {
maxL = maxL > line.length ? maxL : line.length;
});
pre.innerText = lines.map((line) =>
line + " ".repeat(maxL - line.length)
).join('\n');
});
function fuckItUp() {
fuckItUpEls.forEach((pre) => {
while (true) {
var txt = pre.innerText;
var len = txt.length;
var a = Math.floor(Math.random() * len);
var aChar = txt.charAt(a);
var b = Math.floor(Math.random() * len);
var bChar = txt.charAt(b);
if (
aChar == "\n" || bChar == "\n"
) continue;
txt = replaceAt(txt, a, bChar);
txt = replaceAt(txt, b, aChar);
pre.innerText = txt;
break
}
});
}
var wait = 1000;
function fuckItUpALot() {
fuckItUp();
if (wait > 2) { wait *= 0.95; }
setTimeout(fuckItUpALot, wait);
}
setTimeout(fuckItUpALot, wait);
</script>
</html>