summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--about.html23
-rw-r--r--archetypes/default.md6
-rw-r--r--blog.html25
-rw-r--r--config.toml3
-rw-r--r--contact.html35
-rw-r--r--content/_index.md28
-rw-r--r--content/contact.md10
-rw-r--r--content/cv.md137
-rw-r--r--content/projects/keyboard.md6
-rw-r--r--content/projects/openbsd.md6
-rw-r--r--content/projects/text-recognizer.md7
-rw-r--r--images/no-clown-fiesta.pngbin226524 -> 0 bytes
-rw-r--r--index.html29
-rw-r--r--layouts/_default/list.html11
-rw-r--r--layouts/_default/rss.xml26
-rw-r--r--layouts/_default/single.html5
-rw-r--r--layouts/index.html5
-rw-r--r--layouts/partials/footer.html10
-rw-r--r--layouts/partials/header.html21
-rw-r--r--layouts/partials/nav.html8
-rw-r--r--layouts/partials/nextprev.html10
-rw-r--r--layouts/partials/taglist.html13
-rw-r--r--layouts/shortcodes/hidvid.html10
-rw-r--r--layouts/shortcodes/img.html22
-rw-r--r--layouts/shortcodes/tagcloud.html3
-rw-r--r--layouts/shortcodes/vid.html6
-rwxr-xr-xstatic/emailwiz.sh (renamed from emailwiz.sh)0
-rw-r--r--static/gustafgpg.gpg (renamed from gustafgpg.gpg)0
-rw-r--r--static/images/git.png (renamed from images/git.png)bin2383 -> 2383 bytes
-rw-r--r--static/images/github.png (renamed from images/github.png)bin23729 -> 23729 bytes
-rw-r--r--static/images/gitlab.png (renamed from images/gitlab.png)bin5468 -> 5468 bytes
-rw-r--r--static/images/landchad.gif (renamed from images/landchad.gif)bin15127 -> 15127 bytes
-rw-r--r--static/images/no-clown-fiesta.pngbin0 -> 298973 bytes
-rw-r--r--static/rss.svg1
-rw-r--r--static/style.css98
-rw-r--r--style.css86
36 files changed, 452 insertions, 198 deletions
diff --git a/about.html b/about.html
deleted file mode 100644
index da15df2..0000000
--- a/about.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<!DOCTYPE html>
-<html lang=en>
- <head>
- <title>About Me &ndash; Gustaf Rydholm</title>
- <link rel="stylesheet" type="text/css" href="style.css">
- <meta charset="utf-8">
- </head>
- <body>
- <header>
- <h1>Gustaf Rydholm's Webpage</h1>
- </header>
- <nav>
- <ul>
- <a href="https://gustafrydholm.xyz"><li>Home</li></a>
- <a href="about.html"><li>About</li></a>
- <a href="blog.html"><li>Blog</li></a>
- <a href="contact.html"><li>Contact</li></a>
- </ul>
- </nav>
- <br />
- <p>I am an Electrical Engineer.</p>
- </body>
-</html>
diff --git a/archetypes/default.md b/archetypes/default.md
new file mode 100644
index 0000000..00e77bd
--- /dev/null
+++ b/archetypes/default.md
@@ -0,0 +1,6 @@
+---
+title: "{{ replace .Name "-" " " | title }}"
+date: {{ .Date }}
+draft: true
+---
+
diff --git a/blog.html b/blog.html
deleted file mode 100644
index 1d4b155..0000000
--- a/blog.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<!DOCTYPE html>
-<html lang=en>
- <head>
- <title>Blog &ndash; Gustaf Rydholm</title>
- <link rel="stylesheet" type="text/css" href="style.css">
- <meta charset="utf-8">
- </head>
- <body>
- <header>
- <h1>Gustaf Rydholm's Webpage</h1>
- </header>
- <nav>
- <ul>
- <a href="https://gustafrydholm.xyz"><li>Home</li></a>
- <a href="about.html"><li>About</li></a>
- <a href="blog.html"><li>Blog</li></a>
- <a href="contact.html"><li>Contact</li></a>
- </ul>
- </nav>
- <main>
- <br />
- <p>Hello, world!</p>
- </main>
- </body>
-</html>
diff --git a/config.toml b/config.toml
new file mode 100644
index 0000000..b79c28c
--- /dev/null
+++ b/config.toml
@@ -0,0 +1,3 @@
+baseURL = "http://gustafrydholm.xyz/"
+languageCode = "en-us"
+title = "Gustaf Rydholm's Webpage"
diff --git a/contact.html b/contact.html
deleted file mode 100644
index 9fed617..0000000
--- a/contact.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<!DOCTYPE html>
-<html lang=en>
- <head>
- <title>Contact Me &ndash; Gustaf Rydholm</title>
- <link rel="stylesheet" type="text/css" href="style.css">
- <meta charset="utf-8">
- </head>
- <body>
- <header>
- <h1>Contact Me</h1>
- </header>
- <nav>
- <ul>
- <a href="https://gustafrydholm.xyz"><li>Home</li></a>
- <a href="about.html"><li>About</li></a>
- <a href="blog.html"><li>Blog</li></a>
- <a href="contact.html"><li>Contact</li></a>
- </ul>
- </nav>
- <main>
- <br />
- <h2>Digital Contact Information</h2>
- <ul>
- <li><a href="mailto:gustaf@gustafrydholm.xyz">gustaf@gustafrydholm.xyz</a></li>
- <li>GPG key for encrypting mail if you know how, <a href="../gustafgpg.gpg">here</a> or run:
- <ul>
- <li><code>curl -sL https://gustafrydholm.xyz/gustafgpg.gpg | gpg --import</code></li>
- <li>Fingerprint: <code>90BC 57ED D30F 1392 CD9F D367 2921 DF70 1EE0 3394</code></li>
- <li>All legitimate emails from me will be signed with my GPG key.</li>
- </ul>
- </li>
- </ul>
- </main>
- </body>
-</html>
diff --git a/content/_index.md b/content/_index.md
new file mode 100644
index 0000000..c8700e5
--- /dev/null
+++ b/content/_index.md
@@ -0,0 +1,28 @@
+---
+title: "Gustaf Rydholm's Webpage"
+description: "tbc"
+---
+
+## Introduction
+
+Hello,
+
+I am Gustaf Rydholm and welcome to my plot of cyber land. This website is a
+work in progress, where I will post descriptions of some of my projects, maybe
+book reviews/notes, cv, and digital contact information.
+
+### On this website...
+
+- [Projects](/projects)
+- [Contact](/contact)
+- [CV](/cv)
+
+## Software
+
+I manage my own git server for my own software projects: {{< img style="display:inline" width="5%" link="https://git.gustafrydholm.xyz" src="/images/git.png" >}}
+
+## Acknowledgment
+
+Luke Smith and his [websites](https://lukesmith.xyz/) has been a huge inspiration.
+
+{{< img style="display:inline" link="https://landchad.net" src="/images/landchad.gif" >}}
diff --git a/content/contact.md b/content/contact.md
new file mode 100644
index 0000000..3889a2b
--- /dev/null
+++ b/content/contact.md
@@ -0,0 +1,10 @@
+---
+title: "Contact"
+---
+
+## Digital Contact Information
+
+- [gustaf@gustafrydholm.xyz](mailto:gustaf@gustafrydholm.xyz)
+- All legitimate emails are signed with my gpg [key](/gustafgpg.gpg)
+ - `curl -sL https://gustafrydholm.xyz/gustafgpg.gpg | gpg --import`
+ - Fingerprint: `90BC 57ED D30F 1392 CD9F D367 2921 DF70 1EE0 3394`
diff --git a/content/cv.md b/content/cv.md
new file mode 100644
index 0000000..58a3dfd
--- /dev/null
+++ b/content/cv.md
@@ -0,0 +1,137 @@
+---
+title: "CV"
+---
+
+### About me
+
+I like to tinker with computers/software, learning about good software architecture, and
+mathematics. I am captivated by the beauty of functional programming and I am going
+down the rabbit hole of learning some category theory for the sake of it.
+My current long term goal is to finish developing/deploy my stock trading system.
+In the mean time, I am looking for work where I can enhance my functional
+programming skills and generate value for the shareholders of the company.
+
+### Technical Skills
+
+A short summery of some of my most relevant technical skills.
+
+#### Programming
+
+| Language | Level |
+| -------- | ------------ |
+| Haskell | Intermediate |
+| Python | Fluent |
+| Fennel | Fluent |
+| Lua | Fluent |
+| Shell | Fluent |
+| Rust | Basic |
+| VHDL | Basic |
+| C | Superficial |
+
+#### Markup
+
+| Language | Level |
+| -------- | ------------ |
+| LaTeX | Fluent |
+| markdown | Fluent |
+| HTML | Proficient |
+
+#### Databases
+
+| Type | Implementation |
+| ------------ | --------------------- |
+| NoSQL | MongoDB |
+| SQL | Postgres, TimescaleDB |
+| Memory Cache | Redis |
+| Message bus | Kafka, SQS, Nats |
+
+#### Software
+
+Here is a list some software that might be worth mentioning that I have
+interacted with.
+
+| Name | Level |
+| ---------- | ------------ |
+| Git | Fluent |
+| Kubernetes | Proficient |
+| Helm | Proficient |
+| Terraform | Intermediate |
+| CircleCI | Proficient |
+| Tekton | Proficient |
+| Docker | Fluent |
+| Neovim | Fluent |
+| tmux | Proficient |
+| neomutt | Proficient |
+
+I have plans on learning [Nomad](https://www.nomadproject.io), as this seems to
+be a better copy of k8s. I am also moving to [podman](https://podman.io/)
+next time I work with containers in my spare time. I am also keen working more
+with service meshes, to improve my knowledge of their capabilities.
+
+#### Machine Learning
+
+tbc
+
+#### Operating Systems
+
+I use Artix Linux as my daily OS. However, I would like to transition to OpenBSD
+soon. But, I am a bit afraid of the lack of support for Nvidia GPUs.
+Unfortunately, I use macOS for work.
+
+#### Workflow
+
+I use neovim for all my development, together with dwm as a tiling
+window manager, and st as the terminal of choice. I am very happy with this
+setup, but would like to improve the workflow with increased tmux usage and
+git worktrees, à la [ThePrimeagen](https://www.youtube.com/watch?v=GXxvxSlzJdI).
+I use a ferris sweep keyboard with Colemak Mod-DH layout. I moved on from
+qwerty as I do not believe that you should go through life using suboptimal
+solutions from the past, just because you cannot bother learning something new.
+
+#### Architecture
+
+Good software is like physics, it should avoid too much complexity, like von
+Neumann famously stated, *"With four parameters I can fit an elephant, and with
+five I can make him wiggle his trunk"*. I adhere by the [unix
+philosophy](http://www.catb.org/esr/writings/taoup/html/ch01s06.html), as well
+as the [suckless philosophy](https://suckless.org/philosophy/). I truly believe
+that you develop better software by following these principles.
+
+For designing and implementing distributed web service systems, I really like
+the framework presented in the book *The Tao of Microservices*. Web services
+should almost be provocatively small, most communication between services
+should be asynchronous. You should at all cost avoid building a distributed
+monolith with entangled dependencies.
+
+#### Miscellaneous
+
+| What | Level |
+| --------- | ------------ |
+| Soldering | Intermediate |
+
+### Experience
+
+- Nexure AB.
+ - Software Engineer. Aug 2021 -- Present
+
+ I develop and maintain backend web services (microservices) in the
+ payments/subscription domain. From time to time I also do some
+ infrastructure work in k8s and AWS with terraform.
+
+- Saab AB.
+ - Machine Learning Engineer. Aug 2018 -- Aug 2021
+
+ blablabla
+
+### Institutions
+
+- M.Sc., Electrical Engineering. Kungliga Tekniska Högskolan. 2013 -- 2018
+ - Major in Machine Learning
+
+- Exchange Year. Imperial College London. 2016 -- 2017
+
+- Summer course in Chinese Culture and Language. Dalian University of Technology. 2014
+
+- Economics I. Stockholms universitet. 2013
+
+- Political Science I. Stockholms universitet. 2011
diff --git a/content/projects/keyboard.md b/content/projects/keyboard.md
new file mode 100644
index 0000000..8e32734
--- /dev/null
+++ b/content/projects/keyboard.md
@@ -0,0 +1,6 @@
+---
+title: "Keyboard"
+date: 2022-08-14T00:24:28+02:00
+draft: true
+---
+
diff --git a/content/projects/openbsd.md b/content/projects/openbsd.md
new file mode 100644
index 0000000..354f066
--- /dev/null
+++ b/content/projects/openbsd.md
@@ -0,0 +1,6 @@
+---
+title: "Openbsd"
+date: 2022-08-14T00:20:26+02:00
+draft: true
+---
+
diff --git a/content/projects/text-recognizer.md b/content/projects/text-recognizer.md
new file mode 100644
index 0000000..8ec0c68
--- /dev/null
+++ b/content/projects/text-recognizer.md
@@ -0,0 +1,7 @@
+---
+title: "Text Recognizer"
+date: 2022-08-13T23:56:43+02:00
+draft: false
+---
+
+tbc..
diff --git a/images/no-clown-fiesta.png b/images/no-clown-fiesta.png
deleted file mode 100644
index f611ce6..0000000
--- a/images/no-clown-fiesta.png
+++ /dev/null
Binary files differ
diff --git a/index.html b/index.html
deleted file mode 100644
index 7dc5641..0000000
--- a/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<!DOCTYPE html>
-<html lang=en>
- <head>
- <title>Gustaf Rydholm's Webpage</title>
- <link rel="stylesheet" type="text/css" href="style.css">
- <meta charset="utf-8">
- </head>
- <body>
- <header>
- <h1>Gustaf Rydholm's Webpage</h1>
- </header>
- <nav>
- <ul>
- <a href="https://gustafrydholm.xyz"><li>Home</li></a>
- <a href="about.html"><li>About</li></a>
- <a href="blog.html"><li>Blog</li></a>
- <a href="contact.html"><li>Contact</li></a>
- </ul>
- </nav>
- <main>
- <br />
- <p>Hello, world!</p>
- <p>Various software and scripts I maintain and develop (replication x3):</p>
- <footer><a href="https://git.gustafrydholm.xyz"><li><img src="images/git.png" alt="Private Git Server"></li></a><a href="https://github.com/aktersnurra"><li><img src="images/github.png" alt="GitHub"></li></a><a href="https://gitlab.com/aktersnurra"><li><img src="images/gitlab.png" alt="GitLab"></li></a></footer>
- <p>TBC...</p>
- <footer><a href="https://landchad.net"><img src="images/landchad.gif" alt="LandChad.net"></a></footer>
- </main>
- </body>
-</html>
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
new file mode 100644
index 0000000..b6a63be
--- /dev/null
+++ b/layouts/_default/list.html
@@ -0,0 +1,11 @@
+{{ partial "header.html" . -}}
+<header><h1 id="tag_{{ .Title }}">{{ .Title | title }}</h1></header>
+<article>
+{{ .Content -}}
+<ul>
+{{- range.Pages }}
+ <li><time datetime="{{ .Date.Format "2006-01-02T15:04:05Z07:00" }}">{{ .Date.Format "2006 Jan 02" }}</time> &ndash; <a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
+{{ end -}}
+</ul>
+</article>
+{{- partial "footer.html" . }}
diff --git a/layouts/_default/rss.xml b/layouts/_default/rss.xml
new file mode 100644
index 0000000..9269333
--- /dev/null
+++ b/layouts/_default/rss.xml
@@ -0,0 +1,26 @@
+<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
+ <channel>
+ <title>{{ .Site.Title }}</title>
+ <link>{{ .Permalink }}</link>
+ <description>Recent content {{ if ne .Title .Site.Title }}{{ with .Title }}in {{.}} {{ end }}{{ end }}on {{ .Site.Title }}</description>
+ <generator>Hugo -- gohugo.io</generator>{{ with .Site.LanguageCode }}
+ <language>{{.}}</language>{{end}}{{ with .Site.Author.email }}
+ <managingEditor>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</managingEditor>{{end}}{{ with .Site.Author.email }}
+ <webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</webMaster>{{end}}{{ with .Site.Copyright }}
+ <copyright>{{.}}</copyright>{{end}}{{ if not .Date.IsZero }}
+ <lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate>{{ end }}
+ {{ with .OutputFormats.Get "RSS" }}
+ {{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }}
+ {{ end }}
+ {{ range .Pages }}
+ <item>
+ <title>{{ .Title }}</title>
+ <link>{{ .Permalink }}</link>
+ <pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
+ {{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}}
+ <guid>{{ .Permalink }}</guid>
+ <description>{{- .Content | html -}}</description>
+ </item>
+ {{ end }}
+ </channel>
+</rss>
diff --git a/layouts/_default/single.html b/layouts/_default/single.html
new file mode 100644
index 0000000..43e8c2a
--- /dev/null
+++ b/layouts/_default/single.html
@@ -0,0 +1,5 @@
+{{ partial "header.html" . -}}
+<header><h1>{{ .Title }}</h1></header>
+<article>
+{{ .Content -}}
+{{ partial "footer.html" . }}
diff --git a/layouts/index.html b/layouts/index.html
new file mode 100644
index 0000000..43e8c2a
--- /dev/null
+++ b/layouts/index.html
@@ -0,0 +1,5 @@
+{{ partial "header.html" . -}}
+<header><h1>{{ .Title }}</h1></header>
+<article>
+{{ .Content -}}
+{{ partial "footer.html" . }}
diff --git a/layouts/partials/footer.html b/layouts/partials/footer.html
new file mode 100644
index 0000000..3d1282e
--- /dev/null
+++ b/layouts/partials/footer.html
@@ -0,0 +1,10 @@
+<!-- {{ partial "nextprev.html" . -}} -->
+<!-- {{ partial "taglist.html" . -}} -->
+</article>
+</main>
+<footer>
+ <a href="{{ .Site.BaseURL }}">{{ .Site.BaseURL }}</a><br><br>
+ <a href="/index.xml"><img src="/rss.svg" style="max-height:1.5em" alt="RSS Feed" title="Subscribe via RSS for updates."></a>
+</footer>
+</body>
+</html>
diff --git a/layouts/partials/header.html b/layouts/partials/header.html
new file mode 100644
index 0000000..f304fde
--- /dev/null
+++ b/layouts/partials/header.html
@@ -0,0 +1,21 @@
+<!DOCTYPE html>
+<html lang="{{ .Site.Language }}">
+<head>
+ <title>{{ if not .IsHome }}{{ .Title | title }} | {{ end }}{{ .Site.Title }}</title>
+ <link rel="canonical" href="{{ .Site.BaseURL }}">
+ <link rel='alternate' type='application/rss+xml' title="{{ .Site.Title }} RSS" href='/index.xml'>
+ <link rel='stylesheet' type='text/css' href='/style.css'>
+ {{ with .Site.Params.favicon }}<link rel="icon" href="{{ . }}">
+ {{ end -}}
+ <meta name="description" content="{{ with .Params.description }}{{ . }}{{ else }}{{ .Summary }}{{ end }}">
+ {{ if isset .Params "tags" }}<meta name="keywords" content="{{ with .Params.tags }}{{ delimit . ", " }}{{ end }}">
+ {{ end -}}
+ <meta name="viewport" content="width=device-width, initial-scale=1">
+ <meta name="robots" content="index, follow">
+ <meta charset="utf-8">
+</head>
+<body>
+{{- if .Site.Menus.main }}
+{{ partial "nav.html" . }}
+{{ end }}
+<main>
diff --git a/layouts/partials/nav.html b/layouts/partials/nav.html
new file mode 100644
index 0000000..a7318fe
--- /dev/null
+++ b/layouts/partials/nav.html
@@ -0,0 +1,8 @@
+<nav>
+ <ul>
+ {{- $sec := .Page.Section }}{{ $file := .File.TranslationBaseName -}}
+ {{ range.Site.Menus.main.ByWeight }}{{ $base := path.Base .URL }}
+ <li><a {{ if or ( eq $sec $base ) ( eq $file $base ) ( and (eq $sec "") ( eq $file "_index") (eq $base "/") ) }}class="menuactive" {{ end }}href="{{ .URL }}"><span class=pre>{{ .Pre }}</span><span class=menuname>{{ .Name }}</span></a></li>
+ {{- end }}
+ </ul>
+</nav>
diff --git a/layouts/partials/nextprev.html b/layouts/partials/nextprev.html
new file mode 100644
index 0000000..099f16d
--- /dev/null
+++ b/layouts/partials/nextprev.html
@@ -0,0 +1,10 @@
+{{ if or .Next .Prev -}}
+<div id="nextprev">
+{{- with .Prev }}
+<a href="{{ .RelPermalink}}"><div id="prevart">Previous:<br>{{.Title}}</div></a>
+{{ end -}}
+{{- with .Next -}}
+<a href="{{ .RelPermalink}}"><div id="nextart">Next:<br>{{.Title}}</div></a>
+{{ end -}}
+</div>
+{{ end -}}
diff --git a/layouts/partials/taglist.html b/layouts/partials/taglist.html
new file mode 100644
index 0000000..757db6f
--- /dev/null
+++ b/layouts/partials/taglist.html
@@ -0,0 +1,13 @@
+ {{- if isset .Params "tags" -}}
+ {{- $tagsLen := len .Params.tags -}}
+ {{- if gt $tagsLen 0 -}}
+ <div style="clear:both" class=taglist>
+ {{- with .Site.Params.relatedtext }}{{ . }}<br>{{ end -}}
+ {{- range $k, $v := .Params.tags -}}
+ {{- $url := printf "tags/%s" (. | urlize | lower) -}}
+ <a id="tag_{{ . | lower }}" href="{{ $url | absURL }}">{{ . | title }}</a>
+ {{- if lt $k (sub $tagsLen 1) }} &middot; {{ end -}}
+ {{- end -}}
+ </div>
+ {{- end -}}
+ {{- end }}
diff --git a/layouts/shortcodes/hidvid.html b/layouts/shortcodes/hidvid.html
new file mode 100644
index 0000000..14f592d
--- /dev/null
+++ b/layouts/shortcodes/hidvid.html
@@ -0,0 +1,10 @@
+<details>
+ <summary>Click to reveal video.</summary>
+<iframe src="{{ index .Params 0 }}"
+ loading="lazy"
+ sandbox="allow-same-origin allow-scripts allow-popups"
+ allowfullscreen frameborder="0"
+ class="embvid"
+ title="Embedded Video">
+</iframe>
+</details>
diff --git a/layouts/shortcodes/img.html b/layouts/shortcodes/img.html
new file mode 100644
index 0000000..2df4ff6
--- /dev/null
+++ b/layouts/shortcodes/img.html
@@ -0,0 +1,22 @@
+<!--
+ class: class of the figure
+ link: url the image directs to
+ alt: alternative text
+ caption: caption
+ mouse: what the image says when moused over ("title" in HTML)
+-->
+<figure {{ with .Get "class" }}class="{{.}}"{{ end -}}>
+ {{- with .Get "link"}}<a href="{{.}}">{{ end -}}
+ <img src="{{ .Get "src" }}"
+ {{- with .Get "mouse" }} title="{{.}}"{{ end -}}
+ {{- with .Get "alt" }} alt="{{.}}"{{ end -}}
+ {{- with .Get "width" }} width="{{.}}"{{ end -}}
+ {{- with .Get "style" }} style="{{.}}"{{ end -}}
+ >
+ {{- if .Get "link"}}</a>{{ end -}}
+ {{- with .Get "caption" -}}
+ <figcaption>
+ {{- . -}}
+ </figcaption>
+ {{- end -}}
+</figure>
diff --git a/layouts/shortcodes/tagcloud.html b/layouts/shortcodes/tagcloud.html
new file mode 100644
index 0000000..0cf0118
--- /dev/null
+++ b/layouts/shortcodes/tagcloud.html
@@ -0,0 +1,3 @@
+{{ if isset .Site.Taxonomies "tags" }}{{ if not (eq (len .Site.Taxonomies.tags) 0) }} <ul id="tagcloud">
+ {{ range $name, $items := .Site.Taxonomies.tags }}{{ $url := printf "%s/%s" "tags" ($name | urlize | lower)}}<li><a href="{{ $url | absURL }}" id="tag_{{ $name }}">{{ $name | title }}</a></li>
+ {{ end }}</ul>{{ end }}{{ end }}
diff --git a/layouts/shortcodes/vid.html b/layouts/shortcodes/vid.html
new file mode 100644
index 0000000..4c612fe
--- /dev/null
+++ b/layouts/shortcodes/vid.html
@@ -0,0 +1,6 @@
+<iframe src="{{ index .Params 0 }}"
+ loading="lazy"
+ sandbox="allow-same-origin allow-scripts allow-popups"
+ allowfullscreen frameborder="0"
+ title="Embedded Video">
+</iframe>
diff --git a/emailwiz.sh b/static/emailwiz.sh
index 19bd57f..19bd57f 100755
--- a/emailwiz.sh
+++ b/static/emailwiz.sh
diff --git a/gustafgpg.gpg b/static/gustafgpg.gpg
index 9352534..9352534 100644
--- a/gustafgpg.gpg
+++ b/static/gustafgpg.gpg
diff --git a/images/git.png b/static/images/git.png
index 51f4ae5..51f4ae5 100644
--- a/images/git.png
+++ b/static/images/git.png
Binary files differ
diff --git a/images/github.png b/static/images/github.png
index d5dacf8..d5dacf8 100644
--- a/images/github.png
+++ b/static/images/github.png
Binary files differ
diff --git a/images/gitlab.png b/static/images/gitlab.png
index 1e8f7ad..1e8f7ad 100644
--- a/images/gitlab.png
+++ b/static/images/gitlab.png
Binary files differ
diff --git a/images/landchad.gif b/static/images/landchad.gif
index 302cd26..302cd26 100644
--- a/images/landchad.gif
+++ b/static/images/landchad.gif
Binary files differ
diff --git a/static/images/no-clown-fiesta.png b/static/images/no-clown-fiesta.png
new file mode 100644
index 0000000..8f32f4e
--- /dev/null
+++ b/static/images/no-clown-fiesta.png
Binary files differ
diff --git a/static/rss.svg b/static/rss.svg
new file mode 100644
index 0000000..dfda038
--- /dev/null
+++ b/static/rss.svg
@@ -0,0 +1 @@
+<?xml version="1.0" encoding="iso-8859-1"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"><svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 455.731 455.731" style="enable-background:new 0 0 455.731 455.731;" xml:space="preserve"><g><rect x="0" y="0" style="fill:#F78422;" width="455.731" height="455.731"/><g><path style="fill:#FFFFFF;" d="M296.208,159.16C234.445,97.397,152.266,63.382,64.81,63.382v64.348 c70.268,0,136.288,27.321,185.898,76.931c49.609,49.61,76.931,115.63,76.931,185.898h64.348 C391.986,303.103,357.971,220.923,296.208,159.16z"/><path style="fill:#FFFFFF;" d="M64.143,172.273v64.348c84.881,0,153.938,69.056,153.938,153.939h64.348 C282.429,270.196,184.507,172.273,64.143,172.273z"/><circle style="fill:#FFFFFF;" cx="109.833" cy="346.26" r="46.088"/></g></g></svg>
diff --git a/static/style.css b/static/style.css
new file mode 100644
index 0000000..df4b7ed
--- /dev/null
+++ b/static/style.css
@@ -0,0 +1,98 @@
+body {
+ background: #033 ;
+ color: brown ;
+ max-width: 850px ;
+ margin: auto ;
+ padding: 0 16px ;
+ margin-bottom: 500px ;
+ scrollbar-color: gray #151515;
+ font-family: sans-serif ;
+}
+
+main {
+ max-width: 800px ;
+ margin: auto ;
+}
+
+main > article {
+ background: #88afa2 ;
+ color: #151515 ;
+ margin-bottom: 0 ;
+ padding: 3.5em ;
+ border-color: #1e4e76 ;
+ border-width: 0.25em 0.25em 0.25em .25em ;
+ border-style: solid ;
+ text-align: justify;
+ border-radius: 0 ;
+ margin: auto ;
+}
+
+img {
+ max-width: 100% ;
+}
+
+header h1 {
+ text-align: center ;
+ text-shadow: 3px 0 black, 3px 3px black, 0 3px black;
+}
+
+h1 {
+ border-style: solid ;
+ border-width: 0px 0px 2px 0px ;
+ text-align: center ;
+}
+
+h2 {
+ color: #151515 ;
+ text-align: center ;
+}
+
+footer {
+ max-width: 300px ;
+ background: #88afa2 ;
+ margin-left: auto ;
+ margin-right: auto ;
+ margin-top: -4px ;
+ text-align: center ;
+ clear: both ;
+ border-color: #1e4e76 ;
+ border-width: 0em 0.25em 0.25em 0.25em ;
+ border-style: solid ;
+ border-radius: 0 0 0 0 ;
+}
+
+code {
+ color: #373737 ;
+ overflow-wrap: break-word ;
+ font-size: 10pt ;
+}
+
+/* For TAGLIST.HTML */
+.taglist {
+ text-align: center ;
+ clear: both ;
+}
+
+/* For NEXTPREV.HTML */
+#nextprev {
+ /* The container for both the previous and next articles. */
+}
+
+#prevart {
+ float: left ;
+ text-align: left ;
+}
+
+#nextart {
+ float: right ;
+ text-align: right ;
+}
+
+#nextart,#prevart {
+ max-width: 33% ;
+}
+
+table, th, td {
+ width: 400px ;
+ border: 1px solid;
+}
diff --git a/style.css b/style.css
deleted file mode 100644
index 1d1bfc7..0000000
--- a/style.css
+++ /dev/null
@@ -1,86 +0,0 @@
-body {
- text-align: justify;
- font-style: sans-serif ;
- max-width: 600px ;
- margin-left: auto ;
- margin-right: auto ;
-}
-
-h1 {
- text-align: center ;
-}
-
-ul, ol {
- margin-left: 20px;
- margin-right: 20px;
- padding-left: 0;
-}
-
-ul ul {
- list-style-type: circle;
- margin-block-start: 0px;
- margin-block-end: 0px;
-}
-
-main {
- margin: auto ;
-}
-
-p img, li img, h1 img, h2 img, h3 img, h4 img, dt img {
- vertical-align: middle ;
- max-width: 1em;
- max-height: 1em;
- border: none ;
- display: inline ;
-}
-
-a {
- color: blue ;
- text-decoration: none ;
-}
-
-dl {
- display: inline-flex;
- text-align: center;
-}
-
-footer {
- text-align: center ;
- font-variant: small-caps ;
- clear: both ;
- padding: 2em 0 ;
-}
-
-footer li {
- display: inline-block ;
- padding: 0.5em ;
- font-size: x-large ;
-}
-
-nav, footer, .tag-list{
- text-align: center;
- font-variant: small-caps;
- clear: both;
-}
-
-nav {
- font-size: small;
-}
-
-nav ul, footer ul, .tag-list {
- padding: 0;
-}
-
-nav li, footer li, .tag-list li{
- color: blue;
- display: inline-block;
- list-style: none;
- border-radius: 10px;
- padding: .5em;
- max-width: 7em;
-}
-
-code {
- border-radius: 5px ;
- overflow-wrap: break-word ;
-}