core update: move to jekyll for site rendering and share all website files on Github

This commit is contained in:
Bradley Taunt 2020-11-21 13:15:15 -05:00
parent 3d369020ab
commit 41abb0c329
62 changed files with 478 additions and 0 deletions

4
.gitignore vendored Normal file
View file

@ -0,0 +1,4 @@
.jekyll-cache
_site
Gemfile
Gemfile.lock

25
404.html Normal file
View file

@ -0,0 +1,25 @@
---
permalink: /404.html
layout: default
---
<style type="text/css" media="screen">
.container {
margin: 10px auto;
max-width: 600px;
text-align: center;
}
h1 {
margin: 30px 0;
font-size: 4em;
line-height: 1;
letter-spacing: -1px;
}
</style>
<div class="container">
<h1>404</h1>
<p><strong>Page not found :(</strong></p>
<p>The requested page could not be found.</p>
</div>

55
_config.yml Normal file
View file

@ -0,0 +1,55 @@
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely edit after that. If you find
# yourself editing this file very often, consider using Jekyll's data files
# feature for the data you need to update frequently.
#
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
#
# If you need help with YAML syntax, here are some quick references for you:
# https://learn-the-web.algonquindesign.ca/topics/markdown-yaml-cheat-sheet/#yaml
# https://learnxinyminutes.com/docs/yaml/
#
# Site settings
# These are used to personalize your new site. If you look in the HTML files,
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
# You can create any custom variable you would like, and they will be accessible
# in the templates via {{ site.myvariable }}.
title: 1MB Club
description: >- # this means to ignore newlines until "baseurl:"
An exclusive membership for web pages weighing less than 1 megabyte.
baseurl: "" # the subpath of your site, e.g. /blog
url: "" # the base hostname & protocol for your site, e.g. http://example.com
# Collections
collections:
site_listings:
sort_by: size
output: true
# Build settings
plugins:
- jekyll-feed
# Exclude from processing.
# The following items will not be processed, by default.
# Any item listed under the `exclude:` key here will be automatically added to
# the internal "default list".
#
# Excluded items can be processed by explicitly listing the directories or
# their entries' file path in the `include:` list.
#
# exclude:
# - .sass-cache/
# - .jekyll-cache/
# - gemfiles/
# - Gemfile
# - Gemfile.lock
# - node_modules/
# - vendor/bundle/
# - vendor/cache/
# - vendor/gems/
# - vendor/ruby/

4
_includes/footer.html Normal file
View file

@ -0,0 +1,4 @@
<footer>
<p>A small side-project by <a href="https://uglyduck.ca">Bradley Taunt</a><br>
Maintained with &hearts; for a performant web</p>
</footer>

10
_includes/head.html Executable file
View file

@ -0,0 +1,10 @@
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>{{ site.title }}</title>
<meta name="description" content="{{ site.description }}">
<link rel="shortcut icon" href="{{ site.baseurl }}/favicon.png">
<link rel="alternate" type="application/atom+xml" title="{{ site.title }}" href="{{ site.baseurl }}/atom.xml">
<link rel="stylesheet" href="{{ site.baseurl }}/style.css">
</head>

10
_layouts/default.html Executable file
View file

@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="en">
{% include head.html %}
<body>
{{ content }}
{% include footer.html %}
</body>
</html>

6
_layouts/page.html Executable file
View file

@ -0,0 +1,6 @@
---
layout: default
---
{{ content }}

5
_layouts/post.html Executable file
View file

@ -0,0 +1,5 @@
---
layout: default
---
{{ content }}

View file

@ -0,0 +1,29 @@
---
layout: post
title: "Welcome to Jekyll!"
date: 2020-11-21 08:48:36 -0500
categories: jekyll update
---
Youll find this post in your `_posts` directory. Go ahead and edit it and re-build the site to see your changes. You can rebuild the site in many different ways, but the most common way is to run `jekyll serve`, which launches a web server and auto-regenerates your site when a file is updated.
Jekyll requires blog post files to be named according to the following format:
`YEAR-MONTH-DAY-title.MARKUP`
Where `YEAR` is a four-digit number, `MONTH` and `DAY` are both two-digit numbers, and `MARKUP` is the file extension representing the format used in the file. After that, include the necessary front matter. Take a look at the source for this post to get an idea about how it works.
Jekyll also offers powerful support for code snippets:
{% highlight ruby %}
def print_hi(name)
puts "Hi, #{name}"
end
print_hi('Tom')
#=> prints 'Hi, Tom' to STDOUT.
{% endhighlight %}
Check out the [Jekyll docs][jekyll-docs] for more info on how to get the most out of Jekyll. File all bugs/feature requests at [Jekylls GitHub repo][jekyll-gh]. If you have questions, you can ask them on [Jekyll Talk][jekyll-talk].
[jekyll-docs]: https://jekyllrb.com/docs/home
[jekyll-gh]: https://github.com/jekyll/jekyll
[jekyll-talk]: https://talk.jekyllrb.com/

View file

@ -0,0 +1,4 @@
---
pageurl: 1.klose.berlin
size: 133.2
---

View file

@ -0,0 +1,4 @@
---
pageurl: alexanderobenauer.com
size: 183.2
---

View file

@ -0,0 +1,4 @@
---
pageurl: alicegg.tech
size: 955.0
---

View file

@ -0,0 +1,4 @@
---
pageurl: benovermyer.com
size: 133.3
---

View file

@ -0,0 +1,4 @@
---
pageurl: beta.shodan.io
size: 833.7
---

View file

@ -0,0 +1,4 @@
---
pageurl: codelayer.de
size: 199.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: craigslist.org
size: 734.4
---

View file

@ -0,0 +1,4 @@
---
pageurl: cyberia.host
size: 2.0
---

View file

@ -0,0 +1,4 @@
---
pageurl: danielsada.tech
size: 200.9
---

View file

@ -0,0 +1,4 @@
---
pageurl: danluu.com
size: 9.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: dotfilehub.com
size: 7.4
---

View file

@ -0,0 +1,4 @@
---
pageurl: dotnom.com
size: 325.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: example.com
size: 2.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: frontaid.io
size: 167.0
---

View file

@ -0,0 +1,13 @@
#!/bin/sh
#define parameters which are passed in.
SIZE=$1
URL=$2
#define the template.
cat << EOF > $URL.md
---
pageurl: $URL
size: $SIZE
---
EOF

View file

@ -0,0 +1,4 @@
---
pageurl: gif.energy
size: 574.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: gregstoll.com
size: 402.7
---

4
_site_listings/gtf.io.md Normal file
View file

@ -0,0 +1,4 @@
---
pageurl: gtf.io
size: 9.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: iain.in
size: 285.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: ianmobbs.com
size: 64.9
---

View file

@ -0,0 +1,4 @@
---
pageurl: ihaque.org
size: 202.4
---

View file

@ -0,0 +1,4 @@
---
pageurl: john-doe.neocities.org
size: 41.6
---

View file

@ -0,0 +1,4 @@
---
pageurl: jvanelian.dev
size: 23.4
---

View file

@ -0,0 +1,4 @@
---
pageurl: jvelo.at
size: 325.2
---

View file

@ -0,0 +1,4 @@
---
pageurl: krisshamloo.com
size: 356.2
---

View file

@ -0,0 +1,4 @@
---
pageurl: legiblenews.com
size: 25.3
---

View file

@ -0,0 +1,4 @@
---
pageurl: lite.cnn.com
size: 34.4
---

View file

@ -0,0 +1,4 @@
---
pageurl: lobste.rs
size: 157.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: lukeramsden.com
size: 21.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: manpages.bsd.lv
size: 7.9
---

View file

@ -0,0 +1,4 @@
---
pageurl: mataroa.blog
size: 21.9
---

View file

@ -0,0 +1,4 @@
---
pageurl: matthewstrom.com
size: 199.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: minid.net
size: 10.2
---

View file

@ -0,0 +1,4 @@
---
pageurl: news.ycombinator.com
size: 54.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: nicetranslator.com
size: 303.7
---

View file

@ -0,0 +1,4 @@
---
pageurl: playerone.kevincox.ca
size: 6.8
---

View file

@ -0,0 +1,4 @@
---
pageurl: postsheet.com
size: 410.7
---

View file

@ -0,0 +1,4 @@
---
pageurl: restofworld.org
size: 735.8
---

View file

@ -0,0 +1,4 @@
---
pageurl: rowlingindex.org
size: 432.0
---

View file

@ -0,0 +1,4 @@
---
pageurl: sjmulder.nl
size: 2.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: sourcehut.org
size: 116.3
---

View file

@ -0,0 +1,4 @@
---
pageurl: swlkr.com
size: 356.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: text.npr.org
size: 5.6
---

View file

@ -0,0 +1,4 @@
---
pageurl: tuhs.org
size: 145.1
---

View file

@ -0,0 +1,4 @@
---
pageurl: uberspace.de
size: 585.8
---

View file

@ -0,0 +1,4 @@
---
pageurl: uglyduck.ca
size: 24.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: webperf.xyz
size: 94.5
---

View file

@ -0,0 +1,4 @@
---
pageurl: xubuntu.org
size: 225.3
---

View file

@ -0,0 +1,4 @@
---
pageurl: zerodha.com
size: 330.2
---

BIN
favicon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 565 B

13
generate.sh Normal file
View file

@ -0,0 +1,13 @@
#!/bin/sh
#define parameters which are passed in.
SIZE=$1
URL=$2
#define the template.
cat << EOF
---
pageurl: $URL
size: $SIZE
---
EOF

31
index.html Normal file
View file

@ -0,0 +1,31 @@
---
layout: default
title: Articles &amp; Essays
summary: Personal articles, demos and occasional ramblings
---
<header>
<h1>1MB Club</h1>
<p>The internet has become a <em>bloated mess</em>. Massive javascript libraries. Countless client-side queries. Overly complex frontend frameworks.</p>
<p>These things are a <strong>cancerous growth</strong> on the web.</p>
<p>But we can make a difference - no matter how small it may seem. <em>1MB Club</em> is a growing collection of performance-focused web pages found across the internet. The one and only rule for a web page to qualify as a member:</p>
<ol>
<li>Total resources downloaded client-side must not exceed 1 megabyte</li>
</ol>
<blockquote>
<p><strong>Update</strong></p>
<p>Due to the huge number of submissions on initial launch, requesting new sites to be added is temporarily paused. Once the backlog has been worked through, submissions will open up again. Thanks!</p>
</blockquote>
</header>
<main>
<ul>
{% for item in site.site_listings %}
<li>
<span class="before" style="--data-size:{{ item.size }};"></span>
<span class="after">{{ item.size }} kb</span>
<a href="https://{{ item.pageurl }}">{{ item.pageurl }}</a>
</li>
{% endfor %}
</ul>
</main>

81
style.css Normal file
View file

@ -0,0 +1,81 @@
* {
box-sizing: border-box;
}
body {
font: 18px/1.5 "Helvetica", "Arial", sans-serif;
margin: 0 0 4rem 0;
padding: 0 10px;
}
h1,h2,h3,h4,h5,h6 {
line-height: 1.2;
}
header,main,footer {
margin: 0 auto;
max-width: 800px;
width: 100%;
}
a,a:visited {
color: currentColor;
}
a:hover,a:focus {
color: blue;
}
ul {
list-style: none;
margin: 3rem 0 0 0;
padding: 0;
}
ul li {
background: rgba(0,0,0,0.05);
line-height: 1;
margin: 0 0 0.5rem 0;
padding: 15px 10px 12px;
position: relative;
}
ul li span.before,
ul li span.after {
left: 0;
position: absolute;
top: 0;
}
ul li span.before {
background: rgba(0,0,0,0.1);
height: 100%;
width: calc(var(--data-size)/1024 * 100%);
z-index: 0;
}
ul li span.after {
left: auto;
opacity: 0.6;
right: 10px;
top: auto;
}
ul li a {
font-weight: bold;
position: relative;
z-index: 2;
}
blockquote {
background: blanchedalmond;
border-left: 10px solid burlywood;
margin: 3rem 0 2rem;
padding: 20px;
}
blockquote p {
margin: 0;
}
footer {
border-top: 1px solid lightgrey;
margin: 3rem auto 0;
padding: 0.5rem 0 0;
}
footer p {
font-size: 85%;
}