Initial commit

This commit is contained in:
Sophia Atkinson 2022-12-06 02:59:30 -08:00
commit 16d5f449c9
50 changed files with 5154 additions and 0 deletions

120
about/index.html Normal file
View File

@ -0,0 +1,120 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>About - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>About Me<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<h3>Hello my name is Sophia.</h3>
<h4>I am a Fullstack developer, I have been a developer for 3 years, and I am decently experienced in Lua, C++, C#, and Java. I am very experienced in Node.js, Javascript, PHP, HTML, and CSS. I am very involved in the open-source initiative. Along with many other initiatives. <a href="https://sop.wtf/sapronouns">Pronouns Card</a>
</h4>
<hr>
<h3>Hobbies</h3>
<h4>
<li>Running My Homelab</li>
<li>Building Computers</li>
<li>Coding</li>
<li>Gaming</li>
</h4>
<h3>Social Media</h3>
<h4>
<li><a href="https://sop.wtf/samastodon">Mastodon</a></li>
<li><a href="https://sop.wtf/sagithub">Github</a></li>
<li><a href="https://sop.wtf/shwampyt">Youtube</a></li>
<li><a href="https://sop.wtf/satwitch">Twitch</a></li>
<li><a href="https://sop.wtf/sablog">Blog</a></li>
</h4>
<hr>
<h2>Projects</h2>
<h3>This is my personal site made by me and some other people.</h3>
<h3><a href="https://sop.wtf/">sop.wtf</a>: URL Shortening Service. No Ads. No BS. 100% Free.</h3>
<h3><a href="https://projectfirewatch.com/">projectfirewatch.com</a>: The Opensource Dive Into The Game Firewatch.</h3>
<h3><a href="https://perlathedog.com">perlathedog.com</a>: A Site With Pictures Of My Dog.</h3>
<ul class="actions">
</ul>
</section>
<section id="computer">
<header class="major">
<h2>My Computer<br />
</h2>
</header>
<h3>CPU: Ryzen 5 3600 (oc.4.3GHz)</h3>
<h3>CPU Cooler: Noctua NH-U12S Redux</h3>
<h3>Motherboard: MSI MAG B550 TOMAHAWK</h3>
<h3>RAM: 16 GB Crucial Ballistix DDR4 3600 (oc.4066 MHz)</h3>
<h3>GPU: ROG Strix RTX 3060</h3>
<h3>Case: Corsair 4000D Airflow</h3>
<h3>Fans: 6 Arctic F12 PWM PST</h3>
<h3>Storage: 1TB Samsung 870 QVO, HGST 4TB HDD</h3>
<h3>PSU: EVGA SuperNova 650 G5</h3>
<h3>Displays: 2x Acer 24 inch</h3>
<h3>Keyboard: HyperX Alloy FPS Pro</h3>
<h3>Mouse: Razer Basilisk X Hyperspeed</h3>
<h3>Sound: Sennheiser HD 559, Creative Sound Blaster Audigy</h3>
<h3>OS: Windows 10 Pro</h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

3023
assets/css/main.css Normal file

File diff suppressed because it is too large Load Diff

188
assets/js/1winter.js Normal file
View File

@ -0,0 +1,188 @@
/** @license
* DHTML Snowstorm! JavaScript-based snow for web pages
* Making it snow on the internets since 2003. You're welcome.
* -----------------------------------------------------------
* Version 1.44.20131208 (Previous rev: 1.44.20131125)
* Copyright (c) 2007, Scott Schiller. All rights reserved.
* Code provided under the BSD License
* http://schillmania.com/projects/snowstorm/license.txt
*/
var snowStorm = function(e, t) {
this.autoStart = !0, this.excludeMobile = !0, this.flakesMax = 128, this.flakesMaxActive = 64, this.animationInterval = 33, this.useGPU = !0, this.className = null, this.excludeMobile = !0, this.flakeBottom = null, this.followMouse = !1, this.snowColor = "#fff", this.snowCharacter = "&bull;", this.snowStick = !0, this.targetElement = null, this.useMeltEffect = !0, this.useTwinkleEffect = !1, this.usePositionFixed = !1, this.usePixelPosition = !1, this.freezeOnBlur = !0, this.flakeLeftOffset = 0, this.flakeRightOffset = 0, this.flakeWidth = 8, this.flakeHeight = 8, this.vMaxX = 5, this.vMaxY = 4, this.zIndex = 0;
var i, s = this,
n = navigator.userAgent.match(/msie/i),
l = navigator.userAgent.match(/msie 6/i),
o = navigator.userAgent.match(/mobile|opera m(ob|in)/i),
a = n && "BackCompat" === t.compatMode || l,
r = null,
f = null,
m = null,
h = null,
u = null,
c = null,
d = null,
v = 1,
p = !1,
y = !1,
k = function() {
try {
t.createElement("div").style.opacity = "0.5"
} catch (e) {
return !1
}
return !0
}(),
g = !1,
x = t.createDocumentFragment();
function w(e, t) {
return isNaN(t) && (t = 0), Math.random() * e + t
}
function F() {
e.setTimeout((function() {
s.start(!0)
}), 20), s.events.remove(n ? t : e, "mousemove", F)
}
return i = function() {
var i;
var n, l = e.requestAnimationFrame || e.webkitRequestAnimationFrame || e.mozRequestAnimationFrame || e.oRequestAnimationFrame || e.msRequestAnimationFrame || function(t) {
e.setTimeout(t, 1e3 / (s.animationInterval || 20))
};
function o(e) {
return void 0 !== n.style[e] ? e : null
}
i = l ? function() {
return l.apply(e, arguments)
} : null, n = t.createElement("div");
var a = {
transform: {
ie: o("-ms-transform"),
moz: o("MozTransform"),
opera: o("OTransform"),
webkit: o("webkitTransform"),
w3: o("transform"),
prop: null
},
getAnimationFrame: i
};
return a.transform.prop = a.transform.w3 || a.transform.moz || a.transform.webkit || a.transform.ie || a.transform.opera, n = null, a
}(), this.timer = null, this.flakes = [], this.disabled = !1, this.active = !1, this.meltFrameCount = 20, this.meltFrames = [], this.setXY = function(e, t, i) {
if (!e) return !1;
s.usePixelPosition || y ? (e.style.left = t - s.flakeWidth + "px", e.style.top = i - s.flakeHeight + "px") : a || s.flakeBottom ? (e.style.right = 100 - t / r * 100 + "%", e.style.top = Math.min(i, u - s.flakeHeight) + "px") : (e.style.right = 100 - t / r * 100 + "%", e.style.bottom = 100 - i / m * 100 + "%")
}, this.events = function() {
var t = !e.addEventListener && e.attachEvent,
i = Array.prototype.slice,
s = {
add: t ? "attachEvent" : "addEventListener",
remove: t ? "detachEvent" : "removeEventListener"
};
function n(e) {
var s = i.call(e),
n = s.length;
return t ? (s[1] = "on" + s[1], n > 3 && s.pop()) : 3 === n && s.push(!1), s
}
function l(e, i) {
var n = e.shift(),
l = [s[i]];
t ? n[l](e[0], e[1]) : n[l].apply(n, e)
}
return {
add: function() {
l(n(arguments), "add")
},
remove: function() {
l(n(arguments), "remove")
}
}
}(), this.randomizeWind = function() {
var e, t;
if (t = w(s.vMaxX, .2), c = 1 === parseInt(w(2), 10) ? -1 * t : t, d = w(s.vMaxY, .2), this.flakes)
for (e = 0; e < this.flakes.length; e++) this.flakes[e].active && this.flakes[e].setVelocities()
}, this.scrollHandler = function() {
var i;
if (h = s.flakeBottom ? 0 : parseInt(e.scrollY || t.documentElement.scrollTop || (a ? t.body.scrollTop : 0), 10), isNaN(h) && (h = 0), !p && !s.flakeBottom && s.flakes)
for (i = 0; i < s.flakes.length; i++) 0 === s.flakes[i].active && s.flakes[i].stick()
}, this.resizeHandler = function() {
e.innerWidth || e.innerHeight ? (r = e.innerWidth - 16 - s.flakeRightOffset, m = s.flakeBottom || e.innerHeight) : (r = (t.documentElement.clientWidth || t.body.clientWidth || t.body.scrollWidth) - (n ? 0 : 8) - s.flakeRightOffset, m = s.flakeBottom || t.documentElement.clientHeight || t.body.clientHeight || t.body.scrollHeight), u = t.body.offsetHeight, f = parseInt(r / 2, 10)
}, this.resizeHandlerAlt = function() {
r = s.targetElement.offsetWidth - s.flakeRightOffset, m = s.flakeBottom || s.targetElement.offsetHeight, f = parseInt(r / 2, 10), u = t.body.offsetHeight
}, this.freeze = function() {
if (s.disabled) return !1;
s.disabled = 1, s.timer = null
}, this.resume = function() {
if (!s.disabled) return !1;
s.disabled = 0, s.timerInit()
}, this.toggleSnow = function() {
s.flakes.length ? (s.active = !s.active, s.active ? (s.show(), s.resume()) : (s.stop(), s.freeze())) : s.start()
}, this.stop = function() {
var i;
for (this.freeze(), i = 0; i < this.flakes.length; i++) this.flakes[i].o.style.display = "none";
s.events.remove(e, "scroll", s.scrollHandler), s.events.remove(e, "resize", s.resizeHandler), s.freezeOnBlur && (n ? (s.events.remove(t, "focusout", s.freeze), s.events.remove(t, "focusin", s.resume)) : (s.events.remove(e, "blur", s.freeze), s.events.remove(e, "focus", s.resume)))
}, this.show = function() {
var e;
for (e = 0; e < this.flakes.length; e++) this.flakes[e].o.style.display = "block"
}, this.SnowFlake = function(e, n, l) {
var o = this;
this.type = e, this.x = n || parseInt(w(r - 20), 10), this.y = isNaN(l) ? -w(m) - 12 : l, this.vX = null, this.vY = null, this.vAmpTypes = [1, 1.2, 1.4, 1.6, 1.8], this.vAmp = this.vAmpTypes[this.type] || 1, this.melting = !1, this.meltFrameCount = s.meltFrameCount, this.meltFrames = s.meltFrames, this.meltFrame = 0, this.twinkleFrame = 0, this.active = 1, this.fontSize = 10 + this.type / 5 * 10, this.o = t.createElement("div"), this.o.innerHTML = s.snowCharacter, s.className && this.o.setAttribute("class", s.className), this.o.style.color = s.snowColor, this.o.style.position = p ? "fixed" : "absolute", s.useGPU && i.transform.prop && (this.o.style[i.transform.prop] = "translate3d(0px, 0px, 0px)"), this.o.style.width = s.flakeWidth + "px", this.o.style.height = s.flakeHeight + "px", this.o.style.fontFamily = "arial,verdana", this.o.style.cursor = "default", this.o.style.overflow = "hidden", this.o.style.fontWeight = "normal", this.o.style.zIndex = s.zIndex, x.appendChild(this.o), this.refresh = function() {
if (isNaN(o.x) || isNaN(o.y)) return !1;
s.setXY(o.o, o.x, o.y)
}, this.stick = function() {
a || s.targetElement !== t.documentElement && s.targetElement !== t.body ? o.o.style.top = m + h - s.flakeHeight + "px" : s.flakeBottom ? o.o.style.top = s.flakeBottom + "px" : (o.o.style.display = "none", o.o.style.bottom = "0%", o.o.style.position = "fixed", o.o.style.display = "block")
}, this.vCheck = function() {
o.vX >= 0 && o.vX < .2 ? o.vX = .2 : o.vX < 0 && o.vX > -.2 && (o.vX = -.2), o.vY >= 0 && o.vY < .2 && (o.vY = .2)
}, this.move = function() {
var e = o.vX * v;
o.x += e, o.y += o.vY * o.vAmp, o.x >= r || r - o.x < s.flakeWidth ? o.x = 0 : e < 0 && o.x - s.flakeLeftOffset < -s.flakeWidth && (o.x = r - s.flakeWidth - 1), o.refresh(), m + h - o.y + s.flakeHeight < s.flakeHeight ? (o.active = 0, s.snowStick ? o.stick() : o.recycle()) : (s.useMeltEffect && o.active && o.type < 3 && !o.melting && Math.random() > .998 && (o.melting = !0, o.melt()), s.useTwinkleEffect && (o.twinkleFrame < 0 ? Math.random() > .97 && (o.twinkleFrame = parseInt(8 * Math.random(), 10)) : (o.twinkleFrame--, k ? o.o.style.opacity = o.twinkleFrame && o.twinkleFrame % 2 == 0 ? 0 : 1 : o.o.style.visibility = o.twinkleFrame && o.twinkleFrame % 2 == 0 ? "hidden" : "visible")))
}, this.animate = function() {
o.move()
}, this.setVelocities = function() {
o.vX = c + w(.12 * s.vMaxX, .1), o.vY = d + w(.12 * s.vMaxY, .1)
}, this.setOpacity = function(e, t) {
if (!k) return !1;
e.style.opacity = t
}, this.melt = function() {
s.useMeltEffect && o.melting && o.meltFrame < o.meltFrameCount ? (o.setOpacity(o.o, o.meltFrames[o.meltFrame]), o.o.style.fontSize = o.fontSize - o.fontSize * (o.meltFrame / o.meltFrameCount) + "px", o.o.style.lineHeight = s.flakeHeight + 2 + .75 * s.flakeHeight * (o.meltFrame / o.meltFrameCount) + "px", o.meltFrame++) : o.recycle()
}, this.recycle = function() {
o.o.style.display = "none", o.o.style.position = p ? "fixed" : "absolute", o.o.style.bottom = "auto", o.setVelocities(), o.vCheck(), o.meltFrame = 0, o.melting = !1, o.setOpacity(o.o, 1), o.o.style.padding = "0px", o.o.style.margin = "0px", o.o.style.fontSize = o.fontSize + "px", o.o.style.lineHeight = s.flakeHeight + 2 + "px", o.o.style.textAlign = "center", o.o.style.verticalAlign = "baseline", o.x = parseInt(w(r - s.flakeWidth - 20), 10), o.y = parseInt(-1 * w(m), 10) - s.flakeHeight, o.refresh(), o.o.style.display = "block", o.active = 1
}, this.recycle(), this.refresh()
}, this.snow = function() {
var e, t, n = 0,
l = null;
for (e = 0, t = s.flakes.length; e < t; e++) 1 === s.flakes[e].active && (s.flakes[e].move(), n++), s.flakes[e].melting && s.flakes[e].melt();
n < s.flakesMaxActive && 0 === (l = s.flakes[parseInt(w(s.flakes.length), 10)]).active && (l.melting = !0), s.timer && i.getAnimationFrame(s.snow)
}, this.mouseMove = function(e) {
if (!s.followMouse) return !0;
var t = parseInt(e.clientX, 10);
v = t < f ? t / f * 2 - 2 : (t -= f) / f * 2
}, this.createSnow = function(e, t) {
var i;
for (i = 0; i < e; i++) s.flakes[s.flakes.length] = new s.SnowFlake(parseInt(w(6), 10)), (t || i > s.flakesMaxActive) && (s.flakes[s.flakes.length - 1].active = -1);
s.targetElement.appendChild(x)
}, this.timerInit = function() {
s.timer = !0, s.snow()
}, this.init = function() {
var i;
for (i = 0; i < s.meltFrameCount; i++) s.meltFrames.push(1 - i / s.meltFrameCount);
s.randomizeWind(), s.createSnow(s.flakesMax), s.events.add(e, "resize", s.resizeHandler), s.events.add(e, "scroll", s.scrollHandler), s.freezeOnBlur && (n ? (s.events.add(t, "focusout", s.freeze), s.events.add(t, "focusin", s.resume)) : (s.events.add(e, "blur", s.freeze), s.events.add(e, "focus", s.resume))), s.resizeHandler(), s.scrollHandler(), s.followMouse && s.events.add(n ? t : e, "mousemove", s.mouseMove), s.animationInterval = Math.max(20, s.animationInterval), s.timerInit()
}, this.start = function(i) {
if (g) {
if (i) return !0
} else g = !0;
if ("string" == typeof s.targetElement) {
var n = s.targetElement;
if (s.targetElement = t.getElementById(n), !s.targetElement) throw new Error('Snowstorm: Unable to get targetElement "' + n + '"')
}
if (s.targetElement || (s.targetElement = t.body || t.documentElement), s.targetElement !== t.documentElement && s.targetElement !== t.body && (s.resizeHandler = s.resizeHandlerAlt, s.usePixelPosition = !0), s.resizeHandler(), s.usePositionFixed = s.usePositionFixed && !a && !s.flakeBottom, e.getComputedStyle) try {
y = "relative" === e.getComputedStyle(s.targetElement, null).getPropertyValue("position")
} catch (e) {
y = !1
}
p = s.usePositionFixed, r && m && !s.disabled && (s.init(), s.active = !0)
}, s.autoStart && s.events.add(e, "load", (function t() {
s.excludeMobile && o || F(), s.events.remove(e, "load", t)
}), !1), this
}(window, document);

