Fixed head
This commit is contained in:
parent
8aabd71962
commit
68a1d61b7c
5
head
5
head
|
@ -1,4 +1,4 @@
|
|||
|
||||
<style>
|
||||
@font-face {
|
||||
font-family: 'merriweather';
|
||||
src: url(/res/merriweather-regular.woff2);
|
||||
|
@ -70,5 +70,4 @@ a:hover:after {
|
|||
font-style: normal;
|
||||
color: black;
|
||||
}
|
||||
|
||||
|
||||
</style>
|
||||
|
|
91
index.html
Normal file
91
index.html
Normal file
|
@ -0,0 +1,91 @@
|
|||
<!DOCTYPE html><html><head><style>
|
||||
@font-face {
|
||||
font-family: 'merriweather';
|
||||
src: url(/res/merriweather-regular.woff2);
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'cascadia';
|
||||
src: url(/res/cascadiacode.woff2);
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: merriweather;
|
||||
background-image: url("/res/grey.png");
|
||||
background-repeat: repeat;
|
||||
padding: 20px 10px 20px;
|
||||
line-height: 1.75em;
|
||||
height: 100%;
|
||||
max-width: 40em;
|
||||
display: flex;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
main {
|
||||
border-radius: 15px;
|
||||
padding: 15px;
|
||||
background-color: #ffeedd;
|
||||
margin: 2px;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: cascadia;
|
||||
}
|
||||
|
||||
table {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
table, th, td {
|
||||
padding: 5px;
|
||||
border: 3px solid black;
|
||||
border-style: solid;
|
||||
border-collapse: collapse;
|
||||
/* text-align: center; */
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #df3e23;
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #df3e23;
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover:before {
|
||||
content: "[";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
}
|
||||
|
||||
a:hover:after {
|
||||
content: "]";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
</head><body><main><h1>logan's site</h1>
|
||||
<hr/>
|
||||
<h2>me</h2>
|
||||
<p>I am a programming and philosophy enthusiast. Once upon a time i was a
|
||||
competitive debater on a few local and state circuits. After over 10 years of
|
||||
doing robotics I'm finally starting to get the hang of it. Currently in the
|
||||
process of discovering my love for hypertext and the world wide web!</p>
|
||||
<h2>portfolio</h2>
|
||||
<ul>
|
||||
<li>my git server</li>
|
||||
<li>http web server</li>
|
||||
<li>html templating language</li>
|
||||
<li>stack based assembly language</li>
|
||||
<li>kinematic image processing</li>
|
||||
<li>n dimensional cartesian product</li>
|
||||
<li>stock trading algorithm</li>
|
||||
</ul>
|
||||
</main></body></html>
|
1
index.md
1
index.md
|
@ -1,5 +1,6 @@
|
|||
# logan's site
|
||||
<hr/>
|
||||
|
||||
## me
|
||||
I am a programming and philosophy enthusiast. Once upon a time i was a
|
||||
competitive debater on a few local and state circuits. After over 10 years of
|
||||
|
|
106
projects/fishbowl.html
Normal file
106
projects/fishbowl.html
Normal file
|
@ -0,0 +1,106 @@
|
|||
<!DOCTYPE html><html><head><style>
|
||||
@font-face {
|
||||
font-family: 'merriweather';
|
||||
src: url(/res/merriweather-regular.woff2);
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'cascadia';
|
||||
src: url(/res/cascadiacode.woff2);
|
||||
}
|
||||
|
||||
body {
|
||||
font-family: merriweather;
|
||||
background-image: url("/res/grey.png");
|
||||
background-repeat: repeat;
|
||||
padding: 20px 10px 20px;
|
||||
line-height: 1.75em;
|
||||
height: 100%;
|
||||
max-width: 40em;
|
||||
display: flex;
|
||||
margin: auto;
|
||||
}
|
||||
|
||||
main {
|
||||
border-radius: 15px;
|
||||
padding: 15px;
|
||||
background-color: #ffeedd;
|
||||
margin: 2px;
|
||||
width: 100%
|
||||
}
|
||||
|
||||
code {
|
||||
font-family: cascadia;
|
||||
}
|
||||
|
||||
table {
|
||||
margin-left: auto;
|
||||
margin-right: auto;
|
||||
}
|
||||
|
||||
table, th, td {
|
||||
padding: 5px;
|
||||
border: 3px solid black;
|
||||
border-style: solid;
|
||||
border-collapse: collapse;
|
||||
/* text-align: center; */
|
||||
align-content: center;
|
||||
}
|
||||
|
||||
a {
|
||||
color: #df3e23;
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #df3e23;
|
||||
font-style: italic;
|
||||
text-decoration: none;
|
||||
}
|
||||
|
||||
a:hover:before {
|
||||
content: "[";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
}
|
||||
|
||||
a:hover:after {
|
||||
content: "]";
|
||||
font-style: normal;
|
||||
color: black;
|
||||
}
|
||||
</style>
|
||||
</head><body><main><h1>fishbowl</h1>
|
||||
<p>Choose an image and click submit. The image will be sent and processed by my
|
||||
server, so be mindful of what you submit. No logs or copies of the input are
|
||||
preserved.</p>
|
||||
<form id="fishForm">
|
||||
<label for="fishFile"> Select an image: </label>
|
||||
<br/>
|
||||
<input id="fishFile" accept="image/*" type="file"/>
|
||||
<br/>
|
||||
<input value="Run Fishbowl" type="submit"/>
|
||||
</form>
|
||||
<img id="fishImage" width="480" height="480"/>
|
||||
<script>
|
||||
const form = document.getElementById("fishForm");
|
||||
const image = document.getElementById("fishImage");
|
||||
form.onsubmit = async (ev) => {
|
||||
ev.preventDefault();
|
||||
image.src = "";
|
||||
try {
|
||||
const file = document.getElementById("fishFile").files[0];
|
||||
const arrayBuf = await file.arrayBuffer();
|
||||
const response = await fetch("/api/fishbowl", {
|
||||
method: 'POST',
|
||||
body: arrayBuf,
|
||||
});
|
||||
const blob = await response.blob();
|
||||
image.src = URL.createObjectURL(blob);
|
||||
} catch (error) {
|
||||
console.log(error);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</main></body></html>
|
Loading…
Reference in a new issue