Commit Diff


commit - /dev/null
commit + d9e02c9692d989f6dc80d048c1f802eaa66a96a0
blob - /dev/null
blob + 2a1baf9d198441672f3f1d589c5476eacb3562d7 (mode 644)
--- /dev/null
+++ .build.yml
@@ -0,0 +1,22 @@
+image: debian/stable
+oauth: pages.sr.ht/PAGES:RW
+packages:
+  - ruby-full
+  - ruby-dev
+environment:
+  site: ls.bt.ht
+sources:
+  - https://git.sr.ht/~bt/lightspeed
+tasks:
+- install-bundler: |
+    sudo gem install bundler
+- build: |
+    cd lightspeed
+    rm -rf vendor
+    bundle install
+    bundle exec jekyll build
+- package: |
+    cd lightspeed/_site
+    tar -cvz . > ../../site.tar.gz
+- upload: |
+    acurl -f https://pages.sr.ht/publish/$site -Fcontent=@site.tar.gz
\ No newline at end of file
blob - /dev/null
blob + 53c794a90beb447f8b7ba211240d2ad9dd321afa (mode 755)
--- /dev/null
+++ 404.html
@@ -0,0 +1,8 @@
+---
+layout: default
+title: "404: Page not found"
+permalink: 404.html
+---
+
+<h1 class="page-title">404: Page not found</h1>
+<p>Sorry, we've misplaced that URL or it's pointing to something that doesn't exist. <a href="{{ site.baseurl }}/">Head back home</a> to try finding it again.</p>
blob - /dev/null
blob + ca61de51ba0518cbe84baaca642bba3a38196990 (mode 644)
--- /dev/null
+++ Gemfile
@@ -0,0 +1,2 @@
+source "https://rubygems.org"
+gem 'jekyll'
blob - /dev/null
blob + e05f2d59bff982cd66bd585802f858af6cb08f99 (mode 755)
--- /dev/null
+++ LICENSE.md
@@ -0,0 +1,9 @@
+# Released under MIT License
+
+Copyright (c) 2019 Bradley Taunt.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
\ No newline at end of file
blob - /dev/null
blob + 6a54b9a693c0cecc4c4882a989d64d94456c6c94 (mode 644)
--- /dev/null
+++ README.md
@@ -0,0 +1,27 @@
+# lightspeed
+
+An insanely fast and performance-based Jekyll theme. Some fun facts about the theme:
+
+* Perfect score on Google's Lighthouse audit (if that is important to you)
+* Only ~434 bytes of CSS
+* No media queries
+* No JavaScript
+* Probably the fastest Jekyll theme on the Internet
+
+-----
+
+## Live Demo
+
+You can see this Jekyll theme running in the wild here: [https://ls.btxx.org](https://ls.btxx.org)
+
+## Author
+
+**Bradley Taunt**
+
+- Website: [https://btxx.org](https://bt.ht)
+- SourceHut: [https://git.btxx.org/lightspeed](https://git.btxx.org/lightspeed)
+
+
+## License
+
+Open sourced under the [MIT license](LICENSE.md).
blob - /dev/null
blob + 70671dcd957acf5031484a76f012f4a37af22a35 (mode 755)
--- /dev/null
+++ _config.yml
@@ -0,0 +1,26 @@
+# Permalinks
+permalink:           pretty
+
+# Setup
+title:               'Light Speed'
+url:                 https://ls.bt.ht
+tagline:             'Jekyll theme with a perfect Lighthouse score'
+baseurl:             ""
+
+# Assets
+#
+# We specify the directory for Jekyll so we can use @imports.
+sass:
+  sass_dir:          _sass
+  style:            :compressed
+
+# About/contact
+author:
+  name:              Bradley Taunt
+  url:               https://bt.ht
+  email:             brad@bt.ht
+
+# Custom vars
+version:             1.0.0
+github:
+  repo:              https://git.sr.ht/~bt/lightspeed
blob - /dev/null
blob + 9bff1c6cb170789eaa145d40569d3d30d6f0d7a4 (mode 644)
--- /dev/null
+++ _includes/footer.html
@@ -0,0 +1,14 @@
+<footer role="contentinfo">
+    <hr>
+    <nav style="margin-bottom:1rem;" role="navigation">
+        <a href="/about">About</a>
+        <span>&middot;</span>
+        <a href="/atom.xml">RSS</a>
+        <span>&middot;</span>
+        <a href="https://git.sr.ht/~bt/lightspeed">Source on SourceHut</a>
+    </nav>
+    <small>
+        Built with <a href="https://jekyllrb.com/">Jekyll</a> & hosted on <a href="https://srht.site/">SourceHut</a>.<br>
+        Maintained with &hearts; for the web.
+    </small>
+</footer>
blob - /dev/null
blob + f84641be91c428303ae7c31c38e7e3f5f9b55297 (mode 755)
--- /dev/null
+++ _includes/head.html
@@ -0,0 +1,18 @@
+<head>
+  <meta charset="UTF-8">
+  <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+  <title>
+    {% if page.title == "Home" %}
+      {{ site.title }} &middot; {{ site.tagline }}
+    {% else %}
+      {{ page.title }} &middot; {{ site.title }}
+    {% endif %}
+  </title>
+  {% if page.description %}
+    <meta name="description" content="{{ page.description }}">
+  {% endif %}
+  <link rel="icon" href="data:,">
+  <link rel="alternate" type="application/atom+xml" title="{{ site.title }}" href="{{ site.baseurl }}/atom.xml">
+  <style>html,body{background:#fffaf7;color:#2d2d2d;font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";}a,a:visited{color:darkred;text-decoration:none;}a:hover{text-decoration:underline;}main{margin:auto;max-width:38rem;padding:0.8rem;}pre{background:white;overflow:scroll;padding:1rem;}td{border:1px solid #2d2d2d;padding:10px;}img{height:auto;max-width:100%;}@media(max-width:38rem){.homepage-list li a{width:100%;}}</style>
+</head>
blob - /dev/null
blob + 69e9cea00937224220845c114e8bb267b6d59c83 (mode 644)
--- /dev/null
+++ _includes/header.html
@@ -0,0 +1,7 @@
+<header role="banner">
+    <h3 style="margin-top:0;">
+    <a href="{{ site.baseurl }}/" title="Home">{{ site.title }}</a>
+    <br><small>{{ site.tagline }}</small>
+    </h3>
+</header>
+<hr>
blob - /dev/null
blob + 8603d6e034e3ad6da26afbf662fc89abc07481b5 (mode 755)
--- /dev/null
+++ _layouts/default.html
@@ -0,0 +1,15 @@
+<!DOCTYPE html>
+<html lang="en">
+
+  {% include head.html %}
+
+  <body>
+
+    <main id="main" role="main">
+      {% include header.html %}
+      {{ content }}
+      {% include footer.html %}
+    </main>
+    
+  </body>
+</html>
blob - /dev/null
blob + 9c98ae73074d76469cddecdf127dc7afe501bd8d (mode 755)
--- /dev/null
+++ _layouts/page.html
@@ -0,0 +1,8 @@
+---
+layout: default
+---
+
+<article>
+  <h1>{{ page.title }}</h1>
+  {{ content }}
+</article>
blob - /dev/null
blob + 36845cf59f33a00f82403f7a831df7a28dc66954 (mode 755)
--- /dev/null
+++ _layouts/post.html
@@ -0,0 +1,8 @@
+---
+layout: default
+---
+
+<h1>{{ page.title }}</h1>
+<p style="font-size:90%;">Posted on <time datetime="{{ page.date | date_to_xmlschema }}">{{ page.date | date: "%B %-d, %Y" }}</time></p>
+
+{{ content }}
blob - /dev/null
blob + 02b4857d2087a9f571cf924658b0d2b66e16b066 (mode 644)
--- /dev/null
+++ _posts/2019-02-18-hello-world.md
@@ -0,0 +1,13 @@
+---
+layout: post
+title: Hello World!
+description: Post about hello world
+---
+
+Hello World!
+
+This is just a sample post.
+
+Vestibulum imperdiet adipiscing arcu, quis aliquam dolor condimentum dapibus. Aliquam fermentum leo aliquet quam volutpat et molestie mauris mattis. Suspendisse semper consequat velit in suscipit. Praesent blandit, mi id facilisis adipiscing, tortor tellus mollis quam, sed dignissim sapien diam ac lectus. Nunc eget ornare quam. Vivamus sit amet tortor dolor, non egestas ligula. Mauris nisi risus, semper nec blandit id, suscipit eget dolor. Sed placerat odio at erat porttitor varius. Phasellus ornare vestibulum dolor ac rhoncus. Mauris laoreet varius est eu rhoncus. Curabitur facilisis mauris eu purus pharetra vitae tincidunt nulla gravida. Duis sagittis, felis a luctus mattis, metus sem tempus velit, sit amet blandit tellus nisi id augue.
+
+Proin feugiat libero ac lorem mollis fermentum. Cras et lacus sodales nisl facilisis ornare. Sed dolor eros, pulvinar ac varius non, bibendum eget odio. Nulla facilisi. Pellentesque et nisi a tellus ullamcorper faucibus. Nullam sagittis tempor mi non mattis. Proin ultricies, enim sit amet bibendum tristique, ligula ante feugiat nunc, sit amet imperdiet tortor nisl et felis. Pellentesque et nisl dui, non dictum libero. Vivamus tempor ante ac leo suscipit a sodales ligula iaculis. Curabitur massa mi, semper sed bibendum eget, auctor in nulla. Quisque at mi in ligula viverra suscipit sed vitae leo. 
\ No newline at end of file
blob - /dev/null
blob + 72447d5cc06ea52051c8d2784382da56338c34a0 (mode 644)
--- /dev/null
+++ _posts/2019-02-27-using-web-icons.md
@@ -0,0 +1,23 @@
+---
+layout: post
+title: Using the Web Icons
+description: Post about using web icons
+---
+
+This template uses [Typicons][ty] web font, provided by [Fontello][fo] font bundling service. It allows you to quickly add nice icons into your pages by using css tags. 
+
+To add an icon somewhere in the template simply do:
+
+```
+<i class="icon-home"></i>
+```
+
+This will insert a home icon, just as the one seen in the sidebar. The available class names you can use are as follows:
+
+These should work in all the browsers, all the way down to and including IE7, but not IE6.
+
+
+
+[ty]: http://typicons.com/
+[fo]: http://fontello.com/
+
blob - /dev/null
blob + 82e154accc52cf144e2eaa843558ece4c48f243f (mode 644)
--- /dev/null
+++ _posts/2019-03-25-code-snippets.md
@@ -0,0 +1,14 @@
+---
+layout: post
+title: Code Snippets
+description: Post about code snippets
+---
+
+Whenever you need to post a code snippet, use the liquid tags `hilight` and `endhilight` like this:
+
+```
+# some code goes here
+puts "Hello World!"
+```
+
+Note that this only provides color-coding. For that you might need to use a front end colorization engine like Highlight.JS or something similar.
\ No newline at end of file
blob - /dev/null
blob + 034f14d4df7f7c4477c65cf6b8b82e314b4f1850 (mode 644)
--- /dev/null
+++ _posts/2019-03-29-example-of-all-elements.md
@@ -0,0 +1,239 @@
+---
+layout: post
+title: Example of all elements
+description: Post showcasing all elements
+---
+
+# h1 Heading
+## h2 Heading
+### h3 Heading
+#### h4 Heading
+##### h5 Heading
+###### h6 Heading
+
+
+## Horizontal Rules
+
+___
+
+---
+
+***
+
+
+## Typographic replacements
+
+Enable typographer option to see result.
+
+(c) (C) (r) (R) (tm) (TM) (p) (P) +-
+
+test.. test... test..... test?..... test!....
+
+!!!!!! ???? ,,  -- ---
+
+"Smartypants, double quotes" and 'single quotes'
+
+
+## Emphasis
+
+**This is bold text**
+
+__This is bold text__
+
+*This is italic text*
+
+_This is italic text_
+
+~~Strikethrough~~
+
+
+## Blockquotes
+
+
+> Blockquotes can also be nested...
+>> ...by using additional greater-than signs right next to each other...
+> > > ...or with spaces between arrows.
+
+
+## Lists
+
+Unordered
+
++ Create a list by starting a line with `+`, `-`, or `*`
++ Sub-lists are made by indenting 2 spaces:
+  - Marker character change forces new list start:
+    * Ac tristique libero volutpat at
+    + Facilisis in pretium nisl aliquet
+    - Nulla volutpat aliquam velit
++ Very easy!
+
+Ordered
+
+1. Lorem ipsum dolor sit amet
+2. Consectetur adipiscing elit
+3. Integer molestie lorem at massa
+
+
+1. You can use sequential numbers...
+1. ...or keep all the numbers as `1.`
+
+Start numbering with offset:
+
+57. foo
+1. bar
+
+
+## Code
+
+Inline `code`
+
+Indented code
+
+    // Some comments
+    line 1 of code
+    line 2 of code
+    line 3 of code
+
+
+Block code "fences"
+
+```
+Sample text here...
+```
+
+Syntax highlighting
+
+``` js
+var foo = function (bar) {
+  return bar++;
+};
+
+console.log(foo(5));
+```
+
+## Tables
+
+| Option | Description |
+| ------ | ----------- |
+| data   | path to data files to supply the data that will be passed into templates. |
+| engine | engine to be used for processing templates. Handlebars is the default. |
+| ext    | extension to be used for dest files. |
+
+Right aligned columns
+
+| Option | Description |
+| ------:| -----------:|
+| data   | path to data files to supply the data that will be passed into templates. |
+| engine | engine to be used for processing templates. Handlebars is the default. |
+| ext    | extension to be used for dest files. |
+
+
+## Links
+
+[link text](http://dev.nodeca.com)
+
+[link with title](http://nodeca.github.io/pica/demo/ "title text!")
+
+Autoconverted link https://github.com/nodeca/pica (enable linkify to see)
+
+
+## Images
+
+![Minion](https://octodex.github.com/images/minion.png)
+![Stormtroopocat](https://octodex.github.com/images/stormtroopocat.jpg "The Stormtroopocat")
+
+Like links, Images also have a footnote style syntax
+
+![Alt text][id]
+
+With a reference later in the document defining the URL location:
+
+[id]: https://octodex.github.com/images/dojocat.jpg  "The Dojocat"
+
+
+## Plugins
+
+The killer feature of `markdown-it` is very effective support of
+[syntax plugins](https://www.npmjs.org/browse/keyword/markdown-it-plugin).
+
+
+### [Emojies](https://github.com/markdown-it/markdown-it-emoji)
+
+> Classic markup: :wink: :crush: :cry: :tear: :laughing: :yum:
+>
+> Shortcuts (emoticons): :-) :-( 8-) ;)
+
+see [how to change output](https://github.com/markdown-it/markdown-it-emoji#change-output) with twemoji.
+
+
+### [Subscript](https://github.com/markdown-it/markdown-it-sub) / [Superscript](https://github.com/markdown-it/markdown-it-sup)
+
+- 19^th^
+- H~2~O
+
+
+### [\<ins>](https://github.com/markdown-it/markdown-it-ins)
+
+++Inserted text++
+
+
+### [\<mark>](https://github.com/markdown-it/markdown-it-mark)
+
+==Marked text==
+
+
+### [Footnotes](https://github.com/markdown-it/markdown-it-footnote)
+
+Footnote 1 link[^first].
+
+Footnote 2 link[^second].
+
+Inline footnote^[Text of inline footnote] definition.
+
+Duplicated footnote reference[^second].
+
+[^first]: Footnote **can have markup**
+
+    and multiple paragraphs.
+
+[^second]: Footnote text.
+
+
+### [Definition lists](https://github.com/markdown-it/markdown-it-deflist)
+
+Term 1
+
+:   Definition 1
+with lazy continuation.
+
+Term 2 with *inline markup*
+
+:   Definition 2
+
+        { some code, part of Definition 2 }
+
+    Third paragraph of definition 2.
+
+_Compact style:_
+
+Term 1
+  ~ Definition 1
+
+Term 2
+  ~ Definition 2a
+  ~ Definition 2b
+
+
+### [Abbreviations](https://github.com/markdown-it/markdown-it-abbr)
+
+This is HTML abbreviation example.
+
+It converts "HTML", but keep intact partial entries like "xxxHTMLyyy" and so on.
+
+*[HTML]: Hyper Text Markup Language
+
+### [Custom containers](https://github.com/markdown-it/markdown-it-container)
+
+::: warning
+*here be dragons*
+:::
blob - /dev/null
blob + 7389738b9f09c6c6fc78c8bf634fbbb664672dbc (mode 755)
--- /dev/null
+++ about.md
@@ -0,0 +1,25 @@
+---
+layout: page
+title: About This Theme
+description: About the Lightspeed Jekyll theme
+---
+
+Some fun facts about the theme include:
+
+* Perfect score on Google's Lighthouse audit
+* Only ~434 bytes of CSS
+* No media queries
+* No JavaScript
+* Probably the fastest Jekyll theme on the Internet <sup>1</sup>
+
+## Who Made This
+
+I'm Bradley Taunt, a designer/developer hybrid.
+
+My passion lies in implementing minimal CSS, with a focus on accessibility and web performance. This theme started as an experiment to see how much could be stripped away from a website, while still maintaining clean and readable content.
+
+Have questions or suggestions? Feel free to [submit a ticket](https://todo.sr.ht/~bt/lightspeed).
+
+Interested in some of my other open source projects? Check out my [website](https://bt.ht).
+
+<sup>1</sup> <small>[And I base that on absolutely nothing...](https://pbs.twimg.com/media/DtZUpV7WsAAfkeB.jpg)</small>
blob - /dev/null
blob + 0a9e2645e8fca3833b89b34bde3c5514e3d24e5e (mode 755)
--- /dev/null
+++ atom.xml
@@ -0,0 +1,28 @@
+---
+layout: null
+---
+
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom">
+
+ <title>{{ site.title }}</title>
+ <link href="{{ site.url }}{{ site.baseurl }}/atom.xml" rel="self"/>
+ <link href="{{ site.url }}{{ site.baseurl }}/"/>
+ <updated>{{ site.time | date_to_xmlschema }}</updated>
+ <id>{{ site.url }}</id>
+ <author>
+   <name>{{ site.author.name }}</name>
+   <email>{{ site.author.email }}</email>
+ </author>
+
+ {% for post in site.posts %}
+ <entry>
+   <title>{{ post.title | xml_escape }}</title>
+   <link href="{{ site.url }}{{ site.baseurl }}{{ post.url }}"/>
+   <updated>{{ post.date | date_to_xmlschema }}</updated>
+   <id>{{ site.url }}{{ post.id }}</id>
+   <content type="html">{{ post.content | xml_escape }}</content>
+ </entry>
+ {% endfor %}
+
+</feed>
blob - /dev/null
blob + dea768f82920d683c57ddb1d903ee60d68a7f9a9 (mode 755)
--- /dev/null
+++ index.html
@@ -0,0 +1,14 @@
+---
+layout: default
+title: Home
+description: The personal blog of designer and developer Bradley Taunt
+---
+
+<ul class="homepage-list" style="list-style:none;padding:1rem 0;">
+{% for post in site.posts %}
+  <li style="align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:10px;">
+    <a href="{{ site.baseurl }}{{ post.url }}">{{ post.title }}</a>
+    <time style="font-size:90%;" datetime="{{ post.date | date_to_xmlschema }}">{{ post.date | date: "%B %-d, %Y" }}</time>
+  </li>
+{% endfor %}
+</ul>