2
assets/js/breakpoints.min.js vendored Normal file
View File

@ -0,0 +1,2 @@
/* breakpoints.js v1.0 | @ajlkn | MIT licensed */
var breakpoints=function(){"use strict";function e(e){t.init(e)}var t={list:null,media:{},events:[],init:function(e){t.list=e,window.addEventListener("resize",t.poll),window.addEventListener("orientationchange",t.poll),window.addEventListener("load",t.poll),window.addEventListener("fullscreenchange",t.poll)},active:function(e){var n,a,s,i,r,d,c;if(!(e in t.media)){if(">="==e.substr(0,2)?(a="gte",n=e.substr(2)):"<="==e.substr(0,2)?(a="lte",n=e.substr(2)):">"==e.substr(0,1)?(a="gt",n=e.substr(1)):"<"==e.substr(0,1)?(a="lt",n=e.substr(1)):"!"==e.substr(0,1)?(a="not",n=e.substr(1)):(a="eq",n=e),n&&n in t.list)if(i=t.list[n],Array.isArray(i)){if(r=parseInt(i[0]),d=parseInt(i[1]),isNaN(r)){if(isNaN(d))return;c=i[1].substr(String(d).length)}else c=i[0].substr(String(r).length);if(isNaN(r))switch(a){case"gte":s="screen";break;case"lte":s="screen and (max-width: "+d+c+")";break;case"gt":s="screen and (min-width: "+(d+1)+c+")";break;case"lt":s="screen and (max-width: -1px)";break;case"not":s="screen and (min-width: "+(d+1)+c+")";break;default:s="screen and (max-width: "+d+c+")"}else if(isNaN(d))switch(a){case"gte":s="screen and (min-width: "+r+c+")";break;case"lte":s="screen";break;case"gt":s="screen and (max-width: -1px)";break;case"lt":s="screen and (max-width: "+(r-1)+c+")";break;case"not":s="screen and (max-width: "+(r-1)+c+")";break;default:s="screen and (min-width: "+r+c+")"}else switch(a){case"gte":s="screen and (min-width: "+r+c+")";break;case"lte":s="screen and (max-width: "+d+c+")";break;case"gt":s="screen and (min-width: "+(d+1)+c+")";break;case"lt":s="screen and (max-width: "+(r-1)+c+")";break;case"not":s="screen and (max-width: "+(r-1)+c+"), screen and (min-width: "+(d+1)+c+")";break;default:s="screen and (min-width: "+r+c+") and (max-width: "+d+c+")"}}else s="("==i.charAt(0)?"screen and "+i:i;t.media[e]=!!s&&s}return t.media[e]!==!1&&window.matchMedia(t.media[e]).matches},on:function(e,n){t.events.push({query:e,handler:n,state:!1}),t.active(e)&&n()},poll:function(){var e,n;for(e=0;e<t.events.length;e++)n=t.events[e],t.active(n.query)?n.state||(n.state=!0,n.handler()):n.state&&(n.state=!1)}};return e._=t,e.on=function(e,n){t.on(e,n)},e.active=function(e){return t.active(e)},e}();!function(e,t){"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?module.exports=t():e.breakpoints=t()}(this,function(){return breakpoints});

2
assets/js/browser.min.js vendored Normal file
View File

@ -0,0 +1,2 @@
/* browser.js v1.0 | @ajlkn | MIT licensed */
var browser=function(){"use strict";var e={name:null,version:null,os:null,osVersion:null,touch:null,mobile:null,_canUse:null,canUse:function(n){e._canUse||(e._canUse=document.createElement("div"));var o=e._canUse.style,r=n.charAt(0).toUpperCase()+n.slice(1);return n in o||"Moz"+r in o||"Webkit"+r in o||"O"+r in o||"ms"+r in o},init:function(){var n,o,r,i,t=navigator.userAgent;for(n="other",o=0,r=[["firefox",/Firefox\/([0-9\.]+)/],["bb",/BlackBerry.+Version\/([0-9\.]+)/],["bb",/BB[0-9]+.+Version\/([0-9\.]+)/],["opera",/OPR\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)/],["edge",/Edge\/([0-9\.]+)/],["safari",/Version\/([0-9\.]+).+Safari/],["chrome",/Chrome\/([0-9\.]+)/],["ie",/MSIE ([0-9]+)/],["ie",/Trident\/.+rv:([0-9]+)/]],i=0;i<r.length;i++)if(t.match(r[i][1])){n=r[i][0],o=parseFloat(RegExp.$1);break}for(e.name=n,e.version=o,n="other",o=0,r=[["ios",/([0-9_]+) like Mac OS X/,function(e){return e.replace("_",".").replace("_","")}],["ios",/CPU like Mac OS X/,function(e){return 0}],["wp",/Windows Phone ([0-9\.]+)/,null],["android",/Android ([0-9\.]+)/,null],["mac",/Macintosh.+Mac OS X ([0-9_]+)/,function(e){return e.replace("_",".").replace("_","")}],["windows",/Windows NT ([0-9\.]+)/,null],["bb",/BlackBerry.+Version\/([0-9\.]+)/,null],["bb",/BB[0-9]+.+Version\/([0-9\.]+)/,null],["linux",/Linux/,null],["bsd",/BSD/,null],["unix",/X11/,null]],i=0;i<r.length;i++)if(t.match(r[i][1])){n=r[i][0],o=parseFloat(r[i][2]?r[i][2](RegExp.$1):RegExp.$1);break}e.os=n,e.osVersion=o,e.touch="wp"==e.os?navigator.msMaxTouchPoints>0:!!("ontouchstart"in window),e.mobile="wp"==e.os||"android"==e.os||"ios"==e.os||"bb"==e.os}};return e.init(),e}();!function(e,n){"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?module.exports=n():e.browser=n()}(this,function(){return browser});

2
assets/js/jquery.min.js vendored Normal file

File diff suppressed because one or more lines are too long

2
assets/js/jquery.poptrox.min.js vendored Normal file

File diff suppressed because one or more lines are too long

1
assets/js/main.js Normal file
View File

@ -0,0 +1 @@
(function($){var $window=$(window),$body=$('body'),$header=$('#header'),$footer=$('#footer'),$main=$('#main'),settings={parallax:true,parallaxFactor:20};breakpoints({xlarge:['1281px','1800px'],large:['981px','1280px'],medium:['737px','980px'],small:['481px','736px'],xsmall:[null,'480px']});$window.on('load',function(){window.setTimeout(function(){$body.removeClass('is-preload')},100)});if(browser.mobile){$body.addClass('is-touch');window.setTimeout(function(){$window.scrollTop($window.scrollTop()+1)},0)}breakpoints.on('<=medium',function(){$footer.insertAfter($main)});breakpoints.on('>medium',function(){$footer.appendTo($header)});if(browser.name=='ie'||browser.mobile){settings.parallax=false}if(settings.parallax){breakpoints.on('<=medium',function(){$window.off('scroll.strata_parallax');$header.css('background-position','')});breakpoints.on('>medium',function(){$header.css('background-position','left 0px');$window.on('scroll.strata_parallax',function(){$header.css('background-position','left '+(-1*(parseInt($window.scrollTop())/settings.parallaxFactor))+'px')})});$window.on('load',function(){$window.triggerHandler('scroll')})}$window.on('load',function(){$('#two').poptrox({caption:function($a){return $a.next('h3').text()},overlayColor:'#2c2c2c',overlayOpacity:0.85,popupCloserText:'',popupLoaderText:'',selector:'.work-item a.image',usePopupCaption:true,usePopupDefaultStyling:false,usePopupEasyClose:false,usePopupNav:true,windowMargin:(breakpoints.active('<=small')?0:50)})})})(jQuery);

1
assets/js/util.js Normal file

File diff suppressed because one or more lines are too long

0
assets/js/winter.js Normal file
View File

View File

@ -0,0 +1,223 @@
// breakpoints.scss v1.0 | @ajlkn | MIT licensed */
// Vars.
/// Breakpoints.
/// @var {list}
$breakpoints: () !global;
// Mixins.
/// Sets breakpoints.
/// @param {map} $x Breakpoints.
@mixin breakpoints($x: ()) {
$breakpoints: $x !global;
}
/// Wraps @content in a @media block targeting a specific orientation.
/// @param {string} $orientation Orientation.
@mixin orientation($orientation) {
@media screen and (orientation: #{$orientation}) {
@content;
}
}
/// Wraps @content in a @media block using a given query.
/// @param {string} $query Query.
@mixin breakpoint($query: null) {
$breakpoint: null;
$op: null;
$media: null;
// Determine operator, breakpoint.
// Greater than or equal.
@if (str-slice($query, 0, 2) == '>=') {
$op: 'gte';
$breakpoint: str-slice($query, 3);
}
// Less than or equal.
@elseif (str-slice($query, 0, 2) == '<=') {
$op: 'lte';
$breakpoint: str-slice($query, 3);
}
// Greater than.
@elseif (str-slice($query, 0, 1) == '>') {
$op: 'gt';
$breakpoint: str-slice($query, 2);
}
// Less than.
@elseif (str-slice($query, 0, 1) == '<') {
$op: 'lt';
$breakpoint: str-slice($query, 2);
}
// Not.
@elseif (str-slice($query, 0, 1) == '!') {
$op: 'not';
$breakpoint: str-slice($query, 2);
}
// Equal.
@else {
$op: 'eq';
$breakpoint: $query;
}
// Build media.
@if ($breakpoint and map-has-key($breakpoints, $breakpoint)) {
$a: map-get($breakpoints, $breakpoint);
// Range.
@if (type-of($a) == 'list') {
$x: nth($a, 1);
$y: nth($a, 2);
// Max only.
@if ($x == null) {
// Greater than or equal (>= 0 / anything)
@if ($op == 'gte') {
$media: 'screen';
}
// Less than or equal (<= y)
@elseif ($op == 'lte') {
$media: 'screen and (max-width: ' + $y + ')';
}
// Greater than (> y)
@elseif ($op == 'gt') {
$media: 'screen and (min-width: ' + ($y + 1) + ')';
}
// Less than (< 0 / invalid)
@elseif ($op == 'lt') {
$media: 'screen and (max-width: -1px)';
}
// Not (> y)
@elseif ($op == 'not') {
$media: 'screen and (min-width: ' + ($y + 1) + ')';
}
// Equal (<= y)
@else {
$media: 'screen and (max-width: ' + $y + ')';
}
}
// Min only.
@else if ($y == null) {
// Greater than or equal (>= x)
@if ($op == 'gte') {
$media: 'screen and (min-width: ' + $x + ')';
}
// Less than or equal (<= inf / anything)
@elseif ($op == 'lte') {
$media: 'screen';
}
// Greater than (> inf / invalid)
@elseif ($op == 'gt') {
$media: 'screen and (max-width: -1px)';
}
// Less than (< x)
@elseif ($op == 'lt') {
$media: 'screen and (max-width: ' + ($x - 1) + ')';
}
// Not (< x)
@elseif ($op == 'not') {
$media: 'screen and (max-width: ' + ($x - 1) + ')';
}
// Equal (>= x)
@else {
$media: 'screen and (min-width: ' + $x + ')';
}
}
// Min and max.
@else {
// Greater than or equal (>= x)
@if ($op == 'gte') {
$media: 'screen and (min-width: ' + $x + ')';
}
// Less than or equal (<= y)
@elseif ($op == 'lte') {
$media: 'screen and (max-width: ' + $y + ')';
}
// Greater than (> y)
@elseif ($op == 'gt') {
$media: 'screen and (min-width: ' + ($y + 1) + ')';
}
// Less than (< x)
@elseif ($op == 'lt') {
$media: 'screen and (max-width: ' + ($x - 1) + ')';
}
// Not (< x and > y)
@elseif ($op == 'not') {
$media: 'screen and (max-width: ' + ($x - 1) + '), screen and (min-width: ' + ($y + 1) + ')';
}
// Equal (>= x and <= y)
@else {
$media: 'screen and (min-width: ' + $x + ') and (max-width: ' + $y + ')';
}
}
}
// String.
@else {
// Missing a media type? Prefix with "screen".
@if (str-slice($a, 0, 1) == '(') {
$media: 'screen and ' + $a;
}
// Otherwise, use as-is.
@else {
$media: $a;
}
}
}
// Output.
@media #{$media} {
@content;
}
}

