Compare commits
6 Commits
6d6302bf5a
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| 209f613801 | |||
| 979093da35 | |||
| f38d21ebac | |||
| c9369e4711 | |||
| 6621b20829 | |||
| 72c0fddf02 |
9
_11tycms.json
Normal file
9
_11tycms.json
Normal file
@@ -0,0 +1,9 @@
|
||||
{
|
||||
"input":"/content/",
|
||||
"includes":"/_includes/",
|
||||
"data":"/_data/",
|
||||
"output":"/_site/",
|
||||
"media":"/public/img",
|
||||
"build":"npx @11ty/eleventy",
|
||||
"publish":"rsync -av --del /home/n_u/Repos/nathanupchurch.com/_site/ n_u@upchur.ch:/var/www/my_webapp/www/"
|
||||
}
|
||||
@@ -12,6 +12,8 @@
|
||||
<!-- /Indieweb profile links -->
|
||||
{% include "structuredData.njk" %}
|
||||
{% include "analytics.html" %}
|
||||
{% include "weatherStyle.njk" %}
|
||||
{% include "wooModeStyle.njk" %}
|
||||
</head>
|
||||
<body>
|
||||
{% include "header.njk" %}
|
||||
|
||||
@@ -1,11 +1,3 @@
|
||||
<style>
|
||||
#siteSettingsContainer {
|
||||
& button:not(#settingsDone) {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<div id="siteSettingsContainer">
|
||||
<button onclick="siteSettings.showModal();">Site Settings</button>
|
||||
<dialog id="siteSettings">
|
||||
|
||||
@@ -1,117 +1,6 @@
|
||||
<!-- weather -->
|
||||
<!-- Based on https://codepen.io/codeconvey/pen/xRzQay -->
|
||||
{# This include causes a symbol (text, emoji, et cetera; from metadata.weatherSymbol) to fall from the top of the viewport like snow. #}
|
||||
|
||||
<style>
|
||||
.fallingObject {
|
||||
color: #fff;
|
||||
font-size: 1em;
|
||||
font-family: Arial;
|
||||
pointer-events: none;
|
||||
text-shadow: 0 0 1px #000;
|
||||
}
|
||||
@keyframes fallingObjects-fall {
|
||||
0% {
|
||||
top: -10%;
|
||||
}
|
||||
100% {
|
||||
top: 100%;
|
||||
}
|
||||
}
|
||||
@keyframes fallingObjects-shake {
|
||||
0% {
|
||||
transform: translateX(0px);
|
||||
}
|
||||
50% {
|
||||
transform: translateX(80px);
|
||||
}
|
||||
100% {
|
||||
transform: translateX(0px);
|
||||
}
|
||||
}
|
||||
.fallingObject {
|
||||
position: fixed;
|
||||
top: -10%;
|
||||
z-index: 9999;
|
||||
user-select: none;
|
||||
cursor: default;
|
||||
animation-name: fallingObjects-fall, fallingObjects-shake;
|
||||
animation-duration: 10s, 3s;
|
||||
animation-timing-function: linear, ease-in-out;
|
||||
animation-iteration-count: infinite, infinite;
|
||||
animation-play-state: running, running;
|
||||
}
|
||||
.fallingObject:nth-of-type(0) {
|
||||
left: 1%;
|
||||
animation-delay: 0s, 0s;
|
||||
& > div {
|
||||
transform: rotate(45deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(1) {
|
||||
left: 10%;
|
||||
animation-delay: 1s, 1s;
|
||||
& > div {
|
||||
transform: rotate(10deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(2) {
|
||||
left: 20%;
|
||||
animation-delay: 6s, 0.5s;
|
||||
& > div {
|
||||
transform: rotate(60deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(3) {
|
||||
left: 30%;
|
||||
animation-delay: 4s, 2s;
|
||||
& > div {
|
||||
transform: rotate(84deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(4) {
|
||||
left: 40%;
|
||||
animation-delay: 2s, 2s;
|
||||
& > div {
|
||||
transform: rotate(267deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(5) {
|
||||
left: 50%;
|
||||
animation-delay: 8s, 3s;
|
||||
& > div {
|
||||
transform: rotate(200deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(6) {
|
||||
left: 60%;
|
||||
animation-delay: 6s, 2s;
|
||||
& > div {
|
||||
transform: rotate(20deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(7) {
|
||||
left: 70%;
|
||||
animation-delay: 2.5s, 1s;
|
||||
& > div {
|
||||
transform: rotate(78deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(8) {
|
||||
left: 80%;
|
||||
animation-delay: 1s, 0s;
|
||||
& > div {
|
||||
transform: rotate(3120deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(9) {
|
||||
left: 90%;
|
||||
animation-delay: 3s, 1.5s;
|
||||
& > div {
|
||||
transform: rotate(123deg);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<div class="fallingObjects" id="weather" aria-hidden="true">
|
||||
<div class="fallingObject">
|
||||
<div>{{ metadata.weatherSymbol }}</div>
|
||||
|
||||
112
_includes/weatherStyle.njk
Normal file
112
_includes/weatherStyle.njk
Normal file
@@ -0,0 +1,112 @@
|
||||
<!-- Weather style -->
|
||||
<style>
|
||||
.fallingObject {
|
||||
color: #fff;
|
||||
font-size: 1em;
|
||||
font-family: Arial;
|
||||
pointer-events: none;
|
||||
text-shadow: 0 0 1px #000;
|
||||
}
|
||||
@keyframes fallingObjects-fall {
|
||||
0% {
|
||||
top: -10%;
|
||||
}
|
||||
100% {
|
||||
top: 100%;
|
||||
}
|
||||
}
|
||||
@keyframes fallingObjects-shake {
|
||||
0% {
|
||||
transform: translateX(0px);
|
||||
}
|
||||
50% {
|
||||
transform: translateX(80px);
|
||||
}
|
||||
100% {
|
||||
transform: translateX(0px);
|
||||
}
|
||||
}
|
||||
.fallingObject {
|
||||
position: fixed;
|
||||
top: -10%;
|
||||
z-index: 9999;
|
||||
user-select: none;
|
||||
cursor: default;
|
||||
animation-name: fallingObjects-fall, fallingObjects-shake;
|
||||
animation-duration: 10s, 3s;
|
||||
animation-timing-function: linear, ease-in-out;
|
||||
animation-iteration-count: infinite, infinite;
|
||||
animation-play-state: running, running;
|
||||
}
|
||||
.fallingObject:nth-of-type(0) {
|
||||
left: 1%;
|
||||
animation-delay: 0s, 0s;
|
||||
& > div {
|
||||
transform: rotate(45deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(1) {
|
||||
left: 10%;
|
||||
animation-delay: 1s, 1s;
|
||||
& > div {
|
||||
transform: rotate(10deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(2) {
|
||||
left: 20%;
|
||||
animation-delay: 6s, 0.5s;
|
||||
& > div {
|
||||
transform: rotate(60deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(3) {
|
||||
left: 30%;
|
||||
animation-delay: 4s, 2s;
|
||||
& > div {
|
||||
transform: rotate(84deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(4) {
|
||||
left: 40%;
|
||||
animation-delay: 2s, 2s;
|
||||
& > div {
|
||||
transform: rotate(267deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(5) {
|
||||
left: 50%;
|
||||
animation-delay: 8s, 3s;
|
||||
& > div {
|
||||
transform: rotate(200deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(6) {
|
||||
left: 60%;
|
||||
animation-delay: 6s, 2s;
|
||||
& > div {
|
||||
transform: rotate(20deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(7) {
|
||||
left: 70%;
|
||||
animation-delay: 2.5s, 1s;
|
||||
& > div {
|
||||
transform: rotate(78deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(8) {
|
||||
left: 80%;
|
||||
animation-delay: 1s, 0s;
|
||||
& > div {
|
||||
transform: rotate(3120deg);
|
||||
}
|
||||
}
|
||||
.fallingObject:nth-of-type(9) {
|
||||
left: 90%;
|
||||
animation-delay: 3s, 1.5s;
|
||||
& > div {
|
||||
transform: rotate(123deg);
|
||||
}
|
||||
}
|
||||
</style>
|
||||
<!-- / Weather style -->
|
||||
@@ -173,22 +173,6 @@
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
body {
|
||||
background: none;
|
||||
}
|
||||
canvas {
|
||||
display: block;
|
||||
opacity: .35;
|
||||
pointer-events: none;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: -1;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
|
||||
<script>
|
||||
const wooCanvas = document.getElementById("shaderCanvas");
|
||||
const wooToggle = document.getElementById("wooToggle");
|
||||
@@ -211,7 +195,8 @@
|
||||
if (this.checked) {
|
||||
localStorage.setItem("wooMode", 1);
|
||||
|
||||
const wooAudio = new Audio("/audio/30995__unclesigmund__woo-2.mp3");
|
||||
let wooAudio = new Audio("/audio/30995__unclesigmund__woo-2.mp3");
|
||||
wooAudio.volume = 0.4;
|
||||
wooAudio.play();
|
||||
|
||||
wooCanvas.classList.remove("hidden");
|
||||
|
||||
16
_includes/wooModeStyle.njk
Normal file
16
_includes/wooModeStyle.njk
Normal file
@@ -0,0 +1,16 @@
|
||||
<!-- Woo mode style -->
|
||||
<style>
|
||||
body {
|
||||
background: none;
|
||||
}
|
||||
canvas {
|
||||
display: block;
|
||||
opacity: .35;
|
||||
pointer-events: none;
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: -1;
|
||||
}
|
||||
</style>
|
||||
<!-- / Woo mode style -->
|
||||
@@ -36,14 +36,12 @@ There are many different newsreader apps to choose from. Below are a few you cou
|
||||
|
||||
* [Raven (GNU/Linux, Windows, macOS)](https://ravenreader.app/)
|
||||
|
||||
* [NetNewsWire (macOS, iOS)](https://ravenreader.app/)
|
||||
* [NetNewsWire (macOS, iOS)](https://netnewswire.com/)
|
||||
|
||||
* [FreshRSS (Online)](https://www.freshrss.org/)
|
||||
|
||||
* [Akregator (GNU/Linux)](https://apps.kde.org/akregator/)
|
||||
|
||||
* [RSSOwl (GNU/Linux, Windows, macOS)](https://www.rssowl.org/)
|
||||
|
||||
* [RSS Guard (GNU/Linux, Windows, macOS, BSD, OS/2)](https://github.com/martinrotter/rssguard)
|
||||
|
||||
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
---
|
||||
title: "100 Webmaster Questions"
|
||||
description: "Answering a lot of questions."
|
||||
date: 2026-02-05
|
||||
title: 100 Webmaster Questions
|
||||
description: Answering a lot of questions.
|
||||
date: 2026-02-05T00:00:00.000Z
|
||||
tags:
|
||||
- Questionnaire
|
||||
synopsis: "Answering a lot of questions."
|
||||
mastodon_id: "116021932929019975"
|
||||
synopsis: Answering a lot of questions.
|
||||
mastodon_id: '116021932929019975'
|
||||
---
|
||||
I found this questionnaire on the website of my [Geekring](https://geekring.net/) neighbor [Corvidae](https://corvidae.digital/100). [Original questions sheet on mousling.net](https://mouseling.net/100webmaster.txt).
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ synopsis: "New on this website: a handy tool to generate woo, comments, and weat
|
||||
mastodon_id: "116021705122518903"
|
||||
---
|
||||
## Woo-woo incense description generator
|
||||
Whether they are spiritually inclined or mere earth-bound fragrance-heads, all sorts of people are attracted to the fragrant world of incense. It's no surprise, then, that the language people use to describe incense can get pretty colorful. If you've ever wished you could write so… *interestingly* about incense, my brand new [Woo-woo incense description generator](/special/woo-woo-incense-description-generator/) is just the ticket! Occupying the "special" section of [my sitemap](/sitemap/) along-side the flying toasters, with but one click of a button it spits out a fresh serving of woo, complete with ingredients and "medicinal effects."[^1] Why not [give it a try?](/special/woo-woo-incense-description-generator/)
|
||||
Whether they are spiritually inclined or mere earth-bound fragrance-heads, all sorts of people are attracted to the fragrant world of incense. It's no surprise, then, that the language people use to describe the incense they make can get pretty colorful. If you've ever wished you could write so… *interestingly* about incense, my brand new [Woo-woo incense description generator](/special/woo-woo-incense-description-generator/) is just the ticket! Occupying the "special" section of [my sitemap](/sitemap/) along-side the flying toasters, with but one click of a button it spits out a fresh serving of woo, complete with ingredients and "medicinal effects."[^1] Why not [give it a try?](/special/woo-woo-incense-description-generator/)
|
||||
|
||||
[](/img/woo-woo-incense-description-generator-and-other-updates/woo-woo-incense-description-generator_copy.webp)
|
||||
|
||||
@@ -23,6 +23,6 @@ You may have noticed a "site settings" button at the bottom of the page. I set t
|
||||
For a while, the service that powers my [guestbook](/guestbook/) went down due to [some drama with Azure](https://meadow.cafe/blog/0008-azure-disabled-my-account-trip-to-the-cabin/) and lost some data. Therefore, if you notice that your message is missing, know that I didn't delete it on purpose and feel free to leave another.
|
||||
|
||||
## Comments now available
|
||||
I have, at long last, set up commenting via [Isso](https://isso-comments.de/) on blog posts and, as an unintended side effect, [quizzes](quizzes), which I kind of like so I left it (there's only one quiz at the minute anyway). I wanted to do this ages ago, but I couldn't get Isso working on my [YunoHost](https://yunohost.org/index.en.html) server until recently. YunoHost is fantastic, but support can be scarce as hen's teeth, so we'll see how things go. Hopefully, it'll be rock solid and serve me well for years to come. Hopefully people will leave polite, thoughtful comments. Hopefully, spam is thin on the ground. Time will tell all!
|
||||
I have, at long last, set up commenting via [Isso](https://isso-comments.de/) on blog posts and, as an unintended side effect, [quizzes](/quizzes), which I kind of like so I left it (there's only one quiz at the minute anyway). I wanted to do this ages ago, but I couldn't get Isso working on my [YunoHost](https://yunohost.org/index.en.html) server until recently. YunoHost is fantastic, but support can be scarce as hen's teeth, so we'll see how things go. Hopefully, it'll be rock solid and serve me well for years to come. Hopefully people will leave polite, thoughtful comments. Hopefully, spam is thin on the ground. Time will tell all!
|
||||
|
||||
[^1]: For the love of all that is good in this world do not take these seriously.
|
||||
|
||||
@@ -4,6 +4,8 @@ title: Nathan Upchurch | Changelog
|
||||
structuredData: none
|
||||
---
|
||||
# Changelog
|
||||
* 2026-02-07
|
||||
* Updated [/wish](/wish).
|
||||
* 2026-02-04
|
||||
* Added post comments via [Isso](https://isso-comments.de/). Please don't make me regret this.
|
||||
* Add [Mochi](https://mochi.meadow.cafe/) privacy respecting analytics.
|
||||
|
||||
@@ -71,6 +71,7 @@ Here are some links to pages and resources that I believe are worth sharing.
|
||||
* [11tyBundle](https://11tybundle.dev/)—Learn how others are making the most of 11ty, an exceptionally simple, flexible, and performant, open-source static site generator
|
||||
* [11tyCMS](https://11tycms.com/)—A local, serverless, dependable, and FLOSS CMS for websites made with Eleventy
|
||||
* [Pagefind](https://pagefind.app/)—A fully static search library that runs after Hugo, Eleventy, Jekyll, Next, Astro, SvelteKit, or any other website framework
|
||||
* [Uncharted](https://uncharted.seanlunsford.com/)—A CSS-based chart plugin for Eleventy.
|
||||
|
||||
## Free/libre software
|
||||
* [Free Software Foundation](https://fsf.org)—A nonprofit with a worldwide mission to promote computer user freedom
|
||||
@@ -85,17 +86,24 @@ Here are some links to pages and resources that I believe are worth sharing.
|
||||
* [smelltrainingapp.com](https://smelltrainingapp.com/)—A free tool from Stockholms Universitet and and Karolinska Institutet to help patients with hyposmia or anosmia improve their sense of smell.
|
||||
|
||||
## Indieweb / personal web: discovery
|
||||
* [Akregator](https://apps.kde.org/akregator/)—A news feed reader available for GNU/Linux and Windows
|
||||
* [Alligator](https://apps.kde.org/alligator/)—A convergent, cross-platform feed reader, supporting standard RSS/Atom feeds available for GNU/Linux
|
||||
* [blogroll.org](https://blogroll.org/)—Because blogs are the soul of the web
|
||||
* [blogs.hn](https://blogs.hn/)—A directory of tech sites, primarily sourced from HackerNews
|
||||
* [blogscroll.com](https://blogscroll.com/)—An open directory of personal sites and blogs
|
||||
* [blogsearch.io](https://blogsearch.io/)—A search engine for personal blogs and independent websites
|
||||
* [Feeder](https://github.com/spacecowboy/Feeder)—An open source feed reader (RSS/Atom/JSONFeed) for Android
|
||||
* [Feedle](https://feedle.world/)—A search engine for blogs and podcasts
|
||||
* [FreshRSS](https://www.freshrss.org/cloud-providers.html)—A self-hosted RSS and Atom feed aggregator
|
||||
* [indieblog.page](https://indieblog.page/)—Discover the indieweb
|
||||
* [Kagi Smallweb](https://kagi.com/smallweb/)
|
||||
* [Marginalia Search](https://marginalia-search.com/)—Search that prioritizes non-commercial content
|
||||
* [Mire](https://mire.meadow.cafe/)—A minimal, no-bullshit web-based rss/atom feed reader
|
||||
* [Mwmbl](https://mwmbl.org/)—A crowd-sourced search engine
|
||||
* [Mydora](https://mydora.restorativland.org/)—A continuous streaming player that gives you a deep dive into the lost archives of Myspace Music
|
||||
* [ooh.directory](https://ooh.directory/)—A collection of 2,358 blogs about every topic
|
||||
* [Raven](https://ravenreader.app/)—A cross-platform feed reader
|
||||
* [RSS Guard](https://github.com/martinrotter/rssguard)—Feed reader (podcast player and also Gemini protocol client) which supports RSS/ATOM/JSON and many web-based feed services
|
||||
* [searchmysite.net](https://searchmysite.net/)—Search real content by real people from their personal websites
|
||||
* [Wiby](https://wiby.me/)—Search engine for the classic web
|
||||
|
||||
@@ -108,7 +116,10 @@ Here are some links to pages and resources that I believe are worth sharing.
|
||||
* [Gify Pet](https://melonking.net/frames/pet)—Who is there to watch over your site when you are gone? GifyPet will!
|
||||
* [goatcounter.com](https://www.goatcounter.com/)—An open source web analytics platform available as a free donation-supported hosted service or self-hosted app
|
||||
* [Guestbooks](https://guestbooks.meadow.cafe/)—A free guestbook service for your website
|
||||
* [Guestbooks (2)](https://guestbooks.kamiscorner.xyz/)—Another free guestbook service for your website
|
||||
* [Hit counters](https://www.websiteout.net/counter.php)
|
||||
* [Kitty](https://kitty.meadow.cafe/)—A cozy, minimal content platform focused on helping you write & publish without fuss
|
||||
* [Mochi](https://mochi.meadow.cafe/)—Friendly analytics and webmentions for your little corner of the web
|
||||
* [Nekoweb](https://nekoweb.org/)—A free static website hosting service
|
||||
* [neocities.org](https://neocities.org/)—Create your own free website.
|
||||
Unlimited creativity, zero ads.
|
||||
|
||||
7
content/now-burning/Now Burning_2026-02-09_13:28.md
Normal file
7
content/now-burning/Now Burning_2026-02-09_13:28.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Agarwood
|
||||
manufacturer: Ganesha
|
||||
date: 2026-02-09 13:20:00
|
||||
time: 1:20 PM
|
||||
---
|
||||
|
||||
7
content/now-burning/Now Burning_2026-02-09_22:56.md
Normal file
7
content/now-burning/Now Burning_2026-02-09_22:56.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Musk
|
||||
manufacturer: "The Mother’s Fragrances"
|
||||
date: 2026-02-09 22:56:00
|
||||
time: 10:56 PM
|
||||
---
|
||||
|
||||
7
content/now-burning/Now Burning_2026-02-10_10:06.md
Normal file
7
content/now-burning/Now Burning_2026-02-10_10:06.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Patchouli
|
||||
manufacturer: "The Mother’s Fragrances"
|
||||
date: 2026-02-10 10:06:00
|
||||
time: 10:06 AM
|
||||
---
|
||||
|
||||
7
content/now-burning/Now Burning_2026-02-10_12:42.md
Normal file
7
content/now-burning/Now Burning_2026-02-10_12:42.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Oud
|
||||
manufacturer: Flora Botanical Incense
|
||||
date: 2026-02-10 12:42:00
|
||||
time: 12:42 PM
|
||||
---
|
||||
|
||||
7
content/now-burning/Now Burning_2026-02-11_10:17.md
Normal file
7
content/now-burning/Now Burning_2026-02-11_10:17.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Hawaiian Summer
|
||||
manufacturer: Incense Apprentice
|
||||
date: 2026-02-11 10:16:00
|
||||
time: 10:16 AM
|
||||
---
|
||||
I think a little age has done this stick good. It's got a pleasant coolness.
|
||||
7
content/now-burning/Now Burning_2026-02-13_10:03.md
Normal file
7
content/now-burning/Now Burning_2026-02-13_10:03.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Frankincense & Myrrh with Sacred Sage
|
||||
manufacturer: Fred Soll
|
||||
date: 2026-02-13T10:02:00.000Z
|
||||
time: '10:02 AM'
|
||||
---
|
||||
An incredibly strong stick. Ventilation is key!
|
||||
7
content/now-burning/Now Burning_2026-02-16_11:59.md
Normal file
7
content/now-burning/Now Burning_2026-02-16_11:59.md
Normal file
@@ -0,0 +1,7 @@
|
||||
---
|
||||
title: Sweet Frankincense
|
||||
manufacturer: Fred Soll
|
||||
date: 2026-02-16 11:59:00
|
||||
time: 11:59 AM
|
||||
---
|
||||
|
||||
@@ -14,7 +14,7 @@ This is an index of all my [slash pages](https://slashpages.net/). These are pag
|
||||
* [/Blogroll](/blogroll)
|
||||
* [/Changelog](/changelog)
|
||||
* [/Colophon](/about/colophon)
|
||||
* [~~Contact~~ /Me](/me)
|
||||
* [~~/Contact~~ /Me](/me)
|
||||
* [/Feed](/feed/feed.xml)
|
||||
* [/Now](/now)
|
||||
* [/Referrals](/referrals)
|
||||
|
||||
@@ -6,12 +6,16 @@ forcedWoo: true
|
||||
---
|
||||
<div class="container">
|
||||
<h1>Woo-Woo Incense Description Generator</h1>
|
||||
<p>Ever wonder how people come up with those confusing esoteric descriptions of their incense complete with “medicinal effects?” Want some ideas to spice up your Instagram profile, website, or Etsy listings? Well you’re in luck! Click the button below to generate an incense description so mystical you’ll swear your chakras are aligned! Music by <a href="https://pixabay.com/users/saavane-32312792/">saavane on Pixabay</a>. Woo sound effect by <a href="https://freesound.org/s/30995/">UncleSigmund on freesound</a>. Background effect from <a href="https://codepen.io/tommyho/pen/JjgoZLK">Tommy Ho on Codepen</a>. No <a href="/ai">AI</a> used—I can write slop on my own!</p>
|
||||
<p>Ever wonder how incense makers come up with those confusing esoteric descriptions of their incense complete with “medicinal effects?” Want some ideas to spice up your Instagram profile, website, or Etsy listings? Well you’re in luck! Click the button below to generate an incense description so mystical you’ll swear your chakras are aligned! Music by <a href="https://pixabay.com/users/saavane-32312792/">saavane on Pixabay</a>. Woo sound effect by <a href="https://freesound.org/s/30995/">UncleSigmund on freesound</a>. Background effect from <a href="https://codepen.io/tommyho/pen/JjgoZLK">Tommy Ho on Codepen</a>. No <a href="/ai">AI</a> used—I can write slop on my own!</p>
|
||||
|
||||
<script src="/js/incense-description-generator.js"></script>
|
||||
<script>
|
||||
const audioOnClick = new Audio("/audio/30995__unclesigmund__woo-2.mp3");
|
||||
const bgMusic = new Audio("/audio/new-sun-428916.mp3");
|
||||
let audioOnClick = new Audio("/audio/30995__unclesigmund__woo-2.mp3");
|
||||
let bgMusic = new Audio("/audio/new-sun-428916.mp3");
|
||||
|
||||
audioOnClick.volume = 0.4;
|
||||
bgMusic.volume = 0.4;
|
||||
bgMusic.loop = true;
|
||||
|
||||
window.addEventListener("pointermove", (e) => {
|
||||
bgMusic.play();
|
||||
|
||||
@@ -41,18 +41,26 @@ However if abstention seems unconscionable, I would be delighted if you were to
|
||||
* [Kida Jinseido Ranjatai Incense](https://kikohincense.com/collections/kida-jinseido-incense-since-1937/products/kida-jinseido-ranjatai-incense)
|
||||
* [Kunmeido Shin Tokusen Reiryokoh Incense](https://kikohincense.com/collections/kunmeido-incense-kikoh/products/kunmeido-shin-tokusen-reiryokoh-incense)
|
||||
* [Minorien Kyara Fu-In](https://kikohincense.com/collections/minorien-incense-kikoh/products/minorien-kyara-fu-in-incense)
|
||||
* [Nippon Kodo Kayuragi - Rose](https://kikohincense.com/collections/roses-and-chocolates-incense-collection/products/nippon-kodo-kayuragi-incense-rose)
|
||||
* [Nippon Kodo Hana no Hana - Rose](https://kikohincense.com/collections/roses-and-chocolates-incense-collection/products/nippon-kodo-hana-no-hana-incense-rose)
|
||||
* [Kin Objects Red Soil Aloeswood](https://kinobjects.com/products/red-soil-aloeswood-agarwood-incense-sticks?variant=40432647929879)
|
||||
* [Kokando Kaori no Kioku Chocolate](https://kikohincense.com/collections/roses-and-chocolates-incense-collection/products/kokando-kaori-no-kioku-chocolate-incense)
|
||||
* [Kokando Kunpūshi Aloeswood](https://kikohincense.com/products/kokando-kunpushi-aloeswood)
|
||||
* [Kunmeido Shin Tokusen Reiryokoh](https://kikohincense.com/collections/kunmeido-incense-kikoh/products/kunmeido-shin-tokusen-reiryokoh-incense)
|
||||
* [Les Encens du Monde - Moonlit Night | Karin](https://lotuszenincense.com/products/moonlit-night-karin-by-les-encens-du-monde?shpxid=fa2eb8b9-373c-44b6-b675-585881e5540b)
|
||||
* [Mysore](https://www.aliexpress.us/item/3256808362085525.html)
|
||||
* [Shoyeido Horin Assortment](https://shoyeido.com/products/horin-incense-assortment-sampler)
|
||||
* [Shoyeido Kohbai Pressed Incense](https://shoyeido.com/products/kohbai-red-plum-blossoms?variant=41714738921590)
|
||||
* [Shoyeido Kunro Incense Assortment](https://shoyeido.com/products/kunro-incense-assortment)
|
||||
* [Shoyeido Overtones Patchouli](https://shoyeido.com/products/overtones-patchouli-incense)
|
||||
* [Shoyeido Premium Incense Sampler](https://shoyeido.com/products/premium-incense-assortment-sampler)
|
||||
* [Tennendo Hagi Rose Incense](https://kikohincense.com/collections/tennendo-incense-kikoh/products/tennendo-hagi-rose-incense)
|
||||
* [Tennendo Hanano Byakudan](https://www.japanincense.com/tn-0051.html)
|
||||
* [Tennendo Kyara Incense](https://kikohincense.com/products/tennendo-kyara-incense)
|
||||
* [Tennendo Sumire Violet Incense](https://kikohincense.com/products/tennendo-ysumire-violet-incense)
|
||||
* [Yamadamatsu Hyofu](https://kikohincense.com/collections/yamadamatsu-incense-kikoh/products/yamadamatsu-hyofu-incense)
|
||||
* [Yamadamatsu Kumoi](https://kikohincense.com/products/yamadamatsu-kumoyi-incense)
|
||||
* [Yamadamatsu Shoyo](https://www.japanincense.com/ym-0037.html)
|
||||
|
||||
### Tea
|
||||
* A malty black tea from either [Spirit Tea](https://spirittea.co/) or [Yunnan Sourcing](https://yunnansourcing.com/).
|
||||
|
||||
@@ -867,6 +867,11 @@ sup {
|
||||
}
|
||||
|
||||
/* Site Settings */
|
||||
#siteSettingsContainer {
|
||||
& button:not(#settingsDone) {
|
||||
margin-top: 0;
|
||||
}
|
||||
}
|
||||
.siteSettingsToggle {
|
||||
color: var(--text-color);
|
||||
font-size: var(--step--2);
|
||||
|
||||
Reference in New Issue
Block a user