Merge remote-tracking branch 'origin/main'
This commit is contained in:
commit
0360b3fb0d
8 changed files with 141 additions and 36 deletions
|
|
@ -14,8 +14,7 @@
|
|||
background: linear-gradient(145deg, #e8e0c8, #c4b89a);
|
||||
border-radius: 12px;
|
||||
padding: 25px 30px 45px 30px;
|
||||
box-shadow:
|
||||
0 30px 60px rgba(0, 0, 0, 0.8),
|
||||
box-shadow: 0 30px 60px rgba(0, 0, 0, 0.8),
|
||||
inset 0 2px 4px rgba(255, 255, 255, 0.3),
|
||||
inset 0 -2px 4px rgba(0, 0, 0, 0.3);
|
||||
position: relative;
|
||||
|
|
@ -70,9 +69,7 @@
|
|||
height: 8px;
|
||||
background: #0f0;
|
||||
border-radius: 50%;
|
||||
box-shadow:
|
||||
0 0 10px #0f0,
|
||||
0 0 20px #0f0;
|
||||
box-shadow: 0 0 10px #0f0, 0 0 20px #0f0;
|
||||
animation: pulse 2s ease-in-out infinite;
|
||||
|
||||
@include media-down(lg) {
|
||||
|
|
@ -126,8 +123,7 @@
|
|||
border-radius: 8px;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
box-shadow:
|
||||
inset 0 0 80px rgba(0, 255, 100, 0.1),
|
||||
box-shadow: inset 0 0 80px rgba(0, 255, 100, 0.1),
|
||||
inset 0 0 40px rgba(0, 255, 100, 0.05),
|
||||
inset 3px 3px 8px rgba(255, 255, 255, 0.1),
|
||||
inset -3px -3px 8px rgba(0, 0, 0, 0.5);
|
||||
|
|
@ -145,8 +141,7 @@
|
|||
left: -5%;
|
||||
right: -5%;
|
||||
bottom: -5%;
|
||||
background:
|
||||
radial-gradient(
|
||||
background: radial-gradient(
|
||||
ellipse at 30% 30%,
|
||||
rgba(255, 255, 255, 0.15) 0%,
|
||||
transparent 40%
|
||||
|
|
@ -216,6 +211,23 @@
|
|||
line-height: 1.6;
|
||||
margin-bottom: 1rem;
|
||||
}
|
||||
|
||||
a {
|
||||
color: greenyellow;
|
||||
text-decoration: none;
|
||||
position: relative;
|
||||
padding-bottom: 2px;
|
||||
border-bottom: 1px dotted rgba(173, 255, 47, 0.5);
|
||||
transition: all 0.3s ease;
|
||||
text-shadow: 0 0 5px rgba(173, 255, 47, 0.3);
|
||||
|
||||
&:hover {
|
||||
border-bottom-style: solid;
|
||||
border-bottom-color: rgba(173, 255, 47, 0.8);
|
||||
text-shadow: 0 0 10px rgba(173, 255, 47, 0.8);
|
||||
background: rgba(173, 255, 47, 0.05);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Blog posts listing
|
||||
|
|
@ -504,6 +516,13 @@
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
.blog-footer {
|
||||
text-align: center;
|
||||
padding: 1rem;
|
||||
margin: auto;
|
||||
font-size: 1rem;
|
||||
}
|
||||
}
|
||||
|
||||
// Tag filter navigation
|
||||
|
|
@ -736,8 +755,7 @@
|
|||
height: auto;
|
||||
border-radius: 12px;
|
||||
border: 3px solid transparent;
|
||||
background:
|
||||
linear-gradient(#000, #000) padding-box,
|
||||
background: linear-gradient(#000, #000) padding-box,
|
||||
linear-gradient(180deg, #0f0, #000) border-box;
|
||||
filter: grayscale(100%) contrast(1.2) brightness(0.9) sepia(100%)
|
||||
hue-rotate(60deg) saturate(300%);
|
||||
|
|
@ -811,6 +829,7 @@
|
|||
transition: all 0.3s ease;
|
||||
text-shadow: 0 0 5px rgba(0, 255, 0, 0.5);
|
||||
border-radius: 3px;
|
||||
line-height: 2.2rem;
|
||||
|
||||
&:hover:not(.disabled) {
|
||||
background: rgba(0, 255, 0, 0.2);
|
||||
|
|
@ -883,8 +902,7 @@
|
|||
&:hover {
|
||||
background: rgba(0, 255, 0, 0.1);
|
||||
border-color: rgba(0, 255, 0, 0.7);
|
||||
box-shadow:
|
||||
0 0 10px rgba(0, 255, 0, 0.4),
|
||||
box-shadow: 0 0 10px rgba(0, 255, 0, 0.4),
|
||||
inset 0 0 10px rgba(0, 255, 0, 0.1);
|
||||
text-shadow: 0 0 10px rgba(0, 255, 0, 0.8);
|
||||
}
|
||||
|
|
@ -893,8 +911,7 @@
|
|||
&.active span {
|
||||
background: rgba(0, 255, 0, 0.2);
|
||||
border-color: rgba(0, 255, 0, 0.8);
|
||||
box-shadow:
|
||||
0 0 15px rgba(0, 255, 0, 0.5),
|
||||
box-shadow: 0 0 15px rgba(0, 255, 0, 0.5),
|
||||
inset 0 0 10px rgba(0, 255, 0, 0.2);
|
||||
text-shadow: 0 0 10px rgba(0, 255, 0, 1);
|
||||
}
|
||||
|
|
@ -933,9 +950,7 @@
|
|||
text-shadow: 0 0 10px rgba(0, 255, 0, 0.8);
|
||||
}
|
||||
to {
|
||||
text-shadow:
|
||||
0 0 20px rgba(0, 255, 0, 1),
|
||||
0 0 30px rgba(0, 255, 0, 0.6);
|
||||
text-shadow: 0 0 20px rgba(0, 255, 0, 1), 0 0 30px rgba(0, 255, 0, 0.6);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -952,14 +967,10 @@
|
|||
0%,
|
||||
100% {
|
||||
opacity: 1;
|
||||
box-shadow:
|
||||
0 0 10px #0f0,
|
||||
0 0 20px #0f0;
|
||||
box-shadow: 0 0 10px #0f0, 0 0 20px #0f0;
|
||||
}
|
||||
50% {
|
||||
opacity: 0.5;
|
||||
box-shadow:
|
||||
0 0 5px #0f0,
|
||||
0 0 10px #0f0;
|
||||
box-shadow: 0 0 5px #0f0, 0 0 10px #0f0;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
15
config.yml
15
config.yml
|
|
@ -14,6 +14,11 @@ outputFormats:
|
|||
mediaType: "application/json"
|
||||
baseName: "webmentions"
|
||||
isPlainText: true
|
||||
RSS:
|
||||
mediaType: application/rss+xml
|
||||
baseName: feed
|
||||
isPlainText: false
|
||||
rel: alternate
|
||||
|
||||
pagination:
|
||||
pagerSize: 5
|
||||
|
|
@ -41,16 +46,6 @@ params:
|
|||
iconImageHeight: 35
|
||||
iconHeight: 70
|
||||
|
||||
fuseOpts:
|
||||
isCaseSensitive: false
|
||||
shouldSort: true
|
||||
location: 0
|
||||
distance: 1000
|
||||
threshold: 0.4
|
||||
minMatchCharLength: 0
|
||||
limit: 10
|
||||
keys: ["title", "permalink", "summary", "content"]
|
||||
|
||||
markup:
|
||||
highlight:
|
||||
noClasses: false
|
||||
|
|
|
|||
|
|
@ -9,7 +9,8 @@ draft: false
|
|||
|
||||
- 🗨️ Added the ability to send and receive [webmentions](https://indieweb.org/Webmention) to the blog. Haven't automated displaying of received ones yet, but I'll get there.
|
||||
- 🧰 Setup a little personal API to handle the guestbook, visitor counter, and aforementioned webmentions.
|
||||
- 📺 Setup a little dashboard on my homelab for monitoring all of the above!
|
||||
- 📺 Setup a dashboard on my homelab for monitoring all of the above.
|
||||
- 🛜 Added an RSS feed for the blog. I've made my full posts available via RSS so you can consume them however you please.
|
||||
|
||||
## Links I Found Interesting
|
||||
|
||||
|
|
|
|||
|
|
@ -3,3 +3,5 @@ title: "Blog"
|
|||
---
|
||||
|
||||
The home of my weekly updates and occasional other thoughts.
|
||||
|
||||
🛜 [Available via RSS](/blog/feed.xml)
|
||||
|
|
|
|||
33
content/blog/app-defaults-2026/index.md
Normal file
33
content/blog/app-defaults-2026/index.md
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
title: "App Defaults - 2026"
|
||||
date: 2026-01-13T18:27:20Z
|
||||
tags:
|
||||
draft: false
|
||||
---
|
||||
|
||||
I've seen a lot of these popping up around the tech space and find them very interesting to see what tools and apps are peoples go-to for various every day things. Apparently there are [over 500 posts](https://defaults.rknight.me/) and counting! Here's mine right now:
|
||||
|
||||
- 📨 Mail Client - Proton Mail
|
||||
- 📮 Mail Server - [Proton Mail](https://pr.tn/ref/MNB13JYX)
|
||||
- 📝 Notes - Notes.app
|
||||
- ✅ To-Do - Notes.app
|
||||
- 📷 Phone Photo Shooting - Camera.app
|
||||
- 🟦 Photo Management - Photos.app
|
||||
- 📆 Calendar - Calendar.app
|
||||
- 📁 Cloud File Storage - None
|
||||
- 📖 RSS - [FreshRSS](https://github.com/FreshRSS/FreshRSS)
|
||||
- 🙍🏻♂️ Contacts - Contacts.app
|
||||
- 🌐 Browser - [Zen](https://zen-browser.app/)
|
||||
- 💬 Chat - Discord
|
||||
- 🔖 Bookmarks - Firefox Bookmarks Sync
|
||||
- 📑 Read It Later - Notes.app
|
||||
- 🧑💻 Code Editor - [VSCodium](https://vscodium.com/)
|
||||
- 🛒 Shopping Lists - Notes.app
|
||||
- 📰 News - Avoid at all costs
|
||||
- 🎵 Music - Tidal, [High Tide](https://github.com/Nokse22/high-tide), Turntable
|
||||
- 🎤 Podcasts - Apple Podcasts
|
||||
- 🔐 Password Management - Proton Pass
|
||||
|
||||
Apparently I dump a lot of stuff in the Notes app on my phone. It's the closest thing to hand and has almost zero barrier to entry. Also I know where all my stuff is then.
|
||||
|
||||
I should probably find better ways of organising things, but you know what they say - the best system is the one that works for you.
|
||||
|
|
@ -9,7 +9,11 @@
|
|||
}}{{ end }}{{ end }}
|
||||
</title>
|
||||
<meta name="viewport" content="width=device-width,minimum-scale=1" />
|
||||
{{ hugo.Generator }} {{ $sass := resources.Get "sass/style.scss" }} {{
|
||||
{{ range .AlternativeOutputFormats }}
|
||||
<link rel="{{ .Rel }}" type="{{ .MediaType.Type }}" href="{{ .RelPermalink }}">
|
||||
{{ end }}
|
||||
|
||||
{{ $sass := resources.Get "sass/style.scss" }} {{
|
||||
$style := $sass | css.Sass | resources.Minify | resources.Fingerprint }}
|
||||
<link rel="stylesheet" href="{{ $style.RelPermalink }}" />
|
||||
|
||||
|
|
|
|||
|
|
@ -21,6 +21,9 @@
|
|||
</div>
|
||||
{{ end }}
|
||||
<div class="blog-summary">{{ .Content }}</div>
|
||||
<div class="blog-footer">
|
||||
🛜 <a href="/blog/feed.xml">Available via RSS</a>
|
||||
</div>
|
||||
</article>
|
||||
|
||||
{{ partial "contact-section.html" . }}
|
||||
|
|
|
|||
56
layouts/rss.xml
Normal file
56
layouts/rss.xml
Normal file
|
|
@ -0,0 +1,56 @@
|
|||
{{- $authorEmail := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- with .email }}
|
||||
{{- $authorEmail = . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- $authorName := "" }}
|
||||
{{- with site.Params.author }}
|
||||
{{- if reflect.IsMap . }}
|
||||
{{- with .name }}
|
||||
{{- $authorName = . }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
{{- $authorName = . }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- $pctx := . }}
|
||||
{{- if .IsHome }}{{ $pctx = .Site }}{{ end }}
|
||||
{{- $pages := slice }}
|
||||
{{- if or $.IsHome $.IsSection }}
|
||||
{{- $pages = $pctx.RegularPages }}
|
||||
{{- else }}
|
||||
{{- $pages = $pctx.Pages }}
|
||||
{{- end }}
|
||||
{{- $limit := .Site.Config.Services.RSS.Limit }}
|
||||
{{- if ge $limit 1 }}
|
||||
{{- $pages = $pages | first $limit }}
|
||||
{{- end }}
|
||||
{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }}
|
||||
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
||||
<channel>
|
||||
<title>Blog(gish) by Dan @ ritual.sh</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<description>Dan's thoughts on web and game development, tech experiments, and whatever else catches my attention in the Golden Valley.</description>
|
||||
<language>{{ site.Language.LanguageCode }}</language>{{ if not .Date.IsZero }}
|
||||
<lastBuildDate>{{ (index $pages.ByLastmod.Reverse 0).Lastmod.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 }}
|
||||
{{- $content := .Content }}
|
||||
{{- /* Remove graph containers with all their content including canvas and script tags */ -}}
|
||||
{{- $content = replaceRE `(?s)<div class="graph-container"[^>]*>.*?</div>\s*<script>.*?</script>` "<p><em>[Interactive graph not available in RSS - please visit the full post to view the charts]</em></p>" $content }}
|
||||
<item>
|
||||
<title>{{ .Title }}</title>
|
||||
<link>{{ .Permalink }}</link>
|
||||
<pubDate>{{ .PublishDate.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate>
|
||||
{{- with $authorEmail }}<author>{{ . }}{{ with $authorName }} ({{ . }}){{ end }}</author>{{ end }}
|
||||
<guid>{{ .Permalink }}</guid>
|
||||
<description>{{ $content | transform.XMLEscape | safeHTML }}</description>
|
||||
</item>
|
||||
{{- end }}
|
||||
</channel>
|
||||
</rss>
|
||||
Loading…
Add table
Add a link
Reference in a new issue