View File

@ -0,0 +1,90 @@
/// Removes a specific item from a list.
/// @author Hugo Giraudel
/// @param {list} $list List.
/// @param {integer} $index Index.
/// @return {list} Updated list.
@function remove-nth($list, $index) {
$result: null;
@if type-of($index) != number {
@warn "$index: #{quote($index)} is not a number for `remove-nth`.";
}
@else if $index == 0 {
@warn "List index 0 must be a non-zero integer for `remove-nth`.";
}
@else if abs($index) > length($list) {
@warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`.";
}
@else {
$result: ();
$index: if($index < 0, length($list) + $index + 1, $index);
@for $i from 1 through length($list) {
@if $i != $index {
$result: append($result, nth($list, $i));
}
}
}
@return $result;
}
/// Gets a value from a map.
/// @author Hugo Giraudel
/// @param {map} $map Map.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function val($map, $keys...) {
@if nth($keys, 1) == null {
$keys: remove-nth($keys, 1);
}
@each $key in $keys {
$map: map-get($map, $key);
}
@return $map;
}
/// Gets a duration value.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function _duration($keys...) {
@return val($duration, $keys...);
}
/// Gets a font value.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function _font($keys...) {
@return val($font, $keys...);
}
/// Gets a misc value.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function _misc($keys...) {
@return val($misc, $keys...);
}
/// Gets a palette value.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function _palette($keys...) {
@return val($palette, $keys...);
}
/// Gets a size value.
/// @param {string} $keys Key(s).
/// @return {string} Value.
@function _size($keys...) {
@return val($size, $keys...);
}

View File

@ -0,0 +1,149 @@
// html-grid.scss v1.0 | @ajlkn | MIT licensed */
// Mixins.
/// Initializes the current element as an HTML grid.
/// @param {mixed} $gutters Gutters (either a single number to set both column/row gutters, or a list to set them individually).
/// @param {mixed} $suffix Column class suffix (optional; either a single suffix or a list).
@mixin html-grid($gutters: 1.5em, $suffix: '') {
// Initialize.
$cols: 12;
$multipliers: 0, 0.25, 0.5, 1, 1.50, 2.00;
$unit: 100% / $cols;
// Suffixes.
$suffixes: null;
@if (type-of($suffix) == 'list') {
$suffixes: $suffix;
}
@else {
$suffixes: ($suffix);
}
// Gutters.
$guttersCols: null;
$guttersRows: null;
@if (type-of($gutters) == 'list') {
$guttersCols: nth($gutters, 1);
$guttersRows: nth($gutters, 2);
}
@else {
$guttersCols: $gutters;
$guttersRows: 0;
}
// Row.
display: flex;
flex-wrap: wrap;
box-sizing: border-box;
align-items: stretch;
// Columns.
> * {
box-sizing: border-box;
}
// Gutters.
&.gtr-uniform {
> * {
> :last-child {
margin-bottom: 0;
}
}
}
// Alignment.
&.aln-left {
justify-content: flex-start;
}
&.aln-center {
justify-content: center;
}
&.aln-right {
justify-content: flex-end;
}
&.aln-top {
align-items: flex-start;
}
&.aln-middle {
align-items: center;
}
&.aln-bottom {
align-items: flex-end;
}
// Step through suffixes.
@each $suffix in $suffixes {
// Suffix.
@if ($suffix != '') {
$suffix: '-' + $suffix;
}
@else {
$suffix: '';
}
// Row.
// Important.
> .imp#{$suffix} {
order: -1;
}
// Columns, offsets.
@for $i from 1 through $cols {
> .col-#{$i}#{$suffix} {
width: $unit * $i;
}
> .off-#{$i}#{$suffix} {
margin-left: $unit * $i;
}
}
// Step through multipliers.
@each $multiplier in $multipliers {
// Gutters.
$class: null;
@if ($multiplier != 1) {
$class: '.gtr-' + ($multiplier * 100);
}
&#{$class} {
margin-top: ($guttersRows * $multiplier * -1);
margin-left: ($guttersCols * $multiplier * -1);
> * {
padding: ($guttersRows * $multiplier) 0 0 ($guttersCols * $multiplier);
}
// Uniform.
&.gtr-uniform {
margin-top: $guttersCols * $multiplier * -1;
> * {
padding-top: $guttersCols * $multiplier;
}
}
}
}
}
}

View File

@ -0,0 +1,78 @@
/// Makes an element's :before pseudoelement a FontAwesome icon.
/// @param {string} $content Optional content value to use.
/// @param {string} $category Optional category to use.
/// @param {string} $where Optional pseudoelement to target (before or after).
@mixin icon($content: false, $category: regular, $where: before) {
text-decoration: none;
&:#{$where} {
@if $content {
content: $content;
}
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
text-transform: none !important;
@if ($category == brands) {
font-family: 'Font Awesome 5 Brands';
}
@elseif ($category == solid) {
font-family: 'Font Awesome 5 Free';
font-weight: 900;
}
@else {
font-family: 'Font Awesome 5 Free';
font-weight: 400;
}
}
}
/// Applies padding to an element, taking the current element-margin value into account.
/// @param {mixed} $tb Top/bottom padding.
/// @param {mixed} $lr Left/right padding.
/// @param {list} $pad Optional extra padding (in the following order top, right, bottom, left)
/// @param {bool} $important If true, adds !important.
@mixin padding($tb, $lr, $pad: (0,0,0,0), $important: null) {
@if $important {
$important: '!important';
}
$x: 0.1em;
@if unit(_size(element-margin)) == 'rem' {
$x: 0.1rem;
}
padding: ($tb + nth($pad,1)) ($lr + nth($pad,2)) max($x, $tb - _size(element-margin) + nth($pad,3)) ($lr + nth($pad,4)) #{$important};
}
/// Encodes a SVG data URL so IE doesn't choke (via codepen.io/jakob-e/pen/YXXBrp).
/// @param {string} $svg SVG data URL.
/// @return {string} Encoded SVG data URL.
@function svg-url($svg) {
$svg: str-replace($svg, '"', '\'');
$svg: str-replace($svg, '%', '%25');
$svg: str-replace($svg, '<', '%3C');
$svg: str-replace($svg, '>', '%3E');
$svg: str-replace($svg, '&', '%26');
$svg: str-replace($svg, '#', '%23');
$svg: str-replace($svg, '{', '%7B');
$svg: str-replace($svg, '}', '%7D');
$svg: str-replace($svg, ';', '%3B');
@return url("data:image/svg+xml;charset=utf8,#{$svg}");
}

View File

@ -0,0 +1,59 @@
// Misc.
$misc: (
z-index-base: 10000
);
// Duration.
$duration: (
transition: 0.2s
);
// Size.
$size: (
border-radius: 0.35em,
element-height: 2.75em,
element-margin: 2em,
container-width: 100%
);
// Font.
$font: (
family: ('Source Sans Pro', Helvetica, sans-serif),
family-fixed: ('Courier New', monospace),
weight: 400,
weight-bold: 400
);
// Palette.
$palette: (
bg: #fff,
fg: #a2a2a2,
fg-bold: #787878,
fg-light: #b2b2b2,
border: #efefef,
border-bg: #f7f7f7,
border2: #dfdfdf,
border2-bg: #e7e7e7,
accent1: (
bg: #49bf9d,
fg: mix(#49bf9d, #ffffff, 25%),
fg-bold: #ffffff,
fg-light: mix(#49bf9d, #ffffff, 40%),
border: rgba(255,255,255,0.25),
border-bg: rgba(255,255,255,0.075),
border2: rgba(255,255,255,0.5),
border2-bg: rgba(255,255,255,0.2)
),
accent2: (
bg: #1f1815,
fg: rgba(255,255,255,0.5),
fg-bold: #ffffff,
fg-light: rgba(255,255,255,0.4),
border: rgba(255,255,255,0.25),
border-bg: rgba(255,255,255,0.075),
border2: rgba(255,255,255,0.5),
border2-bg: rgba(255,255,255,0.2)
)
);

View File

@ -0,0 +1,376 @@
// vendor.scss v1.0 | @ajlkn | MIT licensed */
// Vars.
/// Vendor prefixes.
/// @var {list}
$vendor-prefixes: (
'-moz-',
'-webkit-',
'-ms-',
''
);
/// Properties that should be vendorized.
/// Data via caniuse.com, github.com/postcss/autoprefixer, and developer.mozilla.org
/// @var {list}
$vendor-properties: (
// Animation.
'animation',
'animation-delay',
'animation-direction',
'animation-duration',
'animation-fill-mode',
'animation-iteration-count',
'animation-name',
'animation-play-state',
'animation-timing-function',
// Appearance.
'appearance',
// Backdrop filter.
'backdrop-filter',
// Background image options.
'background-clip',
'background-origin',
'background-size',
// Box sizing.
'box-sizing',
// Clip path.
'clip-path',
// Filter effects.
'filter',
// Flexbox.
'align-content',
'align-items',
'align-self',
'flex',
'flex-basis',
'flex-direction',
'flex-flow',
'flex-grow',
'flex-shrink',
'flex-wrap',
'justify-content',
'order',
// Font feature.
'font-feature-settings',
'font-language-override',
'font-variant-ligatures',
// Font kerning.
'font-kerning',
// Fragmented borders and backgrounds.
'box-decoration-break',
// Grid layout.
'grid-column',
'grid-column-align',
'grid-column-end',
'grid-column-start',
'grid-row',
'grid-row-align',
'grid-row-end',
'grid-row-start',
'grid-template-columns',
'grid-template-rows',
// Hyphens.
'hyphens',
'word-break',
// Masks.
'mask',
'mask-border',
'mask-border-outset',
'mask-border-repeat',
'mask-border-slice',
'mask-border-source',
'mask-border-width',
'mask-clip',
'mask-composite',
'mask-image',
'mask-origin',
'mask-position',
'mask-repeat',
'mask-size',
// Multicolumn.
'break-after',
'break-before',
'break-inside',
'column-count',
'column-fill',
'column-gap',
'column-rule',
'column-rule-color',
'column-rule-style',
'column-rule-width',
'column-span',
'column-width',
'columns',
// Object fit.
'object-fit',
'object-position',
// Regions.
'flow-from',
'flow-into',
'region-fragment',
// Scroll snap points.
'scroll-snap-coordinate',
'scroll-snap-destination',
'scroll-snap-points-x',
'scroll-snap-points-y',
'scroll-snap-type',
// Shapes.
'shape-image-threshold',
'shape-margin',
'shape-outside',
// Tab size.
'tab-size',
// Text align last.
'text-align-last',
// Text decoration.
'text-decoration-color',
'text-decoration-line',
'text-decoration-skip',
'text-decoration-style',
// Text emphasis.
'text-emphasis',
'text-emphasis-color',
'text-emphasis-position',
'text-emphasis-style',
// Text size adjust.
'text-size-adjust',
// Text spacing.
'text-spacing',
// Transform.
'transform',
'transform-origin',
// Transform 3D.
'backface-visibility',
'perspective',
'perspective-origin',
'transform-style',
// Transition.
'transition',
'transition-delay',
'transition-duration',
'transition-property',
'transition-timing-function',
// Unicode bidi.
'unicode-bidi',
// User select.
'user-select',
// Writing mode.
'writing-mode',
);
/// Values that should be vendorized.
/// Data via caniuse.com, github.com/postcss/autoprefixer, and developer.mozilla.org
/// @var {list}
$vendor-values: (
// Cross fade.
'cross-fade',
// Element function.
'element',
// Filter function.
'filter',
// Flexbox.
'flex',
'inline-flex',
// Grab cursors.
'grab',
'grabbing',
// Gradients.
'linear-gradient',
'repeating-linear-gradient',
'radial-gradient',
'repeating-radial-gradient',
// Grid layout.
'grid',
'inline-grid',
// Image set.
'image-set',
// Intrinsic width.
'max-content',
'min-content',
'fit-content',
'fill',
'fill-available',
'stretch',
// Sticky position.
'sticky',
// Transform.
'transform',
// Zoom cursors.
'zoom-in',
'zoom-out',
);
// Functions.
/// Removes a specific item from a list.
/// @author Hugo Giraudel
/// @param {list} $list List.
/// @param {integer} $index Index.
/// @return {list} Updated list.
@function remove-nth($list, $index) {
$result: null;
@if type-of($index) != number {
@warn "$index: #{quote($index)} is not a number for `remove-nth`.";
}
@else if $index == 0 {
@warn "List index 0 must be a non-zero integer for `remove-nth`.";
}
@else if abs($index) > length($list) {
@warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`.";
}
@else {
$result: ();
$index: if($index < 0, length($list) + $index + 1, $index);
@for $i from 1 through length($list) {
@if $i != $index {
$result: append($result, nth($list, $i));
}
}
}
@return $result;
}
/// Replaces a substring within another string.
/// @author Hugo Giraudel
/// @param {string} $string String.
/// @param {string} $search Substring.
/// @param {string} $replace Replacement.
/// @return {string} Updated string.
@function str-replace($string, $search, $replace: '') {
$index: str-index($string, $search);
@if $index {
@return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace);
}
@return $string;
}
/// Replaces a substring within each string in a list.
/// @param {list} $strings List of strings.
/// @param {string} $search Substring.
/// @param {string} $replace Replacement.
/// @return {list} Updated list of strings.
@function str-replace-all($strings, $search, $replace: '') {
@each $string in $strings {
$strings: set-nth($strings, index($strings, $string), str-replace($string, $search, $replace));
}
@return $strings;
}
// Mixins.
/// Wraps @content in vendorized keyframe blocks.
/// @param {string} $name Name.
@mixin keyframes($name) {
@-moz-keyframes #{$name} { @content; }
@-webkit-keyframes #{$name} { @content; }
@-ms-keyframes #{$name} { @content; }
@keyframes #{$name} { @content; }
}
/// Vendorizes a declaration's property and/or value(s).
/// @param {string} $property Property.
/// @param {mixed} $value String/list of value(s).
@mixin vendor($property, $value) {
// Determine if property should expand.
$expandProperty: index($vendor-properties, $property);
// Determine if value should expand (and if so, add '-prefix-' placeholder).
$expandValue: false;
@each $x in $value {
@each $y in $vendor-values {
@if $y == str-slice($x, 1, str-length($y)) {
$value: set-nth($value, index($value, $x), '-prefix-' + $x);
$expandValue: true;
}
}
}
// Expand property?
@if $expandProperty {
@each $vendor in $vendor-prefixes {
#{$vendor}#{$property}: #{str-replace-all($value, '-prefix-', $vendor)};
}
}
// Expand just the value?
@elseif $expandValue {
@each $vendor in $vendor-prefixes {
#{$property}: #{str-replace-all($value, '-prefix-', $vendor)};
}
}
// Neither? Treat them as a normal declaration.
@else {
#{$property}: #{$value};
}
}

