diff options
| author | s1n <[email protected]> | 2019-07-30 22:10:32 +0200 |
|---|---|---|
| committer | GitHub <[email protected]> | 2019-07-30 22:10:32 +0200 |
| commit | f55bbbe9e997ba27817196d96a033cebef145cd6 (patch) | |
| tree | 2122e7db6f0604d3f456cb8f29a2d5e4f3e67880 | |
| download | veil-f55bbbe9e997ba27817196d96a033cebef145cd6.tar.xz veil-f55bbbe9e997ba27817196d96a033cebef145cd6.zip | |
upload core files
| -rw-r--r-- | Px437_IBM_VGA8.ttf | bin | 0 -> 26068 bytes | |||
| -rw-r--r-- | assets/js/embed/main.js | 26 | ||||
| -rw-r--r-- | assets/js/index/main.js | 12 | ||||
| -rw-r--r-- | css/main.css | 325 | ||||
| -rw-r--r-- | embed.html | 31 | ||||
| -rw-r--r-- | feeds.xml | 13 | ||||
| -rw-r--r-- | index.html | 148 |
7 files changed, 555 insertions, 0 deletions
diff --git a/Px437_IBM_VGA8.ttf b/Px437_IBM_VGA8.ttf Binary files differnew file mode 100644 index 0000000..a8284f1 --- /dev/null +++ b/Px437_IBM_VGA8.ttf diff --git a/assets/js/embed/main.js b/assets/js/embed/main.js new file mode 100644 index 0000000..2f346d2 --- /dev/null +++ b/assets/js/embed/main.js @@ -0,0 +1,26 @@ +// Scrolling Title
+var space = " ";
+var speed = "60";
+var pos = 0;
+var msg = "// Veil ";
+
+function Scroll() {
+ document.title = msg.substring(pos, msg.length) + space + msg.substring(0, pos);
+ pos++;
+ if (pos > msg.length) pos = 0;
+ window.setTimeout("Scroll()", speed);
+}
+Scroll();
+
+// Previous, Random, Next
+if (parent !== window) {
+ const referer = encodeURIComponent(new URL(document.html).origin);
+
+ function fixup(elem) {
+ elem.href = elem.href + "?referer=" + referer;
+ }
+
+ fixup(document.getElementById("prev"));
+ fixup(document.getElementById("random"));
+ fixup(document.getElementById("next"));
+}
\ No newline at end of file diff --git a/assets/js/index/main.js b/assets/js/index/main.js new file mode 100644 index 0000000..f02bab2 --- /dev/null +++ b/assets/js/index/main.js @@ -0,0 +1,12 @@ +var space = " ";
+var speed = "60";
+var pos = 0;
+var msg = "// Veil ";
+
+function Scroll() {
+ document.title = msg.substring(pos, msg.length) + space + msg.substring(0, pos);
+ pos++;
+ if (pos > msg.length) pos = 0;
+ window.setTimeout("Scroll()", speed);
+}
+Scroll();
\ No newline at end of file diff --git a/css/main.css b/css/main.css new file mode 100644 index 0000000..a0aab85 --- /dev/null +++ b/css/main.css @@ -0,0 +1,325 @@ +/*! minireset.css v0.0.5 | MIT License | github.com/jgthms/minireset.css */ +blockquote, body, dd, dl, dt, fieldset, figure, h1, h2, h3, h4, h5, h6, hr, html, iframe, legend, li, ol, p, pre, textarea, ul { + margin: 0; + padding: 0; +} + +h1, h2, h3, h4, h5, h6 { + font-size: 100%; + font-weight: 400; +} + +ul { + list-style: none; +} + +button, input, select, textarea { + margin: 0; +} + +html { + box-sizing: border-box; +} + +*, +:after, + +:before { + box-sizing: inherit; +} + +img, video { + height: auto; + max-width: 100%; +} + +iframe { + border: 0; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} + +td, th { + padding: 0; + text-align: left; +} + +/*! veil.netlify.com/main.css | 0BSD | github.com/s1nical/veil */ +:root { + --black: #000; + --red: #a00; + --green: #0a0; + --yellow: #a50; + --blue: #00a; + --magenta: #a0a; + --cyan: #0aa; + --white: #aaa; + --bright-black: #555; + --bright-red: #f55; + --bright-green: #5f5; + --bright-yellow: #ff5; + --bright-blue: #55f; + --bright-magenta: #f5f; + --bright-cyan: #5ff; + --bright-white: #fff; + --text-color: var(--white); + --text-color-strong: var(--bright-white); + --background-color: var(--black); + --link-color: var(--magenta); + --link-color-hover: var(--bright-magenta); + --header-color: var(--bright-cyan); + --snippet-color: var(--yellow); + --input-color: var(--black); + --input-background-color: var(--bright-white); + --input-color-active: var(--black); + --input-border-color-active: var(--link-color-hover); + --page-width: 84ch; +} + +@font-face { + font-family: IBM VGA8; + src: url(Px437_IBM_VGA8.ttf); +} + +* { + font-family: IBM VGA8, Menlo, Consolas, Roboto Mono, "Ubuntu Monospace", Noto Mono, Oxygen Mono, Liberation Mono, monospace; +} + +:root { + font-size: 16px; + line-height: 1; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.embed { + border: 4px double #fff; + text-align: center; + display: flex; + justify-content: center; + align-items: center; + width: 100%; + height: 100%; +} + +.embed .container { + padding: 1em 2ch; +} + +.ring-nav { + display: flex; + flex-wrap: wrap; + justify-content: space-between; +} + +html { + width: 100%; + height: 100%; +} + +:root { + color: #aaa; + color: var(--text-color); + background: #000; + background: var(--background-color); +} + +.site { + padding: 1em 1ch; +} + +.site .container { + max-width: 84ch; + max-width: var(--page-width); + margin: 0 auto; +} + +.center-block { + padding-left: 2ch; + padding-right: 2ch; + max-width: 72ch; + max-width: calc(var(--page-width) - 12ch); + margin-left: auto; + margin-right: auto; +} + +.section-head, blockquote, footer, form, header, label, p, pre, ul { + display: block; + margin-bottom: 1em; +} + +section { + margin-bottom: 2em; +} + +*>:last-child { + margin-bottom: 0; +} + +ul { + list-style-type: none; + margin-left: 2ch; +} + +ul li:before { + content: "♦ "; +} + +h1, h2 { + color: #5ff; + color: var(--header-color); +} + +h1 { + white-space: nowrap; +} + +.title-item, h1 { + display: inline-block; +} + +.header-colon { + color: #aaa; + color: var(--text-color); + text-decoration: none; +} + +.section-head { + display: block; + width: 100%; + border-bottom: 1px solid #5ff; + border-bottom: 1px solid var(--header-color); + padding-bottom: .5em; +} + +footer { + border-top: 1px solid #5ff; + border-top: 1px solid var(--header-color); + padding-top: .5em; +} + +.members-title, footer { + display: flex; + justify-content: space-between; +} + +.members-title { + flex-wrap: wrap; +} + +.members-list { + list-style: none; + margin-left: 0; +} + +.members-list li { + color: #a0a; + color: var(--link-color); +} + +.members-list li:before { + content: "» "; +} + +a[href] { + color: #a0a; + color: var(--link-color); + text-decoration: none; +} + +a[href]:focus, a[href]:hover { + color: #f5f; + color: var(--link-color-hover); + text-decoration: underline; +} + +pre { + word-wrap: break-word; + white-space: pre-wrap; + color: #a50; + color: var(--snippet-color); + text-align: center; +} + +.form-wrap { + display: flex; + margin: 2em auto; + justify-content: center; +} + +form { + display: flex; + flex-direction: column; + align-content: center; +} + +@media (max-width:72ch) { + label { + flex-direction: column; + } +} + +label { + color: #fff; + color: var(--text-color-strong); + display: flex; + flex-wrap: wrap; + justify-content: space-between; + align-items: center; +} + +button, input[type=text], input[type=url] { + font-size: 1rem; + color: #000; + color: var(--input-color); + background: #fff; + background: var(--input-background-color); + border: 1px solid #000; + border: 1px solid var(--background-color); + outline: none; + box-shadow: none; +} + +input[type=text], input[type=url] { + width: 30ch; + margin-left: 1ch; +} + +input[type=text]:focus, input[type=text]:hover, input[type=url]:focus, input[type=url]:hover { + color: #000; + color: var(--input-color-active); + border: 1px solid #f5f; + border: 1px solid var(--input-border-color-active); +} + +button { + align-self: center; +} + +iframe { + display: block; + margin: auto; +} + +blockquote { + color: #0a0; + color: var(--green); +} + +.quote-attribution { + text-align: right; + white-space: nowrap; +} + +.quote-attribution, .quote-attribution a { + color: #aaa; + color: var(--text-color); +} + +.quote-attribution a:active, .quote-attribution a:hover { + color: #fff; + color: var(--text-color-strong); +}
\ No newline at end of file diff --git a/embed.html b/embed.html new file mode 100644 index 0000000..50cf329 --- /dev/null +++ b/embed.html @@ -0,0 +1,31 @@ +<!doctype html> +<html lang="en"> + + + <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> + + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta http-equiv="X-UA-Compatible" content="ie=edge"> + <link rel="stylesheet" href="css/main.css"> + <base target="_parent"> + <script src="./assets/js/embed/main.js"></script> + </head> + + <body class="embed"> + <div class="container"> + <p> + This site is part of <a href="index.html">Veil</a>, a webring with + 1 member. <!--2 members.--> + </p> + <p class="ring-nav"> + <a href="https://s1n.pw/" aria-label="Go to previous site" id="prev">◄ Previous</a> + <a href="https://s1n.pw/" aria-label="Go to a random site" id="random">Random</a> + <a href="https://s1n.pw/" aria-label="Go to next site" id="next">Next ►</a> + </p> + </div> + </body> + + +</html>
\ No newline at end of file diff --git a/feeds.xml b/feeds.xml new file mode 100644 index 0000000..56059d3 --- /dev/null +++ b/feeds.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<opml version="1.0"> + <head> + <title>Veil Member Feeds</title> + </head> + <body> + + + + + + </body> +</opml> diff --git a/index.html b/index.html new file mode 100644 index 0000000..09bd31e --- /dev/null +++ b/index.html @@ -0,0 +1,148 @@ +<!doctype html> +<html lang="en"> + + + <meta http-equiv="content-type" content="text/html;charset=UTF-8" /> + + <head> + <meta charset="utf-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0"> + <meta http-equiv="X-UA-Compatible" content="ie=edge"> + + <title>Veil</title> + + <link rel="stylesheet" href="css/main.css"> + <link type="application/atom+xml" rel="alternate" href="feeds.xml" title="Veil"> + <script src="./assets/js/index/main.js"></script> + </head> + + <body class="site"> + <div class="container"> + + + <header class="section-head"> + <div class="title-item"> + <h1>Veil Webring</h1><!--<span class="header-colon">:</span>--> + </div> + <!--<div class="title-item">Text after semicolon</div>--> + </header> + + <section> + <blockquote class="center-block"> + <p> + [veil] is the recognition that social liberty is inherently bound up + with material liberty, and that freedom is ultimately a matter of + expanding our capacity and opportunities to engage with the world around + us. it is the realization that our resistance against those social forces + that would subjugate and limit us is but part of a spectrum of efforts to + expand human agency-to facilitate our inquiry and creativity + <span class="quote-attribution"> + --<a href="http://humaniterations.net/2012/01/06/what-is-anarcho-transhumanism/">rechelon</a> + </span> + </p> + </blockquote> + </section> + + <section> + <header class="members-title section-head"> + <h2>Members (2)</h2> + <a href="feeds.xml">RSS Feeds</a> + </header> + <ul class="members-list"> + <li> + <a href="https://s1n.pw/">s1nical | s1n.pw</a> + </li> + <!--<li> + <a href="https://s1n.pw/">s1nical | s1n.pw</a> + </li>--> + </ul> + </section> + + <section> + <h2 class="section-head">What's this?</h2> + <p> + <a href="https://en.wikipedia.org/wiki/Webring">webring</a>, n. ancient technology from the 1990s used to + navigate the internet + </p> + <p> + If you are a: + </p> + <ul> + <li>transhumanist tranny</li> + <li>agender AI</li> + <li>part-time Lain aficionado / full-time faggot</li> + <li>lame queerdo that thinks webrings are neat</li> + </ul> + <p> + then you might want to join. + </p> + </section> + + <section> + <h2 class="section-head">Code of conduct</h2> + <p> + Don't be a piece of shit. + </p> + </section> + + <section> + <h2 class="section-head">How to join</h2> + <p> + To join the webring, pull request + <a href="https://github.com/s1nical/veil">s1nical/veil</a> + with an updated "data/members.json". If you don't have a GitHub account, you + can also use this form to sign up. The webring admin will look at your site + and handle your request. + </p> + <div class="form-wrap"> + <form name='signup' method='POST'><input type='hidden' name='form-name' value='signup' /> + <label> + Site Name: + <input type="text" name="name" required /> + </label> + + <label> + Site URL: + <input type="url" name="url" required /> + </label> + + <label> + RSS Feed URL (optional): + <input type="url" name="feed" /> + </label> + + <div style="visibility:hidden;display:none" aria-hidden="true"> + <label> + Don’t fill this out if you're human: + <input type="text" name="bot" /> + </label> + </div> + + <button type="submit">Give Me Validation</button> + </form> + </div> + <p> + Once you've joined the ring, copy this code snippet into your site: + </p> + <pre + class="center-block"><iframe src="https://veil.netlify.com/embed"></iframe></pre> + <p> + It will render this banner that links to the other members: + </p> + <iframe src="embed.html"></iframe> + </section> + + <footer> + <div> + Anticopyright 2019 + </div> + <div> + <a href="https://github.com/s1nical/veil">Edit me on GitHub</a> + </div> + </footer> + + </div> + </body> + + +</html>
\ No newline at end of file |