aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAda Isopods <me@bathynomus.xyz>2024-08-08 01:13:36 -0600
committerAda Isopods <me@bathynomus.xyz>2026-10-21 23:30:20 -0600
commitb58b9832183c5dec8af2dfd580abf3d5d9bdc086 (patch)
tree233b86f73b6cccd20d4b808812d8381335e4a3ec
parent683dfaab7247bfe6fdd989de203f91e68b509a22 (diff)
Created v3 of the site in a subdir, bouta migrate
I guess I also haven't made a commit since doing a couple normal changes. huh
-rw-r--r--art/index.php6
-rw-r--r--credits/index.html2
-rw-r--r--fonts/B612_Mono/OFL.txt93
-rw-r--r--index.php4
-rw-r--r--style.css4
-rw-r--r--v3/aud/index.php56
-rw-r--r--v3/credits/index.php109
-rw-r--r--v3/img/index.php82
-rw-r--r--v3/index.php35
-rw-r--r--v3/license/index.php23
-rw-r--r--v3/style.css195
-rw-r--r--v3/txt/index.php38
-rw-r--r--v3/txt/sys.log1
13 files changed, 640 insertions, 8 deletions
diff --git a/art/index.php b/art/index.php
index 0a54249..4e5735b 100644
--- a/art/index.php
+++ b/art/index.php
@@ -129,16 +129,16 @@ error_reporting(E_ALL);
if($pmt != $mt) {
echo "<style>.d$mt { display: none; } #show$mt:checked ~ .d$mt { display: flex; } #show$mt + label:hover a { cursor: pointer; }</style><input type='checkbox' style='display: none;' id='show$mt'></input>";
$tn = $no;
- if(file_exists("thumbs/$mt.png")) { // Use the same image for the group thumbnail as the first image in the group. If there's a thumbnail named with the date in question, use that instead.
+ if(file_exists("thumbs/$mt.jpg")) { // Use the same image for the group thumbnail as the first image in the group. If there's a thumbnail named with the date in question, use that instead.
$tn = $mt;
}
- echo "<label for='show$mt'><a style='background-image:url(thumbs/$tn.png);'><span>...</span></a></label>";
+ echo "<label for='show$mt'><a style='background-image:url(thumbs/$tn.jpg);'><span>...</span></a></label>";
$pmt = $mt;
}
$cl = " class='d$mt'";
}
- echo "<a href='$im' style='background-image:url(thumbs/$no.png);'$cl><span>$im<br>$mt • $ist</span></a>";
+ echo "<a href='$im' style='background-image:url(thumbs/$no.jpg);'$cl><span>$im<br>$mt • $ist</span></a>";
}
?>
</div>
diff --git a/credits/index.html b/credits/index.html
index a5f861c..4aea1a9 100644
--- a/credits/index.html
+++ b/credits/index.html
@@ -55,7 +55,7 @@
<li>
DAWs
<ul>
- <li title="not used for anything, yet"><a href="https://www.reaper.fm/">REAPER</a></li>
+ <li title="Used for everything after Pimo"><a href="https://www.reaper.fm/">REAPER</a></li>
<li title="used for everything from Nova to Pimo"><a href="https://lmms.io/">LMMS</a></li>
<li title="used for Plot Twist"><a href="https://www.audiotool.com/">Audiotool</a></li>
</ul>
diff --git a/fonts/B612_Mono/OFL.txt b/fonts/B612_Mono/OFL.txt
new file mode 100644
index 0000000..0b5d530
--- /dev/null
+++ b/fonts/B612_Mono/OFL.txt
@@ -0,0 +1,93 @@
+Copyright 2012 The B612 Project Authors (https://github.com/polarsys/b612)
+
+This Font Software is licensed under the SIL Open Font License, Version 1.1.
+This license is copied below, and is also available with a FAQ at:
+https://openfontlicense.org
+
+
+-----------------------------------------------------------
+SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
+-----------------------------------------------------------
+
+PREAMBLE
+The goals of the Open Font License (OFL) are to stimulate worldwide
+development of collaborative font projects, to support the font creation
+efforts of academic and linguistic communities, and to provide a free and
+open framework in which fonts may be shared and improved in partnership
+with others.
+
+The OFL allows the licensed fonts to be used, studied, modified and
+redistributed freely as long as they are not sold by themselves. The
+fonts, including any derivative works, can be bundled, embedded,
+redistributed and/or sold with any software provided that any reserved
+names are not used by derivative works. The fonts and derivatives,
+however, cannot be released under any other type of license. The
+requirement for fonts to remain under this license does not apply
+to any document created using the fonts or their derivatives.
+
+DEFINITIONS
+"Font Software" refers to the set of files released by the Copyright
+Holder(s) under this license and clearly marked as such. This may
+include source files, build scripts and documentation.
+
+"Reserved Font Name" refers to any names specified as such after the
+copyright statement(s).
+
+"Original Version" refers to the collection of Font Software components as
+distributed by the Copyright Holder(s).
+
+"Modified Version" refers to any derivative made by adding to, deleting,
+or substituting -- in part or in whole -- any of the components of the
+Original Version, by changing formats or by porting the Font Software to a
+new environment.
+
+"Author" refers to any designer, engineer, programmer, technical
+writer or other person who contributed to the Font Software.
+
+PERMISSION & CONDITIONS
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Font Software, to use, study, copy, merge, embed, modify,
+redistribute, and sell modified and unmodified copies of the Font
+Software, subject to the following conditions:
+
+1) Neither the Font Software nor any of its individual components,
+in Original or Modified Versions, may be sold by itself.
+
+2) Original or Modified Versions of the Font Software may be bundled,
+redistributed and/or sold with any software, provided that each copy
+contains the above copyright notice and this license. These can be
+included either as stand-alone text files, human-readable headers or
+in the appropriate machine-readable metadata fields within text or
+binary files as long as those fields can be easily viewed by the user.
+
+3) No Modified Version of the Font Software may use the Reserved Font
+Name(s) unless explicit written permission is granted by the corresponding
+Copyright Holder. This restriction only applies to the primary font name as
+presented to the users.
+
+4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
+Software shall not be used to promote, endorse or advertise any
+Modified Version, except to acknowledge the contribution(s) of the
+Copyright Holder(s) and the Author(s) or with their explicit written
+permission.
+
+5) The Font Software, modified or unmodified, in part or in whole,
+must be distributed entirely under this license, and must not be
+distributed under any other license. The requirement for fonts to
+remain under this license does not apply to any document created
+using the Font Software.
+
+TERMINATION
+This license becomes null and void if any of the above conditions are
+not met.
+
+DISCLAIMER
+THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
+COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
+DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
+OTHER DEALINGS IN THE FONT SOFTWARE.
diff --git a/index.php b/index.php
index e3d03a9..180906b 100644
--- a/index.php
+++ b/index.php
@@ -32,12 +32,12 @@
<body>
<section id="main">
<h1 id="header"><span id="headerblue">deep</span> <span id="headergreen">twi</span><span id="headeryellow">sty</span><span id="subheader"><?php echo $cap; ?></span></h1>
- <p style="text-shadow: 0 0 4px black;">i'm a computer musician, 3d artist and programmer who's committed to this alias now.<br>this is a hub for the stuff i make. i hope you like it.</p>
+ <!--p style="text-shadow: 0 0 4px black;">i'm a computer musician, 3d artist and programmer who's committed to this alias now.<br>this is a hub for the stuff i make. i hope you like it.</p-->
<nav id="ext">
<a rel="me" class="bandcamp-color" href="https://deeptwisty.bandcamp.com">bandcamp</a>
<a rel="me" class="youtube-color" href="https://www.youtube.com/@deeptwisty">youtube</a>
<a rel="me" class="itchio-color" href="https://deeptwisty.itch.io">itch.io</a>
- <!--a rel="me" class="patreon-color" href="https://patreon.com/deeptwisty">patreon</a-->
+ <a rel="me" class="kofi-color" href="https://ko-fi.com/deeptwisty">ko-fi</a>
</nav>
<nav id="int">
<a class="white-color" href="/posts">posts</a>
diff --git a/style.css b/style.css
index 0d3a55e..7485045 100644
--- a/style.css
+++ b/style.css
@@ -99,8 +99,8 @@ nav a {
.youtube-color:hover { color: #ff5252 ; text-shadow: 0 0 7px #ff0000 ; }
.itchio-color { color: #fa5c5c; transition-duration: 0.2s; }
.itchio-color:hover { color: #ff8181 ; text-shadow: 0 0 7px #fa5c5c ; }
-.patreon-color { color: #FF424D; transition-duration: 0.2s; }
-.patreon-color:hover { color: #ff656c ; text-shadow: 0 0 7px #FF424D ; }
+.kofi-color { color: #FF5E5B; transition-duration: 0.2s; }
+.kofi-color:hover { color: #ff8684 ; text-shadow: 0 0 7px #FF5E5B ; }
.white-color { color: gainsboro; transition-duration: 0.2s; }
.white-color:hover { color: white; text-shadow: 0 0 7px white;}
diff --git a/v3/aud/index.php b/v3/aud/index.php
new file mode 100644
index 0000000..745a5b5
--- /dev/null
+++ b/v3/aud/index.php
@@ -0,0 +1,56 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <title>/log/aud</title>
+ <link href="../style.css" rel="stylesheet" type="text/css" media="all">
+ <style>
+ article {
+ display: flex;
+ align-items: center;
+ justify-content: space-between;
+ }
+ @media only screen and (hover: none) {
+ article {
+ flex-direction: column;
+ align-items: initial;
+ }
+ audio {
+ margin: 0.5rem;
+ }
+ }
+ </style>
+ </head>
+ <body>
+ <nav><a href="../"><<<</a></nav>
+ <p>$ pwd</p>
+ <h1 class="title">/log/aud</h1>
+ <p>$ ls -t</p>
+ <section class="dir">
+ <?php
+ // Code to automatically populate the page with every mp3 file in the directory.
+ // Should display filename - and date of creation and id3 comment if possible.
+
+ function test_audio($name) { // Returns true if a file is an mp3, false otherwise
+ return (strpos($name, ".mp3") > 0);
+ }
+
+ $files = array_filter(scandir("../../noises/"), "test_audio");
+
+ usort($files, function($a, $b) { // Sort files by modification date of the files
+ return filemtime("../../noises/$b") - filemtime("../../noises/$a");
+ });
+
+ foreach($files as $fi) {
+ //$fitime = filemtime("../../noises/$fi");
+ $fisize = filesize("../../noises/$fi");
+ echo "<article><span>$fi</span><audio controls><source src='../../noises/$fi' type='audio/mpeg'>your browser does not support embedded audio.</audio></article>";
+ }
+ ?>
+ </section>
+ <p>$</p>
+ </body>
+
+</html>
diff --git a/v3/credits/index.php b/v3/credits/index.php
new file mode 100644
index 0000000..356c6aa
--- /dev/null
+++ b/v3/credits/index.php
@@ -0,0 +1,109 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>/inf/credits</title>
+ <link href="../style.css" rel="stylesheet" type="text/css" media="all">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ </head>
+ <body>
+ <nav><a href="../"><<<</a></nav>
+ <p>$ pwd</p>
+ <h1 class="title">/inf/credits</h1>
+ <p>$ ls</p>
+ <nav>
+ <a href="#pimo">pimo.yml</a>
+ <a href="#tetrahead">tetrahead.yml</a>
+ <a href="#nova">nova.yml</a>
+ <a href="#home">home.yml</a>
+ <a href="#plot-twist">plot-twist.yml</a>
+ <a href="#plugins">plugins.yml</a>
+ <a href="#sample-packs">sample-packs.yml</a>
+ <a href="#3d-assets">3d-assets.yml</a>
+ </nav>
+ <p>$ cat pimo.yml</p>
+ <section class="dir">
+ <h2># Pimo</h2>
+ <p>
+ daw: "LMMS"<br>
+ visuals: "Blender"<br>
+ assets:<br>
+ &nbsp;&nbsp;piano: "<a href="https://blendswap.com/blend/29080">https://blendswap.com/blend/29080</a>"<br>
+ &nbsp;&nbsp;pianist: "<a href="https://www.turbosquid.com/3d-models/photorealistic-human-rig-3d-1422553">https://www.turbosquid.com/3d-models/photorealistic-human-rig-3d-1422553</a>"
+ </p>
+ </section>
+ <p>$ cat tetrahead.yml</p>
+ <section class="dir" id="tetrahead">
+ <h2># Tetrahead</h2>
+ <p>
+ daw: "LMMS"<br>
+ visuals: "Blender"<br>
+ assets:<br>
+ &nbsp;&nbsp;bassist: "<a href="https://www.turbosquid.com/3d-models/3d-realistic-musicians-music-model-1653971">https://www.turbosquid.com/3d-models/3d-realistic-musicians-music-model-1653971</a>"
+ </p>
+ </section>
+ <p>$ cat nova.yml</p>
+ <section class="dir" id="nova">
+ <h2># Nova</h2>
+ <p>
+ daw: "LMMS"<br>
+ visuals:<br>
+ &nbsp;&nbsp;- "Paint.NET"<br>
+ &nbsp;&nbsp;- "Shotcut"<br>
+ &nbsp;&nbsp;- "Blender"
+ </p>
+ </section>
+ <p>$ cat home.yml</p>
+ <section class="dir" id="home">
+ <h2># Home</h2>
+ <p>
+ daw: "LMMS"<br>
+ visuals: "Blender"<br>
+ </p>
+ </section>
+ <p>$ cat plot-twist.yml</p>
+ <section class="dir" id="plot-twist">
+ <h2># Plot Twist</h2>
+ <p>
+ daw: "LMMS"<br>
+ visuals:<br>
+ &nbsp;&nbsp;- "Paint.NET"<br>
+ &nbsp;&nbsp;- "Shotcut"
+ </p>
+ </section>
+ <p>$ cat plugins.yml</p>
+ <section class="dir" id="plugins">
+ <h2># Plugins</h2>
+ <p>
+ lmms:<br>
+ &nbsp;&nbsp;- "Synth1"<br>
+ blender:<br>
+ &nbsp;&nbsp;- "Bizualizer"<br>
+ </p>
+ </section>
+ <p>$ cat sample-packs.yml</p>
+ <section class="dir" id="sample-packs">
+ <h2># Sample Packs</h2>
+ <p>
+ packs:<br>
+ &nbsp;&nbsp;- "<a href="https://www.musicradar.com/news/tech/sampleradar-500-free-industrial-samples-504614">https://www.musicradar.com/news/tech/sampleradar-500-free-industrial-samples-504614</a>"<br>
+ &nbsp;&nbsp;- "<a href="https://soundpacks.com/free-sound-packs/80s-retro-futuristic-drum-pack/">https://soundpacks.com/free-sound-packs/80s-retro-futuristic-drum-pack/</a>"<br>
+ &nbsp;&nbsp;- "<a href="https://soundconstraints.com/products/corona-virus-sample-pack">https://soundconstraints.com/products/corona-virus-sample-pack</a>"
+ </p>
+ </section>
+ <p>$ cat 3d-assets.yml</p>
+ <section class="dir" id="3d-assets">
+ <h2># General 3D Assets</h2>
+ <p>
+ sources:<br>
+ &nbsp;&nbsp;- "<a href="https://polyhaven.com/">https://polyhaven.com/</a>"<br>
+ &nbsp;&nbsp;- "<a href="https://ambientcg.com/">https://ambientcg.com/</a>"
+ </p>
+ </section>
+ <p>$</p>
+ <!--a href="." style="margin-top: 1rem; font-size: 0;"><img src="images/button.png" style="width: 88px;"/></a-->
+
+
+ </body>
+</html>
diff --git a/v3/img/index.php b/v3/img/index.php
new file mode 100644
index 0000000..a6cc9fa
--- /dev/null
+++ b/v3/img/index.php
@@ -0,0 +1,82 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <title>/log/img</title>
+ <link href="../style.css" rel="stylesheet" type="text/css" media="all">
+ <style>
+ .dir {
+ padding: 1rem;
+ padding-top: 2rem;
+ }
+ article.imgs {
+ display: flex;
+ flex-wrap: wrap;
+ border-bottom: none;
+ }
+ a.img {
+ display: flex;
+ flex-direction: column;
+ }
+ a.img :is(img, span) {
+ margin: 1rem;
+ }
+ h2 {
+ margin: 1rem;
+ margin-bottom: 0;
+ }
+ </style>
+ </head>
+ <body>
+ <nav><a href="../"><<<</a></nav>
+ <p>$ pwd</p>
+ <h1 class="title">/log/img</h1>
+ <p>$ ls -t</p>
+ <section class="dir">
+ <?php
+ $imagetimes = Array();
+
+ function test_image($name) { // Returns true if a file is an image (png or gif), false otherwise
+ return (strpos($name, ".png") > 0 or strpos($name, ".gif") > 0 or strpos($name, ".jxl") > 0);
+ }
+
+ function imagetime($file) { // This needs to return a Unix timestamp.
+ global $imagetimes;
+ if(!$imagetimes[$file]) {
+ $imagetimes[$file] = filemtime("../../art/".$file);
+ }
+ return $imagetimes[$file];
+ }
+
+ $images = array_filter(scandir("../../art"), "test_image"); // Generate array of every image in the directory by filename
+
+ usort($images, function($a, $b) { // Sort images by modification date of the files
+ return imagetime("$b") - imagetime("$a");
+ });
+
+ $pmt = "";
+ foreach($images as $im) { // Loops through each image and echoes it to the page
+
+ $no = substr($im, 0, strpos($im, ".")); // Filename with extension stripped
+ $mt = date("Y-m-d", imagetime("$im")); // File modification date in ISO format
+ $is = getimagesize("../../art/$im");
+ $ist = $is[0] . "×" . $is[1]; // Image size formatted as X×Ypx
+
+ if($pmt != $mt) {
+ $pmt = $mt;
+ if($pmt != "") {
+ echo "</article>";
+ }
+ echo "<h2>$mt</h2><article class='imgs'>";
+ }
+
+ echo("<a class='img' href='/img/$im'><img src='/img/thumbs/$no.jpg'><span>$im >> $ist</span></a>");
+ }
+ ?>
+ </section>
+ <p>$</p>
+ </body>
+
+</html>
diff --git a/v3/index.php b/v3/index.php
new file mode 100644
index 0000000..0e67cba
--- /dev/null
+++ b/v3/index.php
@@ -0,0 +1,35 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>uServe OS 52.08 LTS "Twisty Tardigrade" Hybrid CLI</title>
+ <meta name="description" content="official website of deep twisty, a musician, we think">
+ <link href="style.css" rel="stylesheet" type="text/css" media="all">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ </head>
+ <body>
+ <p>uServe OS 52.08 "Twisty Tardigrade" Hybrid CLI<br>
+ &copy; 2040-3052 Sysco Systems, Inc.<br>
+ All rights reserved.</p>
+ <p>Welcome.</p>
+ <p>$ hostname -d</p>
+ <h1><span class="title">deep twisty</span><span style="font-size: .75em;">.com</span></h1>
+ <p>$ find / -type d</p>
+ <section class="dir">
+ <h2>NET</h2>
+ <a rel="me" class="bandcamp-color" href="https://deeptwisty.bandcamp.com">://BANDCAMP</a>
+ <a rel="me" class="youtube-color" href="https://www.youtube.com/@deeptwisty">://YOUTUBE</a>
+ <a rel="me" class="itchio-color" href="https://deeptwisty.itch.io">://ITCHIO</a>
+ <a rel="me" class="kofi-color" href="https://ko-fi.com/deeptwisty">://KOFI</a>
+ <h2>LOG</h2>
+ <a href="txt">TXT</a>
+ <a href="img">IMG</a>
+ <a href="aud">AUD</a>
+ <h2>INF</h2>
+ <a href="credits">CREDITS</a>
+ <a href="license">LICENSE</a>
+ </section>
+ <p>$</p>
+ </body>
+</html>
diff --git a/v3/license/index.php b/v3/license/index.php
new file mode 100644
index 0000000..0647ccb
--- /dev/null
+++ b/v3/license/index.php
@@ -0,0 +1,23 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <title>/inf/license</title>
+ <link href="../style.css" rel="stylesheet" type="text/css" media="all">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ </head>
+ <body>
+ <nav><a href="../"><<<</a></nav>
+ <p>$ pwd</p>
+ <h1 class="title">/inf/license</h1>
+ <p>$ cat license.md</p>
+ <section class="dir">
+ <p><a href="https://creativecommons.org/licenses/by-nc-sa/4.0/"><img src="cc4_80x15.png"></a></p>
+ <p>Everything released under the name "deep twisty" is licensed as <a href="https://creativecommons.org/licenses/by-nc-sa/4.0/">CC BY-NC-SA 4.0</a> unless otherwise specified.</p>
+ <p>To request permission for commercial use, contact <a href="mailto:contact@deeptwisty.com">contact@deeptwisty.com</a>.</p>
+ </section>
+ <p>$</p>
+ <!--a href="." style="margin-top: 1rem; font-size: 0;"><img src="images/button.png" style="width: 88px;"/></a-->
+ </body>
+</html>
diff --git a/v3/style.css b/v3/style.css
new file mode 100644
index 0000000..ee75106
--- /dev/null
+++ b/v3/style.css
@@ -0,0 +1,195 @@
+@font-face {
+ font-family: b612_mono;
+ src: url(/fonts/B612_Mono/B612Mono-Regular.ttf);
+}
+@font-face {
+ font-family: b612_mono;
+ src: url(/fonts/B612_Mono/B612Mono-Bold.ttf);
+ font-weight: bold;
+}
+@font-face {
+ font-family: b612_mono;
+ src: url(/fonts/B612_Mono/B612Mono-Italic.ttf);
+ font-style: italic;
+}
+@font-face {
+ font-family: b612_mono;
+ src: url(/fonts/B612_Mono/B612Mono-BoldItalic.ttf);
+ font-weight: bold;
+ font-style: italic;
+}
+
+:root {
+ --blue: #2e1ae0;
+ --green: #00ff00;
+ --yellow: #ffff00;
+ --border: 2px solid white;
+ --boxshadow: 0 0 2px white, 0 0 2px white inset;
+ --gradient: linear-gradient(135deg, var(--blue) 0%, var(--blue) 35%, var(--green) 65%, var(--yellow) 90%);
+}
+
+img {
+ max-width: 100%;
+}
+
+body {
+ font-family: b612_mono, monospace;
+ margin: 5rem;
+ color: white;
+ background: black;
+ width: fit-content;
+ max-width: 90%;
+ text-shadow: 0 0 2px white;
+}
+body::before {
+ content: " ";
+ display: block;
+ position: fixed;
+ top: 0;
+ left: 0;
+ bottom: 0;
+ right: 0;
+ background: linear-gradient(rgba(18, 16, 16, 0) 50%, rgba(0, 0, 0, 0.25) 50%), linear-gradient(90deg, rgba(255, 0, 0, 0.06), rgba(0, 255, 0, 0.02), rgba(0, 0, 255, 0.06));
+ z-index: 2;
+ background-size: 100% 2px, 3px 100%;
+ pointer-events: none;
+ animation: flicker 0.1s infinite;
+}
+
+h1 {
+ font-size: 3em;
+ width: fit-content;
+ text-shadow: none;
+}
+
+.title {
+ font-style: italic;
+ background: var(--gradient);
+ background-clip: text;
+ -webkit-text-fill-color: transparent;
+}
+
+.dir {
+ padding: 2rem;
+ width: fit-content;
+ min-width: 40ch;
+ max-width: 100%;
+ box-sizing: border-box;
+}
+section.dir > *:first-child {
+ margin-top: 0;
+ padding-top: 0;
+}
+section.dir > *:last-child {
+ margin-bottom: 0;
+ padding-bottom: 0;
+}
+section.dir > a {
+ display: block;
+ padding: 0.5rem;
+}
+:is(.dir, nav) {
+ border: var(--border);
+ box-shadow: var(--boxshadow);
+}
+:is(.dir, nav):hover {
+ border-image: var(--gradient) 2;
+}
+
+section article {
+ margin: 0;
+ padding: .5rem 0;
+ border-bottom: 1px solid #fff9;
+}
+article:last-child {
+ border-bottom: none;
+}
+
+a {
+ color: white;
+}
+nav {
+ width: fit-content;
+ display: flex;
+ flex-wrap: wrap;
+}
+nav a {
+ margin: 0;
+ padding: 1rem;
+}
+
+@media only screen and (hover: none) {
+ body {
+ margin: 1rem auto;
+ }
+ .dir {
+ min-width: 0;
+ width: 100%;
+ }
+}
+
+@keyframes flicker {
+ 0% {
+ opacity: 0.27861;
+ }
+ 5% {
+ opacity: 0.34769;
+ }
+ 10% {
+ opacity: 0.23604;
+ }
+ 15% {
+ opacity: 0.90626;
+ }
+ 20% {
+ opacity: 0.18128;
+ }
+ 25% {
+ opacity: 0.83891;
+ }
+ 30% {
+ opacity: 0.65583;
+ }
+ 35% {
+ opacity: 0.67807;
+ }
+ 40% {
+ opacity: 0.26559;
+ }
+ 45% {
+ opacity: 0.84693;
+ }
+ 50% {
+ opacity: 0.96019;
+ }
+ 55% {
+ opacity: 0.08594;
+ }
+ 60% {
+ opacity: 0.20313;
+ }
+ 65% {
+ opacity: 0.71988;
+ }
+ 70% {
+ opacity: 0.53455;
+ }
+ 75% {
+ opacity: 0.37288;
+ }
+ 80% {
+ opacity: 0.71428;
+ }
+ 85% {
+ opacity: 0.70419;
+ }
+ 90% {
+ opacity: 0.7003;
+ }
+ 95% {
+ opacity: 0.36108;
+ }
+ 100% {
+ opacity: 0.24387;
+ }
+} \ No newline at end of file
diff --git a/v3/txt/index.php b/v3/txt/index.php
new file mode 100644
index 0000000..9cb4149
--- /dev/null
+++ b/v3/txt/index.php
@@ -0,0 +1,38 @@
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="UTF-8">
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <title>/log/txt</title>
+ <link href="../style.css" rel="stylesheet" type="text/css" media="all">
+ <style>
+ </style>
+ </head>
+ <body>
+ <nav><a href="../"><<<</a></nav>
+ <p>$ pwd</p>
+ <h1 class="title">/log/txt</h1>
+ <p>$ cat sys.log</p>
+ <section class="dir">
+ <?php
+ $infile = fopen("sys.log", "r") or die("file read error -_-");
+ $content = fread($infile,filesize("sys.log"));
+ fclose($infile);
+ $post_arr = explode("\n",$content);
+ $posts_out = "";
+ foreach($post_arr as $p) {
+ if(strlen($p) > 3) {
+ $date = substr($p, 0, strpos($p, " "));
+ $hdate = date("Y-m-d H:i:s", $date);
+ $pcont = substr($p, strpos($p, " ") + 1);
+ $posts_out = "<article>$hdate >> $pcont</article>$posts_out";
+ }
+ }
+ echo $posts_out;
+ ?>
+ </section>
+ <p>$</p>
+ </body>
+
+</html>
diff --git a/v3/txt/sys.log b/v3/txt/sys.log
new file mode 100644
index 0000000..f204d4b
--- /dev/null
+++ b/v3/txt/sys.log
@@ -0,0 +1 @@
+1723020800 new website dropped \ No newline at end of file