18
assets/sass/main.scss Normal file
View File

@ -0,0 +1,18 @@
@import 'libs/vars';@import 'libs/functions';@import 'libs/mixins';@import 'libs/vendor';@import 'libs/breakpoints';@import 'libs/html-grid';@import url('fontawesome-all.min.css');@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:400,400italic");$size-header-width:35%;$size-header-pad:4em;//Breakpoints.@include breakpoints((xlarge:(1281px,1800px),large:(981px,1280px),medium:(737px,980px),small:(481px,736px),xsmall:(null,480px),));//Reset.//Based on meyerweb.com/eric/tools/css/reset (v2.0 | 20110126 | License:public domain) html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}
body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none;&:before,&:after{content:'';content:none}}table{border-collapse:collapse;border-spacing:0}body{-webkit-text-size-adjust:none}mark{background-color:transparent;color:inherit}input::-moz-focus-inner{border:0;padding:0}input,select,textarea{-moz-appearance:none;-webkit-appearance:none;-ms-appearance:none;appearance:none}//Set box model to border-box.//Based on css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice html{box-sizing:border-box}*,*:before,*:after{box-sizing:inherit}body{background:_palette(bg);//Stops initial animations until page loads. &.is-preload{*,*:before,*:after{@include vendor('animation','none !important');@include vendor('transition','none !important')}}}body,input,select,textarea{color:_palette(fg);font-family:_font(family);font-size:16pt;font-weight:_font(weight);line-height:1.75em}a{@include vendor('transition',('color #{_duration(transition)} ease-in-out','border-color #{_duration(transition)} ease-in-out'));border-bottom:dotted 1px;color:_palette(accent1,bg);text-decoration:none;&:hover{border-bottom-color:transparent;color:_palette(accent1,bg) !important;text-decoration:none}
}strong,b{color:_palette(fg-bold);font-weight:_font(weight-bold)}em,i{font-style:italic}p{margin:0 0 _size(element-margin) 0}h1,h2,h3,h4,h5,h6{color:_palette(fg-bold);font-weight:_font(weight-bold);line-height:1em;margin:0 0 (_size(element-margin) * 0.5) 0;a{color:inherit;text-decoration:none}}h1{font-size:2em;line-height:1.5em}h2{font-size:1.5em;line-height:1.5em}h3{font-size:1.25em;line-height:1.5em}h4{font-size:1.1em;line-height:1.5em}h5{font-size:.9em;line-height:1.5em}h6{font-size:.7em;line-height:1.5em}sub{font-size:.8em;position:relative;top:.5em}sup{font-size:.8em;position:relative;top:-.5em}hr{border:0;border-bottom:solid 2px _palette(border);//This is the *only* instance where we need to rely on margin collapse. margin:_size(element-margin) 0;&.major{margin:(_size(element-margin)*1.5) 0}}blockquote{border-left:solid 6px _palette(border);font-style:italic;margin:0 0 _size(element-margin) 0;padding:.5em 0 .5em 1.5em}code{background:_palette(border-bg);border-radius:_size(border-radius);border:solid 2px _palette(border);font-family:_font(family-fixed);font-size:.9em;margin:0 .25em;padding:.25em .65em}
pre{-webkit-overflow-scrolling:touch;font-family:_font(family-fixed);font-size:0.9em;margin:0 0 _size(element-margin) 0;code{display:block;line-height:1.75em;padding:1em 1.5em;overflow-x:auto}}.align-left{text-align:left}.align-center{text-align:center}.align-right{text-align:right}.container{margin:0 auto;max-width:calc(100% - #{_size(element-margin)*2});width:_size(container-width);&.xsmall{width:(_size(container-width)*0.25)}&.small{width:(_size(container-width)*0.5)}&.medium{width:(_size(container-width)*0.75)}&.large{width:(_size(container-width)*1.25)}&.xlarge{width:(_size(container-width)*1.5)}&.max{width:100%}@include breakpoint('<=medium'){width:100% !important;max-width:100% !important}@include breakpoint('<=xsmall'){max-width:calc(100% - #{_size(element-margin)*1.5});}}.row{@include html-grid(2.5em);@include breakpoint('<=xlarge'){@include html-grid(2.5em,'xlarge')}@include breakpoint('<=large'){@include html-grid(2em,'large')}@include breakpoint('<=medium'){@include html-grid(2em,'medium')}
@include breakpoint('<=small'){@include html-grid(1.5em,'small')}@include breakpoint('<=xsmall'){@include html-grid(1.5em,'xsmall')}}section,article{&.special{text-align:center}}header{p{color:_palette(fg-light);position:relative;margin:0 0 (_size(element-margin)*0.75) 0}h2+p{font-size:1.25em;margin-top:(_size(element-margin)*-0.5);line-height:1.5em}h3+p{font-size:1.1em;margin-top:(_size(element-margin)*-0.4);line-height:1.5em}h4+p,h5+p,h6+p{font-size:.9em;margin-top:(_size(element-margin)*-0.3);line-height:1.5em}&.major{h2{font-size:2em}}}form{margin:0 0 _size(element-margin) 0}label{color:_palette(fg-bold);display:block;font-size:.9em;font-weight:_font(weight-bold);margin:0 0 (_size(element-margin)*0.5) 0}input[type=text],input[type=password],input[type=email],select,textarea{@include vendor('appearance','none');background:_palette(border-bg);border-radius:_size(border-radius);border:solid 2px transparent;color:inherit;display:block;outline:0;padding:0 0.75em;text-decoration:none;width:100%;&:invalid{box-shadow:none}
&:focus{border-color:_palette(accent1,bg)}}select{background-image:svg-url("<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' preserveAspectRatio='none' viewBox='0 0 40 40'><path d='M9.4,12.3l10.4,10.4l10.4-10.4c0.2-0.2,0.5-0.4,0.9-0.4c0.3,0,0.6,0.1,0.9,0.4l3.3,3.3c0.2,0.2,0.4,0.5,0.4,0.9 c0,0.4-0.1,0.6-0.4,0.9L20.7,31.9c-0.2,0.2-0.5,0.4-0.9,0.4c-0.3,0-0.6-0.1-0.9-0.4L4.3,17.3c-0.2-0.2-0.4-0.5-0.4-0.9 c0-0.4,0.1-0.6,0.4-0.9l3.3-3.3c0.2-0.2,0.5-0.4,0.9-0.4S9.1,12.1,9.4,12.3z' fill='#{_palette(border2)}' /></svg>");background-size:1.25rem;background-repeat:no-repeat;background-position:calc(100% - 1rem) center;height:_size(element-height);padding-right:_size(element-height);text-overflow:ellipsis;option{color:_palette(fg-bold);background:_palette(bg)}&:focus{&::-ms-value{background-color:transparent}}&::-ms-expand{display:none}}input[type=text],input[type=password],input[type=email],select{height:_size(element-height)}textarea{padding:.75em}input[type=checkbox],input[type=radio]{@include vendor('appearance','none');display:block;float:left;margin-right:-2em;opacity:0;width:1em;z-index:-1;&+label{@include icon(false,solid);color:_palette(fg);cursor:pointer;display:inline-block;font-size:1em;font-weight:_font(weight);padding-left:(_size(element-height) * 0.6)+0.75em;padding-right:0.75em;position:relative;&:before{background:_palette(border-bg);border-radius:_size(border-radius);border:solid 2px transparent;content:'';display:inline-block;font-size:.8em;height:(_size(element-height)*0.75);left:0;line-height:(_size(element-height)*0.675);position:absolute;text-align:center;top:0;width:(_size(element-height)*0.75)}
}&:checked+label{&:before{background:_palette(fg-bold);border-color:_palette(fg-bold);color:_palette(bg);content:'\f00c'}}&:focus+label{&:before{border-color:_palette(accent1,bg)}}}input[type=checkbox]{&+label{&:before{border-radius:_size(border-radius)}}}input[type=radio]{&+label{&:before{border-radius:100%}}}::-webkit-input-placeholder{color:_palette(fg-light) !important;opacity:1.0}:-moz-placeholder{color:_palette(fg-light) !important;opacity:1.0}::-moz-placeholder{color:_palette(fg-light) !important;opacity:1.0}:-ms-input-placeholder{color:_palette(fg-light) !important;opacity:1.0}.box{border-radius:_size(border-radius);border:solid 2px _palette(border);margin-bottom:_size(element-margin);padding:1.5em;>:last-child,>:last-child>:last-child,>:last-child>:last-child>:last-child{margin-bottom:0}&.alt{border:0;border-radius:0;padding:0}}.icon{@include icon;border-bottom:none;position:relative;>.label{display:none}&:before{line-height:inherit}&.solid{&:before{font-weight:900}}&.brands{&:before{font-family:'Font Awesome 5 Brands'}
}}.image{border-radius:_size(border-radius);border:0;display:inline-block;position:relative;&:before{@include vendor('transition','opacity #{_duration(transition)} ease-in-out');background:url('images/overlay.png');border-radius:_size(border-radius);content:'';display:block;height:100%;left:0;opacity:.5;position:absolute;top:0;width:100%}&.thumb{text-align:center;&:after{@include vendor('transition','opacity #{_duration(transition)} ease-in-out');border-radius:_size(border-radius);border:solid 3px rgba(255,255,255,.5);color:#121212;content:'View';display:inline-block;font-size:.8em;font-weight:_font(weight-bold);left:50%;line-height:2.25em;margin:-1.25em 0 0 -3em;opacity:0;padding:0 1.5em;position:absolute;text-align:center;text-decoration:none;top:50%;white-space:nowrap}&:hover{&:after{opacity:1.0}&:before{background:url('images/overlay.png'),url('images/overlay.png');opacity:1.0}}}img{border-radius:_size(border-radius);display:block}&.left{float:left;margin:0 1.5em 1em 0;top:.25em}&.right{float:right;margin:0 0 1em 1.5em;top:.25em}
&.left,&.right{max-width:40%;img{width:100%}}&.fit{display:block;margin:0 0 _size(element-margin) 0;width:100%;img{width:100%}}&.avatar{border-radius:100%;&:before{display:none}img{border-radius:100%;width:100%}}}ol{list-style:decimal;margin:0 0 _size(element-margin) 0;padding-left:1.25em;li{padding-left:.25em}}ul{list-style:disc;margin:0 0 _size(element-margin) 0;padding-left:1em;li{padding-left:.5em}&.alt{list-style:none;padding-left:0;li{border-top:solid 2px _palette(border);padding:0.5em 0;&:first-child{border-top:0;padding-top:0}}}}dl{margin:0 0 _size(element-margin) 0}ul.icons{cursor:default;list-style:none;padding-left:0;li{display:inline-block;padding:0 1em 0 0;&:last-child{padding-right:0}.icon{&:before{font-size:1.5em}}}}ul.labeled-icons{list-style:none;padding:0;li{line-height:1.75em;margin:1.5em 0 0 0;padding-left:2.25em;position:relative;&:first-child{margin-top:0}a{color:inherit}h3{color:_palette(fg-light);left:0;position:absolute;text-align:center;top:0;width:1em}}}ul.actions{@include vendor('display','flex');cursor:default;list-style:none;margin-left:(_size(element-margin) * -0.5);padding-left:0;li{padding:0 0 0 (_size(element-margin)*0.5);vertical-align:middle}
&.special{@include vendor('justify-content','center');width:100%;margin-left:0;li{&:first-child{padding-left:0}}}&.stacked{@include vendor('flex-direction','column');margin-left:0;li{padding:(_size(element-margin) * 0.65) 0 0 0;&:first-child{padding-top:0}}}&.fit{width:calc(100%+#{_size(element-margin)*0.5});li{@include vendor('flex-grow','1');@include vendor('flex-shrink','1');width:100%;>*{width:100%}}&.stacked{width:100%}}@include breakpoint('<=xsmall'){&:not(.fixed){@include vendor('flex-direction','column');margin-left:0;width:100% !important;li{@include vendor('flex-grow','1');@include vendor('flex-shrink','1');padding:(_size(element-margin) * 0.5) 0 0 0;text-align:center;width:100%;>*{width:100%}&:first-child{padding-top:0}input[type=submit],input[type=reset],input[type=button],button,.button{width:100%;&.icon{&:before{margin-left:-.5em}}}}}}}.table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}
table{margin:0 0 _size(element-margin) 0;width:100%;tbody{tr{border:solid 1px _palette(border);border-left:0;border-right:0;&:nth-child(2n+1){background-color:_palette(border-bg)}}}td{padding:.75em}th{color:_palette(fg-bold);font-size:.9em;font-weight:_font(weight-bold);padding:0 .75em .75em;text-align:left}thead{border-bottom:solid 2px _palette(border)}tfoot{border-top:solid 2px _palette(border)}&.alt{border-collapse:separate;tbody{tr{td{border:solid 2px _palette(border);border-left-width:0;border-top-width:0;&:first-child{border-left-width:2px}}&:first-child{td{border-top-width:2px}}}}thead{border-bottom:0}tfoot{border-top:0}}}input[type=submit],input[type=reset],input[type=button],.button{@include vendor('appearance','none');@include vendor('transition',('background-color #{_duration(transition)} ease-in-out','color #{_duration(transition)} ease-in-out','border-color #{_duration(transition)} ease-in-out'));background-color:transparent;border-radius:_size(border-radius);border:solid 3px _palette(border);color:_palette(fg-bold) !important;cursor:pointer;display:inline-block;font-weight:_font(weight-bold);height:3.15em;height:calc(2.75em+6px);line-height:2.75em;min-width:10em;padding:0 1.5em;text-align:center;text-decoration:none;white-space:nowrap;&:hover{border-color:_palette(accent1,bg);color:_palette(accent1,bg) !important}
&:active{background-color:transparentize(_palette(accent1,bg),.9);border-color:_palette(accent1,bg);color:_palette(accent1,bg) !important}&.icon{padding-left:1.35em;&:before{margin-right:.5em}}&.fit{min-width:0;width:100%}&.small{font-size:.8em}&.large{font-size:1.35em}&.primary{background-color:_palette(accent1,bg);border-color:_palette(accent1,bg);color:_palette(accent1,fg-bold) !important;&:hover{background-color:lighten(_palette(accent1,bg),5);border-color:lighten(_palette(accent1,bg),5)}&:active{background-color:darken(_palette(accent1,bg),5);border-color:darken(_palette(accent1,bg),5)}}&.disabled,&:disabled{background-color:_palette(border2-bg) !important;border-color:_palette(border2-bg) !important;color:_palette(fg-light) !important;cursor:default}}.work-item{margin:0 0 _size(element-margin) 0;.image{margin:0 0 (_size(element-margin)*0.75) 0}h3{font-size:1em;margin:0 0 (_size(element-margin)*0.25) 0}p{font-size:.8em;line-height:1.5em;margin:0}}#header{@include vendor('display','flex');@include vendor('flex-direction','column');@include vendor('align-items','flex-end');@include vendor('justify-content','space-between');background-color:_palette(accent2,bg);background-attachment:scroll,scroll;background-image:url('images/overlay.png'),url('../../images/bg.jpg');background-position:top left,top left;background-repeat:repeat,no-repeat;background-size:auto,150%;color:_palette(accent2,fg);height:100%;left:0;padding:($size-header-pad * 2) $size-header-pad;position:fixed;text-align:right;top:0;width:$size-header-width;>*{@include vendor('flex-shrink','0');width:100%}
>.inner{@include vendor('flex-grow','1');margin:0 0 ($size-header-pad*0.5) 0}strong,b{color:_palette(accent2,fg-bold)}h2,h3,h4,h5,h6{color:_palette(accent2,fg-bold)}h1{color:_palette(accent2,fg);font-size:1.35em;line-height:1.75em;margin:0}.image.avatar{margin:0 0 (_size(element-margin)*0.5) 0;width:6.25em}}#footer{.icons{margin:(_size(element-margin) * 0.5) 0 0 0;a{color:_palette(accent2,fg-light)}}.copyright{color:_palette(accent2,fg-light);font-size:0.8em;list-style:none;margin:(_size(element-margin) * 0.5) 0 0 0;padding:0;li{border-left:solid 1px _palette(accent2,border);display:inline-block;line-height:1em;margin-left:0.75em;padding-left:0.75em;&:first-child{border-left:0;margin-left:0;padding-left:0}a{color:inherit}}}}#main{margin-left:$size-header-width;max-width:50em+$size-header-pad;padding:($size-header-pad * 2) $size-header-pad $size-header-pad $size-header-pad;width:calc(100% - #{$size-header-width});>section{border-top:solid 2px _palette(border);margin:$size-header-pad 0 0 0;padding:$size-header-pad 0 0 0;&:first-child{border-top:0;margin-top:0;padding-top:0}
}}@include keyframes('spin'){0%{@include vendor('transform','rotate(0deg)')}100%{@include vendor('transform','rotate(360deg)')}};.poptrox-popup{@include vendor('box-sizing','content-box');-webkit-tap-highlight-color:rgba(255,255,255,0);background:#121212;border-radius:_size(border-radius);box-shadow:0 0.1em 0.15em 0 rgba(0,0,0,0.15);overflow:hidden;padding-bottom:3em;.loader{@include icon(false,solid);@include vendor('animation','spin 1s linear infinite');font-size:1.5em;height:1em;left:50%;line-height:1em;margin:-0.5em 0 0 -0.5em;position:absolute;top:50%;width:1em;&:before{content:'\f1ce'}}.caption{background:#121212;bottom:0;cursor:default;font-size:.9em;height:3em;left:0;line-height:2.8em;position:absolute;text-align:center;width:100%;z-index:1}.nav-next,.nav-previous{@include icon(false,solid);@include vendor('transition','opacity #{_duration(transition)} ease-in-out');-webkit-tap-highlight-color:rgba(255,255,255,0);background:rgba(0,0,0,0.01);cursor:pointer;height:100%;opacity:0;position:absolute;top:0;width:50%;&:before{color:#121212;font-size:2.5em;height:1em;line-height:1em;margin-top:-.75em;position:absolute;text-align:center;top:50%;width:1.5em}
}.nav-next{right:0;&:before{content:'\f105';right:0}}.nav-previous{left:0;&:before{content:'\f104';left:0}}.closer{@include icon(false,solid);@include vendor('transition','opacity #{_duration(transition)} ease-in-out');-webkit-tap-highlight-color:rgba(255,255,255,0);color:#121212;height:4em;line-height:4em;opacity:0;position:absolute;right:0;text-align:center;top:0;width:4em;z-index:2;&:before{@include vendor('box-sizing','content-box');border-radius:100%;border:solid 3px rgba(255,255,255,.5);content:'\f00d';display:block;font-size:1em;height:1.75em;left:50%;line-height:1.75em;margin:-.875em 0 0 -.875em;position:absolute;top:50%;width:1.75em}}&:hover{.nav-next,.nav-previous{opacity:0.5;&:hover{opacity:1.0}}.closer{opacity:0.5;&:hover{opacity:1.0}}}}body.is-touch{.image{&.thumb{&:before{opacity:.5 !important}&:after{display:none !important}}}#header{background-attachment:scroll;background-size:auto,cover}.poptrox-popup{.nav-next,.nav-previous,.closer{opacity:1 !important}
}}@include breakpoint('<=xlarge'){body,input,select,textarea{font-size:12pt}}@include breakpoint('<=large'){$size-header-width:30%;$size-header-pad:3em;#header{padding:($size-header-pad * 2) $size-header-pad $size-header-pad $size-header-pad;width:$size-header-width;h1{font-size:1.25em;br{display:none}}>.inner{margin-bottom:0}}#footer{.copyright{li{border-left-width:0;display:block;line-height:2.25em;margin-left:0;padding-left:0}}}#main{margin-left:$size-header-width;max-width:none;padding:($size-header-pad * 2) $size-header-pad $size-header-pad $size-header-pad;width:calc(100% - #{$size-header-width});}}@include breakpoint('<=medium'){$size-header-pad:4em;h1,h2,h3,h4,h5,h6{br{display:none}}ul{&.icons{li{.icon{font-size:1.25em}}}}#header{background-attachment:scroll;background-position:top left,center center;background-size:auto,cover;left:auto;padding:($size-header-pad * 1.5) $size-header-pad;position:relative;text-align:center;top:auto;width:100%;display:block;h1{font-size:1.75em;br{display:inline}
}}#footer{background-attachment:scroll;background-color:_palette(accent2,bg);background-image:url('images/overlay.png'),url('../../images/bg.jpg');background-position:top left,bottom center;background-repeat:repeat,no-repeat;background-size:auto,cover;bottom:auto;left:auto;padding:$size-header-pad $size-header-pad ($size-header-pad * 1.5) $size-header-pad;position:relative;text-align:center;width:100%;.icons{margin:0 0 (_size(element-margin)*0.5) 0}.copyright{margin:0 0 (_size(element-margin) * 0.5) 0;li{border-left-width:1px;display:inline-block;line-height:1em;margin-left:.75em;padding-left:.75em}}}#main{margin:0;padding:($size-header-pad*1.5) $size-header-pad;width:100%}}@include breakpoint('<=small'){$size-header-pad:1.5em;h1{font-size:1.5em}h2{font-size:1.2em}h3{font-size:1em}section,article{&.special{text-align:center}}header{&.major{h2{font-size:1.35em}}}ul{&.labeled-icons{li{padding-left:2em;h3{line-height:1.75em}}}}#header{padding:($size-header-pad * 1.5) $size-header-pad;h1{font-size:1.35em}
}#footer{padding:($size-header-pad*1.5) $size-header-pad}#main{padding:($size-header-pad * 1.5) $size-header-pad (($size-header-pad * 1.5) - _size(element-margin)) $size-header-pad;>section{margin:($size-header-pad*1.5) 0 0 0;padding:($size-header-pad*1.5) 0 0 0}}.poptrox-popup{border-radius:0;.nav-next,.nav-previous{&:before{margin-top:-1em}}}}@include breakpoint('<=xsmall'){$size-header-pad:1.5em;#header{padding:($size-header-pad * 3) $size-header-pad;h1{br{display:none}}}#footer{.copyright{li{border-left-width:0;display:block;line-height:2.25em;margin-left:0;padding-left:0}}}}

76
credits/index.html Normal file
View File

@ -0,0 +1,76 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Credits - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Credits<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<hr>
<h3>Peeps that made this site possible.</h3>
<h3><a href="https://sop.wtf/lzjeu">The Site Backbone</a></h3>
<h3><a href="https://sop.wtf/bd2o7">Footer sync module.</a></h3>
<h3>Avatar By HitsujiGoods</h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

72
deprecated/index.html Normal file
View File

@ -0,0 +1,72 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Page Deprecated - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Page Deprecated<br />
</h2>
</header>
<h2><a href="/">Head On Home</a></h2>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

96
domains/index.html Normal file
View File

@ -0,0 +1,96 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Domains - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<!------------------------>
<script
src="https://code.jquery.com/jquery-3.3.1.js"
integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60="
crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<!--Remaining section-->
<div id="footer"></div>
<!------------------------>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Domains<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<hr>
<h3><a href="https://www.whois.com/whois/sophia.wtf">sophia.wtf</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/sop.wtf">sop.wtf</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/tms.cx">tms.cx</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/theminecraftserver.org">theminecraftserver.org</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/sophiaatkinson.com">sophiaatkinson.com</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/projectfirewatch.com">projectfirewatch.com</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/perlathedog.com">perlathedog.com</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/codsworth.xyz">codsworth.xyz</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/jimsim.dev">jimsim.dev</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/jimsim.network">jimsim.network</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/atkinson.top">atkinson.top</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/satki.net">satki.net</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/thesop.xyz">thesop.xyz</a> (For Sale!)</h3>
<h3><a href="https://www.whois.com/whois/bobatkinson.org">bobatkinson.org</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/oldgate.org">oldgate.org</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/pdx.rocks">pdx.rocks</a> (NOT for Sale)</h3>
<h3><a href="https://www.whois.com/whois/linustechtips.xyz">linustechtips.xyz</a> (NOT for Sale)</h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

BIN
favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
images/Lavatar.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

BIN
images/avatar.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
images/bgs/S6CZF.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 73 KiB

BIN
images/bgs/ekwb.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

BIN
images/favicon.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

BIN
images/launch.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 143 KiB

BIN
images/logo.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 135 KiB

BIN
images/logo.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

BIN
images/oldavatar.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

BIN
images/previews/ab.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.2 KiB

BIN
images/previews/cw.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 102 KiB

BIN
images/previews/jb.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

BIN
images/previews/jsn.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

BIN
images/previews/osrp.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

BIN
images/previews/pf.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

BIN
images/previews/ptd.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

BIN
images/previews/rja.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
images/previews/sop.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 53 KiB

BIN
images/previews/tms.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

BIN
images/sophialul-dark.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

BIN
images/whavatar.webp Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 737 KiB

156
index.html Normal file
View File

@ -0,0 +1,156 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<element hidden>
<a rel="me" href="https://mastodon.lol/@sophia">Mastodon</a>
</element>
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<div id="main">
<section id="intro">
<header class="major">
<h2><span class="typed"></span><br/>
</h2>
</header>
<h4>&#128301; I'm currently working on my GED</h4>
<h4>&#129300; I'm looking for help with Nothing right now.</h4>
<h4>&#128172; Ask me about anything</h4>
<h4>&#128235; How to reach me: Discord <a href="https://sop.wtf/sauser">SophiaXD#3076</a>, or my <a href="mailto:sophialul@protonmail.com">Email</a></h4>
<h4>&#128516; Pronouns: She/Her</h4>
<h4>&#9889; Fun facts about me: trans lass, I have a homelab, I love computers, and I waste alot of money on garbage.</h4>
<h4>&#128421; Node.js, Javascript, Lua, C++, C#, Java, React, PHP, HTML, CSS.</h4>
<h4>
&#128279;
<a href="https://sop.wtf/sastackoverflow">Stackoverflow</a>,
<a href="https://sop.wtf/hiiuo">Status Page</a>,
<a href="https://sop.wtf/sablog">My Blog</a>,
<a href="https://sop.wtf/sawakatime">WakaTime</a>,
<a href="https://sop.wtf/sacs">CodeStats</a>.
</h4>
<ul class="actions">
</ul>
</section>
<section id="toc">
<header class="major">
</header>
<h4><a href="/about/">The About Page</a></h4>
<h4><a href="https://sop.wtf/dkgcx">The News Page</a></h4>
<h4><a href="/domains/">The Domains Page</a></h4>
<h4><a href="/music/">The Music Page</a></h4>
<h4><a href="/support/">The Support Page</a></h4>
<h4><a href="/projects/">The Projects Page</a></h4>
<h4><a href="/credits/">The Credits Page</a></h4>
<ul class="actions">
</ul>
</section>
<section id="two">
<h2>Projects</h2>
<div class="row">
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/rja.webp" class="image fit thumb"><img src="/images/previews/rja.webp" alt="" /></a>
<h3>Robert James Atkinson Jr</h3>
<p>Found it pretty sad that all of the images of my Grandpa were from his Obit, So I made him a site. (<a href="https://bobatkinson.org/">bobatkinson.org</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/sop.webp" class="image fit thumb"><img src="/images/previews/sop.webp" alt="" /></a>
<h3>sop.wtf</h3>
<p>URL Shortening Service, No Ads. No BS. 100% Free. (<a href="https://sop.wtf/">sop.wtf</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/ptd.webp" class="image fit thumb"><img src="/images/previews/ptd.webp" alt="" /></a>
<h3>Perla The Dog</h3>
<p>A Site Dedicated To My Dog. (<a href="https://perlathedog.com/">perlathedog.com</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/pf.webp" class="image fit thumb"><img src="/images/previews/pf.webp" alt="" /></a>
<h3>Project Firewatch</h3>
<p>A Site Dedicated To Firewatch. (<a href="https://projectfirewatch.com/">projectfirewatch.com</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/cw.webp" class="image fit thumb"><img src="/images/previews/cw.webp" alt="" /></a>
<h3>Codsworth The Discord Bot (Discontinued)</h3>
<p>A No-compromises Music Experience For Discord. (<a href="https://web.archive.org/web/20210912053249/https://codsworth.xyz/">codsworth.xyz</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/tms.webp" class="image fit thumb"><img src="/images/previews/tms.webp" alt="" /></a>
<h3>The Minecraft Server</h3>
<p>A community server started in the thick of Covid-19. <a href="https://tms.cx">(tms.cx)</a></p>
</article>
</div>
<div>
<ul class="actions">
<li><a href="/projects/" class="button">See More</a></li>
</ul>
<center>
<a href="https://sop.wtf/w9dtc0" target="_Blank">
<img src="https://sophiaatkinson.com/wp-content/uploads/2022/08/x16899999.jpg" alt="milk" width="100" height="100" />
</a>
</center>
</div>
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
<script src="https://cdn.statically.io/libs/typed.js/2.0.11/typed.min.js"></script>
<script>
var typed = new Typed('.typed', {
strings: ["Welcome to Sophia.WTF", "Please don't drink the milk", "It's mine."],
typeSpeed: 150,
showCursor: false
});
</script>
</body>
</html>

96
music/index.html Normal file
View File

@ -0,0 +1,96 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Music - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Music<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<hr>
<h2>Favorite Songs</h2>
<h3><a href="https://sop.wtf/oxqfn">Fuck U Pal by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/23qa7">Same Boat We Row by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/1u4xa">Baggage by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/lvj8v">Brittle Bones Nicky by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/pdbtt">Brittle Bones Nicky 2 by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/vvxya">Ryan & Dave by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/4g6gq">Full Moon by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/xpbpz">Milk Man by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/6js0i">Gas Mask by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/wn405">I vs I by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/kh6l5">Still Alive (J.C. Mix) by Jonathan Coulton</a></h3>
<h3><a href="https://sop.wtf/nf9om">Want You Gone by Aperture Science Psychoacoustic Laboratories</a></h3>
<hr>
<h2>Favorite Albums</h2>
<h3><a href="https://sop.wtf/l57jf">Jamesy Boy & The Screw Loose Zoo by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/4flj4">Rare Americans 2 by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/mx9a6">Rare Americans by Rare Americans</a></h3>
<h3><a href="https://sop.wtf/1u4xa">Portal 2: Songs to Test by, by Aperture Science Psychoacoustic Laboratories</a></h3>
<hr>
<h2>My Music Vault</h2>
<h3><a href="./vault/2021">2021</a></h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

View File

@ -0,0 +1,90 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Music Archive 2021 - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Music<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<h3><a href="https://www.youtube.com/watch?v=T3bxbVGWy5k">Aoi Shiori by Galileo Galilei</a></h3>
<h3><a href="https://open.spotify.com/album/0LfxOWTVdWR5QSJFUB1Vyz">Sharinno Jiku by Galileo Galilei</a></h3>
<h3><a href="https://open.spotify.com/album/6vDFCF1YqhE5WKzYNSHOs7">Sea and The Darkness by Galileo Galilei</a></h3>
<h3><a href="https://open.spotify.com/album/3WMokB4YijvhsVF8Dz4pTj">warbear by warbear</a></h3>
<h3><a href="https://open.spotify.com/album/13Vr20gOcFUa3tCOLyCdWo">Bubble Gum by warbear</a></h3>
<h3><a href="https://open.spotify.com/album/3qsLi4QGdeHdkT8EkkmMSs">Moon Boots by Bird Bear Hare and Fish</a></h3>
<h3><a href="https://open.spotify.com/album/0t6tvs8YMlkBbE9UFRLDQS">BBHF1 -YOUNG MAN GOES SOUTH- by BBHF</a></h3>
<h3><a href="https://open.spotify.com/album/6yz29OGiI91l36fnJpEkEg?highlight=spotify:track:6RPvbiR4WRqEdDvGD5Bba6">Kakeagatte by BBHF</a></h3>
<h3><a href="https://open.spotify.com/album/0YdnhZUEtjLWLOyqoes01W">Family by BBHF</a></h3>
<h3><a href="https://open.spotify.com/album/5ypryztYkFip8obULYIgeI?highlight=spotify:track:0JUEN89Xy8JZ8ViAAbA4vF">Kuroi Tsubasa no Aidawo by BBHF</a></h3>
<h3><a href="https://open.spotify.com/track/1dsh4buvcBs2u7YtHy29c7?si=18c46c43e07c4a5f">Naimononedari by Kana-Boon</a></h3>
<h3><a href="https://music.apple.com/library/albums/l.xBCqX44">未来茶屋 vol.0 by Yunomi</a></h3>
<h3><a href="https://music.apple.com/library/albums/l.Krch7H2">未来茶屋 vol.1 by Yunomi</a></h3>
<h3><a href="https://music.apple.com/library/albums/l.IlgvWzf">Lockdown (feat. Neona) by Pikasonic, Tatsunoshin</a></h3>
<h3><a href="https://music.apple.com/library/albums/l.p7M6Ej3">Tsuioku (feat. Nakotanmaru) by Pikasonic</a></h3>
<h3>My <a href="https://music.apple.com/library/playlist/p.06aW3YphVZZv0bQ">Playlist</a></h3>
<h3>Soundcloud <a href="https://soundcloud.com/sophialul/likes">favorites</a></h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

114
projects/index.html Normal file
View File

@ -0,0 +1,114 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Projects - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<!-- Header -->
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<section id="two">
<h2>Projects</h2>
<h2><a href="/">Home</a></h2>
<div class="row">
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/rja.webp" class="image fit thumb"><img src="/images/previews/rja.webp" alt="" /></a>
<h3>Robert James Atkinson Jr</h3>
<p>Found it pretty sad that all of the images of my Grandpa were from his Obit, So I made him a site. (<a href="https://bobatkinson.org/">bobatkinson.org</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/sop.webp" class="image fit thumb"><img src="/images/previews/sop.webp" alt="" /></a>
<h3>sop.wtf</h3>
<p>URL Shortening Service, No Ads. No BS. 100% Free. (<a href="https://sop.wtf/">sop.wtf</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/ptd.webp" class="image fit thumb"><img src="/images/previews/ptd.webp" alt="" /></a>
<h3>Perla The Dog</h3>
<p>A Site Dedicated To My Dog. (<a href="https://perlathedog.com/">perlathedog.com</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/pf.webp" class="image fit thumb"><img src="/images/previews/pf.webp" alt="" /></a>
<h3>Project Firewatch</h3>
<p>A Site Dedicated To Firewatch. (<a href="https://projectfirewatch.com/">projectfirewatch.com</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/cw.webp" class="image fit thumb"><img src="/images/previews/cw.webp" alt="" /></a>
<h3>Codsworth The Discord Bot (Discontinued)</h3>
<p>A No-compromises Music Experience For Discord. (<a href="https://web.archive.org/web/20210912053249/https://codsworth.xyz/">codsworth.xyz</a>)</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/tms.webp" class="image fit thumb"><img src="/images/previews/tms.webp" alt="" /></a>
<h3>The Minecraft Server</h3>
<p>A community server started in the thick of Covid-19. <a href="https://tms.cx">(tms.cx)</a></p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/jb.webp" class="image fit thumb"><img src="/images/previews/jb.webp" alt="" /></a>
<h3>Jim Bot (Discontinued)</h3>
<p>A Multipurpose Discord Bot.</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/ab.webp" class="image fit thumb"><img src="/images/previews/ab.webp" alt="" /></a>
<h3>Annoyance Bot (Discontinued)</h3>
<p>Designed To Annoyance People On Discord.</p>
</article>
<article class="col-6 col-12-xsmall work-item">
<a href="/images/previews/osrp.webp" class="image fit thumb"><img src="/images/previews/osrp.webp" alt="" /></a>
<h3>Oregon State Roleplay (Closed)</h3>
<p>A FiveM Roleplay Server.</p>
</article>
</div>
</div>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>

42
robots.txt Normal file
View File

@ -0,0 +1,42 @@
*****************************************************************************************************/
.--.--. ,---, ___
/ / '. ,-.----. ,--.' | ,--, ,--.'|_ .--.,
| : /`. / ,---. \ / \ | | : ,--.'| .---. | | :,' ,--.' \
; | |--` ' ,'\ | : |: : : | |, /. ./| : : ' : | | /\/
| : ;_ / / || | .\ :: | |,--.`--'_ ,--.--. .-'-. ' |.;__,' / : : :
\ \ `. . ; ,. :. : |: || : ' |,' ,'| / \ /___/ \: || | | : | |-,
`----. \' | |: :| | \ :| | /' :' | | .--. .-. | .-'.. ' ' .:__,'| : | : :/|
__ \ \ |' | .; :| : . |' : | | || | : \__\/: . . /___/ \: ' ' : |__ | | .'
/ /`--' /| : |: |`-'| | ' | :' : |__ ," .--.; | . \ ' .\ | | '.'|' : '
'--'. / \ \ / : : : | : :_:,'| | '.'|/ / ,. | __\ \ ' \ | ; : ;| | |
`--'---' `----' | | : | | ,' ; : ; : .' \/ .\ \ |--" | , / | : \
`---'.| `--'' | , /| , .-./\ ; \ \ | ---`-' | |,'
`---` ---`-' `--`---' `--" '---" `--'
*****************************************************************************************************/
User-agent: *
Allow: /
Disallow: /.well-known/*
Disallow: /cgi-bin/*
Disallow: /cdn/*
sitemap: https://sophia.wtf/sitemap.xml
# .__________________________.
# | .___________________. |==|
# | | ................. | | |
# | | ::[ Dear robot ]: | | |
# | | ::::[ be nice ]:: | | |
# | | ::::::::::::::::: | | |
# | | ::::::::::::::::: | | |
# | | ::::::::::::::::: | | |
# | | ::::::::::::::::: | | ,|
# | !___________________! |(c|
# !_______________________!__!
# / \
# / [][][][][][][][][][][][][] \
# / [][][][][][][][][][][][][][] \
#( [][][][][____________][][][][] )
# \ ------------------------------ /
# \______________________________/

78
support/index.html Normal file
View File

@ -0,0 +1,78 @@
<!DOCTYPE HTML>
<!--
Strata by HTML5 UP
html5up.net | @ajlkn
Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
-->
<html>
<head>
<title>Support - Sophia Atkinson</title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
<link rel="stylesheet" href="/assets/css/main.css" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/fork-awesome@1.2.0/css/fork-awesome.min.css" integrity="sha256-XoaMnoYC5TH6/+ihMEnospgm0J1PM/nioxbOUdnM8HY=" crossorigin="anonymous">
<link href="/favicon.ico?v1" rel="icon" type="image/png" />
<meta name="description" content="The Personal Site Of Sophia Atkinson">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:site" content="@SophiaTLDR">
<meta name="twitter:title" content="Sophia Atkinson">
<meta name="twitter:description" content="The Personal Site Of Sophia Atkinson">
<meta name="keywords" content="Sophia, Sophia Atkinson, SophiaWTF, SophiaLUL, Sophia.WTF,">
<meta property="og:url" content="https://sophia.wtf/">
<meta property="og:type" content="website">
<meta property="og:title" content="Sophia Atkinson">
<meta property="og:description" content="The Personal Site Of Sophia Atkinson">
<meta property="og:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="twitter:image" content="https://cdn.statically.io/og/theme=dark/Sophia%20Atkinson.jpg">
<meta name="copyrighted-site-verification" content="8aaab968553ca7ce" />
<script src="https://code.jquery.com/jquery-3.3.1.js" integrity="sha256-2Kok7MbOyxpgUVvAk/HJ2jigOSYS2auK4Pfzbm7uH60=" crossorigin="anonymous">
</script>
<script>
$(function(){
$("#footer").load("/cdn/footer.html");
});
</script>
</head>
<body>
<div id="footer"></div>
</head>
<body class="is-preload">
<header id="header">
<div class="inner">
<a class="image avatar"><img src="https://sophia.wtf/images/avatar.webp" alt="image avatar" /></a>
<h1><strong>I am Sophia, Developer, Computer & Server Enthusiast</strong><br />
</div>
</header>
<!-- Main -->
<div id="main">
<!-- One -->
<section id="one">
<header class="major">
<h2>Support<br />
</h2>
</header>
<h2><a href="/">Home</a></h2>
<hr>
<h3>Domains owned by me are under the same security</h3>
<h3>TLS Versions</h3>
<h3>All Domains Use TLS 1.2 TLS 1.3. <a href="https://caniuse.com/?search=tls%201.3">See Supported Browsers Here.</a></h3>
<h3>I Don't Support TLS 1.0, Or 1.1 As They Are Outdated.</h3>
<h3>Image Formats</h3>
<h3>Home page images use <a href="https://caniuse.com/?search=WebP">WebP</a>, Background stuff is normally JPG.</h3>
<ul class="actions">
</ul>
</section>
<!-- Scripts -->
<script src="/assets/js/jquery.min.js"></script>
<script src="/assets/js/jquery.poptrox.min.js"></script>
<script src="/assets/js/browser.min.js"></script>
<script src="/assets/js/breakpoints.min.js"></script>
<script src="/assets/js/util.js"></script>
<script src="/assets/js/main.js"></script>
<script src="/assets/js/winter.js"></script>
</body>
</html>