Compare commits

...

6 Commits

12 changed files with 195 additions and 9 deletions

13
.gitignore vendored
View File

@ -1,6 +1,7 @@
# ---> Jekyll
_site/
.sass-cache/
.jekyll-cache/
.jekyll-metadata
*.gem
.bundle
.jekyll-cache
.sass-cache
_site
Gemfile.lock
*.bak

4
Gemfile Normal file
View File

@ -0,0 +1,4 @@
# frozen_string_literal: true
source "https://rubygems.org"
gemspec

View File

@ -1,3 +0,0 @@
# jekyll-theme-basic
An incredibly rudimentary jekyll theme. Paper-thin, nothing but what's needed.

25
_includes/links.lqd.html Normal file
View File

@ -0,0 +1,25 @@
{% if top %}
<hr />
{% endif %}
<p>
{% if top %}
{% for i in basic_theme.header_links %}
<a href="{{ i.href | relative_url }}">{{ i.name }}</a>
{% endfor %}
{% endif %}
</p>
<p>
[<a href="{{ "/" | relative_url }}">Root</a>]
{% if page.previous %}
[<a href="{{ page.previous }}">Previous</a>]
{% endif %}
{% unless page.catagories %}
[<a href="{{ page.catagories | pop | join "/" }}">Up</a>]
{% endunless %}
{% if page.next %}
p<a href="{{ page.next }}">Next</a>]
{% endif %}
</p>
{% if top %}
<hr />
{% endif %}

15
_layouts/bare.lqd.html Normal file
View File

@ -0,0 +1,15 @@
<!DOCTYPE html>
<html>
<head>
{% if page.title %}
<title>{{ page.title }} | {{ site.title }}</title>
{% else %}
<title>{{ site.title }}</title>
{% endif %}
<link rel="stylesheet" type="text/css" href="{{ "main.css" | relative_url }}" />
</head>
<body>
{{ content }}
<hr />
</body>
</html>

24
_layouts/default.lqd.html Normal file
View File

@ -0,0 +1,24 @@
<!DOCTYPE html>
<html>
<head>
{% if page.title %}
<title>{{ page.title }} | {{ site.title }}</title>
{% else %}
<title>{{ site.title }}</title>
{% endif %}
<link rel="stylesheet" type="text/css" href="{{ "main.css" | relative_url }}" />
</head>
<body>
{% if basic_theme.display_title and site.title %}
<h1>{{ site.title }}</h1>
{% endif %}
{% include links.lqd top: true %}
{{ content }}
<hr />
{% if basic.display_info %}
This is {{ site.url }} running Jekyll.
{% endif %}
{% include links.lqd.html top: false %}
<hr />
</body>
</html>

16
_layouts/home.lqd.html Normal file
View File

@ -0,0 +1,16 @@
<!DOCTYPE html>
<html>
<head>
<title>{{ site.title }}</title>
<link rel="stylesheet" type="text/css" href="{{ "main.css" | relative_url }}" />
</head>
<body>
<h1 id="title">{{ site.title }}</h1>
<hr />
{{ content }}
{% if basic.display_info %}
<hr />
<p>This is {{ site.url }} running Jekyll.</p>
{% endif %}
</body>
</html>

19
_layouts/page.lqd.html Normal file
View File

@ -0,0 +1,19 @@
---
layout: default
---
<h2>{{ page.title }}</h2>
<div id="metadata">
<span id="url">{{ page.url }}</span>
{% if page.date %}
<span id="date">{{ page.date }}</span> by <span id="author">{{ page.author }}</span>
{% else %}
By <span id="author">{{ page.author }}</span>
{% endif %}
{% if page.tags %}
Tags: <span id="taglist">{{ page.tags | array_to_sentence_string: "" }}</span>
{% endif %}
</div>
<div id="content">
{{ content }}
</div>

18
_layouts/post.lqd.html Normal file
View File

@ -0,0 +1,18 @@
---
layout: default
---
<h2>{{ page.title }}</h2>
<div id="metadata">
{% if page.date %}
<span id="date">{{ page.date }}</span> by <span id="author">{{ page.author }}</span>
{% else %}
By <span id="author">{{ page.author }}</span>
{% endif %}
{% if page.tags %}
Tags: <span id="taglist">{{ page.tags | array_to_sentence_string: "" }}</span>
{% endif %}
</div>
<div id="content">
{{ content }}
</div>

View File

@ -0,0 +1,15 @@
# frozen_string_literal: true
Gem::Specification.new do |spec|
spec.name = "jekyll-theme-basic"
spec.version = "2"
spec.authors = ["Atlas48"]
spec.email = ["Atlas48@gmx.com"]
spec.summary = "An incredibly rudimentary jekyll theme. Paper-thin, nothing but what's needed."
spec.homepage = "https://git.sdf.org/Atlas48/jekyll-theme-basic"
spec.license = "LGPL-3.0-or-later"
spec.files = `git ls-files -z`.split("\x0").select { |f| f.match(%r!^(assets|_layouts|_includes|_sass|LICENSE|README|_config\.yml)!i) }
spec.add_runtime_dependency "jekyll", "~> 4.2"
end

52
readme.md Normal file
View File

@ -0,0 +1,52 @@
# jekyll-theme-basic
An incredibly rudimentary jekyll theme. Paper-thin, nothing but what's needed for HTML.
You can see it up and running on my [blog](https://atlas48.sdf.org/) and my [website](https://atlas48.neocities.org), which this theme was originally made for.
**NB**: This theme is still being tweaked and developed, and is on a more "rolling release" style of update.
## Layouts
### `default`
The default layout (natch). Has some things surrounding the core content.
### `page`
For non-blog related pages, this contains more content and metadata than default.
### `post`
For blog posts, this has the most metadata out of all the layouts.
### `bare`
Just a basic scaffold, nothing but boilerplate surrounding the content.
### `home`
Intended for use as a landing page. This is a mix between default and post.
## Config
This theme has a few options that one may use. Every option is under the `basic_theme` hierarchy.
### `header_links`
`Array<Object<string>[2]>`
An array of objects with two keys, `href` & `name`. Each sub-object describes a certain link element you want
on the top of the page.
**Example:**
```yaml
basic:
header_links:
- href: https://github.com/Atlas48
name: GitHub
- href: https://atlas48.neocities.org/
name: The Archives
- href: https://mastodon.sdf.org/@atlas48
name: Mastodon
```
### `display_title`
`bool`
Wherever or not to display the site's title at the top of the page.