Create sub-folder for shrines in the assets folder

This commit is contained in:
Helen Chong 2024-04-22 07:15:48 +08:00
parent b2950fd1c0
commit 4a5012555e
111 changed files with 217 additions and 923 deletions

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 15.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<!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="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
width="612px" height="792px" viewBox="0 0 612 792" enable-background="new 0 0 612 792" xml:space="preserve">
<path d="M594.729,455.711c22.442,22.441,22.442,58.729,0,80.932c-22.441,22.202-58.729,22.44-80.932,0L306.096,328.942
L98.397,536.643c-22.441,22.44-58.729,22.44-80.931,0c-22.203-22.441-22.442-58.729,0-80.932l247.808-248.285
c22.441-22.441,58.729-22.441,80.932,0L594.729,455.711z"/>
</svg>

Before

Width:  |  Height:  |  Size: 759 B

View File

Before

Width:  |  Height:  |  Size: 561 KiB

After

Width:  |  Height:  |  Size: 561 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 441 KiB

After

Width:  |  Height:  |  Size: 441 KiB

View File

Before

Width:  |  Height:  |  Size: 529 KiB

After

Width:  |  Height:  |  Size: 529 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 1.7 MiB

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

Before

Width:  |  Height:  |  Size: 1.5 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 1.9 MiB

View File

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

Before

Width:  |  Height:  |  Size: 1.7 MiB

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 MiB

After

Width:  |  Height:  |  Size: 2.0 MiB

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

Before

Width:  |  Height:  |  Size: 835 KiB

After

Width:  |  Height:  |  Size: 835 KiB

View File

Before

Width:  |  Height:  |  Size: 604 KiB

After

Width:  |  Height:  |  Size: 604 KiB

View File

Before

Width:  |  Height:  |  Size: 546 KiB

After

Width:  |  Height:  |  Size: 546 KiB

View File

Before

Width:  |  Height:  |  Size: 487 KiB

After

Width:  |  Height:  |  Size: 487 KiB

View File

@ -1,645 +0,0 @@
<!DOCTYPE html>
<html lang="en" dir="ltr" id="page-top">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta property="og:title" content="April 2024 Leilukin&#39;s Hub Overhaul with Eleventy | Blog">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="About giving my website a new design in light of a new year of 2023.">
<meta name="generator" content="Eleventy v2.0.1">
<meta property="og:type" content="website">
<meta property="og:url" content="https://leilukin.neocities.org/blog/posts/2024-04-21-april-2024-leilukins-hub-overhaul-with-eleventy (conflicted)/">
<meta property="og:site_name" content="Leilukin's Hub">
<meta property="og:locale" content="en_MY">
<meta property="og:description" content="About giving my website a new design in light of a new year of 2023.">
<meta name="twitter:card" content="summary">
<meta name="twitter:url" content="https://leilukin.neocities.org/blog/posts/2024-04-21-april-2024-leilukins-hub-overhaul-with-eleventy (conflicted)/">
<meta name="twitter:description" content="About giving my website a new design in light of a new year of 2023.">
<link rel="canonical" href="https://leilukin.neocities.org/blog/posts/2024-04-21-april-2024-leilukins-hub-overhaul-with-eleventy (conflicted)/">
<link rel="stylesheet" href="/assets/css/main.css">
<link rel="stylesheet" href="/assets/fonts/noto-sans/noto-sans.css">
<link href="/assets/fonts/fontawesome/css/fontawesome.css" rel="stylesheet" />
<link href="/assets/fonts/fontawesome/css/brands.css" rel="stylesheet" />
<link href="/assets/fonts/fontawesome/css/solid.css" rel="stylesheet" />
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
<title>
April 2024 Leilukin&#39;s Hub Overhaul with Eleventy | Blog | Leilukin's Hub
</title>
</head>
<body>
<header class="hero">
<div class="hero__top-bar hidden"></div>
<div class="hero__img">
<img fetchpriority="high" src="/assets/leilukin/Leilukins-Hub-website-banner.png" alt="Banner of Leilukin's Hub">
</div>
</header>
<style>
.hero {
width: 100%;
background-color: var(--clr-hero-bg);
display: flex;
flex-direction: column;
justify-content: center;
text-align: center;
}
.hero__top-bar {
background-color: var(--clr-navbar-bg);
width: 100%;
padding: 0.5em 0;
}
.hero__img {
display: grid;
place-content: center;
}
.hero img {
object-fit: contain;
overflow: hidden;
filter: drop-shadow(0.1rem 0.1rem 0.2rem black);
max-height: 16rem;
}
</style>
<script defer>
const hero = document.querySelector(".hero");
const todayEvent = getTodayEvent();
const heroTopBarEl = document.querySelector(".hero__top-bar");
const headerImgEl = document.querySelector(".hero__img");
if (todayEvent != "No event") {
heroTopBarEl.classList.remove('hidden');
if (todayEvent == "Leilukin's Birthday" || todayEvent == "Leilukin's Hub Anniversary") {
heroTopBarEl.innerHTML = getBlurbHtml(todayEvent);
} else {
headerImgEl.classList.add(getBanner(todayEvent));
heroTopBarEl.innerHTML = getBlurbHtml(todayEvent);
}
}
function getTodayEvent() {
const date = new Date();
const month = date.getMonth() + 1;
const day = date.getDate();
if (month == 3 && day == 1)
return "Zero Discrimination Day";
else if (month == 3 && day == 31)
return "Trans Day of Visibility";
else if (month == 4 && day == 6)
return "International Asexuality Day";
else if (month == 4 && day == 26)
return "Lesbian Visibility Day";
else if (month == 5 && day == 17)
return "IDAHOBIT";
else if (month == 5 && day == 19)
return "Agender Pride Day";
else if (month == 5 && day == 25)
return "Pansexual and Panromantic Awareness & Visibility Day";
else if (month == 6)
return "Pride Month";
else if (month == 7 && day == 14)
return "Non-Binary People's Day";
else if (month == 7 && day == 28)
return "Leilukin's Birthday";
else if (month == 9 && day == 11)
return "Leilukin's Hub Anniversary";
else if (month == 9 && day == 23)
return "Bi Visibility Day";
else if (month == 10 && day == 8)
return "International Lesbian Day";
else if (month == 10 && day == 11)
return "National Coming Out Day";
else if (month == 10 && day == 26)
return "Intersex Awareness Day";
else
return "No event";
}
function getBanner(day) {
switch (day) {
case "Zero Discrimination Day":
return "flag-progress-intersex";
break;
case "Trans Day of Visibility":
return "flag-trans";
break;
case "International Asexuality Day":
return "flag-ace";
break;
case "Lesbian Visibility Day":
return "flag-lesbian";
break;
case "IDAHOBIT":
return "flag-progress";
break;
case "Agender Pride Day":
return "flag-agender";
break;
case "Pansexual and Panromantic Awareness & Visibility Day":
return "flag-pan";
break;
case "Pride Month":
return "flag-progress-intersex";
break;
case "Non-Binary People's Day":
return "flag-non-binary";
break;
case "Bi Visibility Day":
return "flag-bi";
break;
case "International Lesbian Day":
return "flag-lesbian";
break;
case "National Coming Out Day":
return "flag-rainbow";
break;
case "Intersex Awareness Day":
return "flag-intersex";
break;
default:
return "";
}
}
function getBlurbHtml(day) {
switch (day) {
case "Zero Discrimination Day":
return `
Today is <a href="https://www.unaids.org/en/zero-discrimination-day" target="_blank">Zero Discrimination Day</a>
`;
break;
case "Trans Day of Visibility":
return `
Today is <a href="https://www.manygendersonevoice.org/tdov.html" target="_blank">Trans Day of Visibility</a>
`;
break;
case "International Asexuality Day":
return `
Today is <a href="https://internationalasexualityday.org/en" target="_blank">International Asexuality Day</a>
`;
break;
case "Lesbian Visibility Day":
return `
Today is <a href="https://www.lesbianvisibilityweek.com" target="_blank">Lesbian Visibility Day</a>
`;
break;
case "IDAHOBIT":
return `
Today is <a href="https://may17.org" target="_blank">International Day Against Homophobia, Biphobia and Transphobia</a></span>
`;
break;
case "Agender Pride Day":
return `
Today is <a href="https://www.believeoutloud.com/voices/article/agender-pride-day/" target="_blank">Agender Pride Day</a></span>
`;
break;
case "Pansexual and Panromantic Awareness & Visibility Day":
return `
Today is <a href="https://genderedintelligence.co.uk/panvisibilityday" target="_blank">Pansexual and Panromantic Visibility Day</a>
`;
break;
case "Pride Month":
return `
Happy <a href="https://www.loc.gov/lgbt-pride-month/about/" target="_blank">Pride Month</a>!
`;
break;
case "Non-Binary People's Day":
return `
Today is <a href="https://www.manygendersonevoice.org/non-binary-peoples-day.html" target="_blank">Non-Binary People's Day</a>
`;
break;
case "Leilukin's Birthday":
return `
Today is Leilukin's birthday
`;
break;
case "Leilukin's Hub Anniversary":
return `
Today is the anniversary of the launch of Leilukin's Hub
`;
break;
case "Bi Visibility Day":
return `
Today is <a href="https://bivisibilityday.com/about" target="_blank">Bi Visibility Day</a>
`;
break;
case "International Lesbian Day":
return `
Today is <a href="https://www.lgbtiqhealth.org.au/international_lesbian_day2" target="_blank">International Lesbian Day</a>
`;
break;
case "National Coming Out Day":
return `
Today is <a href="https://www.hrc.org/resources/national-coming-out-day" target="_blank">National Coming Out Day</a>
`;
break;
case "Intersex Awareness Day":
return `
Today is <a href="https://interactadvocates.org/intersex-awareness-day" target="_blank">Intersex Awareness Day</a>
`;
break;
default:
return ``;
}
}
</script>
<nav class="navbar">
<ul class="nav__menu">
<li>
<a href="/">
Home
</a>
</li>
<li>
<a href="/about/">
About
</a>
</li>
<li>
<a href="/now/">
Now
</a>
</li>
<li>
<a href="/blog/">
Blog
</a>
</li>
<li>
<a href="/articles/">
Articles
</a>
</li>
<li>
<a href="/projects/">
Projects
</a>
</li>
<li>
<a href="/shrines/">
Shrines
</a>
</li>
<li>
<a href="/links/">
Links
</a>
</li>
<li><a href="https://leilukin.123guestbook.com/">Guestbook</a></li>
</ul>
</nav>
<style>
.navbar {
background: var(--clr-navbar-bg);
padding: 0 0.6rem;
width: 100%;
z-index: 999;
position: sticky;
top: 0;
}
.navbar a {
color: var(--clr-navbar-link);
text-decoration: none;
cursor: pointer;
}
.navbar a:hover {
color: var(--clr-link-hover);
}
.navbar a:focus {
outline-offset: 0.3em;
outline: 0.15em solid var(--clr-navbar-link);
}
.nav__menu {
list-style: none;
padding: 0;
display: flex;
justify-content: space-evenly;
flex-wrap: wrap;
gap: 0.5rem;
}
</style>
<main>
<header class="main__header">
<ul class="breadcrumbs">
<li>
<a href="/blog/" >Blog</a>
</li>
<li>
<a href="/blog/posts/" >Blog Archive</a>
</li>
</ul>
<h1>April 2024 Leilukin&#39;s Hub Overhaul with Eleventy</h1>
<div class="article__info">
<p>Posted on 21 April 2024 by Leilukin
<p>Categories:
<a href="/categories/site-updates">site updates</a>
</p>
<p>🍿 6 min. read</p>
</div>
</header>
<div class="content__wrapper">
<article class="article">
<p>Leilukin's Hub just overgone a major overhaul: Recently, I have been rebuilding this entire website with the <a href="https://en.wikipedia.org/wiki/Static_site_generator">static site generator</a> (SSG), <a href="https://www.11ty.dev/">Eleventy</a>, often abbreviated as 11ty. After building this website for more than a year, Eleventy finally provided the solution for me to maintain, manage and update my website in more dynamic and sufficient ways to save time.</p>
<div class="heading-wrapper h2">
<h2 id="challenges-of-maintaining-a-growing-website">Challenges of Maintaining a Growing Website</h2>
<a class="heading-anchor" href="#challenges-of-maintaining-a-growing-website" aria-labelledby="challenges-of-maintaining-a-growing-website"><span hidden>#</span></a></div>
<p>Leilukin's Hub has come a long way since launch on 11 September 2022, from a small website with a few pages and a simple layout, to a full-fledged personal website with multiple <a href="/articles">articles</a>, a <a href="/blog">blog</a>, a couple of <a href="/shrines">shrines</a> with additional features such as sticky navigation bar, table of contents, etc. Meanwhile, I have also been learning web development, which helped to improve this website in multiple ways.</p>
<p>However, more content on my website also means more work to maintain. In particular, I have been trying to find ways to render components that share across multiple pages on my site, such as the header, navigation bar and footer, without having to copy and pasting the code of these components over and over whenever I want to add a new page. I had used JavaScript for this, but it is still not the best solution because I still needed to add a link to my JavaScript file in HTML. Thankfully, I eventually discovered Eleventy as the solution.</p>
<div class="heading-wrapper h2">
<h2 id="why-eleventy">Why Eleventy?</h2>
<a class="heading-anchor" href="#why-eleventy" aria-labelledby="why-eleventy"><span hidden>#</span></a></div>
<p>There are many static site generators, so why I chose Eleventy over others? The main reason is Eleventy's flexibility. You can start building your website with Eleventy with something as simple as <a href="https://hamatti.org/posts/index-md-is-valid-eleventy-project/">an <code>index.md</code> Markdown file</a>. In addition, Eleventy's own features, support for many templating languages and plugins allow me to have control over how I build and customise my own website, some of which I will highlight as I elaborate the changes and improvements I had made to this website below.</p>
<div class="heading-wrapper h2">
<h2 id="new-features-of-leilukins-hub">New Features of Leilukin's Hub</h2>
<a class="heading-anchor" href="#new-features-of-leilukins-hub" aria-labelledby="new-features-of-leilukins-hub"><span hidden>#</span></a></div>
<div class="heading-wrapper h3">
<h3 id="pagination">Pagination</h3>
<a class="heading-anchor" href="#pagination" aria-labelledby="pagination"><span hidden>#</span></a></div>
<p>Leilukin's Hub <a href="/blogs">blog</a> and main <a href="/changelogs">changelogs</a> page now has pagination, thanks to <a href="https://www.11ty.dev/docs/pagination/">Eleventy's built-in support for the feature</a>.</p>
<div class="heading-wrapper h3">
<h3 id="estimated-reading-time-for-articles-and-blog-posts">Estimated Reading Time for Articles and Blog Posts</h3>
<a class="heading-anchor" href="#estimated-reading-time-for-articles-and-blog-posts" aria-labelledby="estimated-reading-time-for-articles-and-blog-posts"><span hidden>#</span></a></div>
<p>Thanks to <a href="https://www.npmjs.com/package/@11tyrocks/eleventy-plugin-emoji-readtime">Emoji Read Time</a>, a community plugin for Eleventy, my articles and blog posts now show the piece's estimated reading time before the main content.</p>
<div class="heading-wrapper h3">
<h3 id="heading-anchor-links">Heading Anchor Links</h3>
<a class="heading-anchor" href="#heading-anchor-links" aria-labelledby="heading-anchor-links"><span hidden>#</span></a></div>
<p>For the articles, blog posts and some other pages that have headings, I have enabled anchor links on the headings by referring to the <a href="https://11ty.rocks/eleventyjs/slugs-anchors/#enable-anchor-links-on-content-headings">11ty Slugs and Anchors guide</a> from the website 11ty Rocks!, installing and configuring the <a href="https://www.npmjs.com/package/markdown-it-anchor">markdown-it-anchor</a> plugin.</p>
<p>Having a plugin that automatically generates heading anchor links also allows me to generate table of contents by installing the <a href="https://www.npmjs.com/package/eleventy-plugin-nesting-toc">eleventy-plugin-nesting-toc</a> plugin.</p>
<div class="heading-wrapper h3">
<h3 id="content-categories">Content Categories</h3>
<a class="heading-anchor" href="#content-categories" aria-labelledby="content-categories"><span hidden>#</span></a></div>
<p>Eleventy's <a href="https://www.11ty.dev/docs/collections/">collection</a> feature allows users to group site content by tags and create custom collections. This feature allows me to add categories to my articles and blog posts, and in turn allows visitors to browse my website by categories.</p>
<div class="heading-wrapper h3">
<h3 id="archive-for-all-my-articles-and-blog-posts">Archive for All My Articles and Blog Posts</h3>
<a class="heading-anchor" href="#archive-for-all-my-articles-and-blog-posts" aria-labelledby="archive-for-all-my-articles-and-blog-posts"><span hidden>#</span></a></div>
<p>Eleventy's collection feature also allows me to dynamically display links to my articles and posts when I make a new one, without needing to edit more pages to add the new links myself. Therefore, I took advantage of this feature by creating an <a href="/archive">archive</a> page to display all my articles and blog posts.</p>
<p>Furthermore, my articles, blog and posts now has a right sidebar with links to my articles, blog posts as well as their archives and categories.</p>
<div class="heading-wrapper h2">
<h2 id="improved-features-of-leilukins-hub">Improved Features of Leilukin's Hub</h2>
<a class="heading-anchor" href="#improved-features-of-leilukins-hub" aria-labelledby="improved-features-of-leilukins-hub"><span hidden>#</span></a></div>
<div class="heading-wrapper h3">
<h3 id="blog">Blog</h3>
<a class="heading-anchor" href="#blog" aria-labelledby="blog"><span hidden>#</span></a></div>
<p>Leilukin's Hub blog was <a href="https://leilukin.neocities.org/blog/posts/2023-01-28-leilukins-hub-now-has-a-blog/">launched on 28 January 2023</a>. Formerly, the blog was built with <a href="https://zonelets.net/">Zonelets</a>; now I take advantage of Eleventy's flexibility by recreating Leilukin's Hub blog with it, thus using the main site's layout for the blog instead of <a href="/changelogs/layouts/#11-september-2023-blog-layout">using a different layout</a>. This makes the blog actually feels like it is part of this website.</p>
<div class="heading-wrapper h3">
<h3 id="site-map">Site Map</h3>
<a class="heading-anchor" href="#site-map" aria-labelledby="site-map"><span hidden>#</span></a></div>
<p>Visually, my site map does not change much other than tweaking the spacing, but under the hood, I use the Eleventy's official <a href="https://www.11ty.dev/docs/plugins/navigation/">Navigation</a> plugin to generate the links to my pages in a hierarchical manner.</p>
<div class="heading-wrapper h3">
<h3 id="rss-feed">RSS Feed</h3>
<a class="heading-anchor" href="#rss-feed" aria-labelledby="rss-feed"><span hidden>#</span></a></div>
<p>I had created an RSS feed for Leilukin's Hub's changelogs and blog posts for a while, but previously I had to create new entries in the feed manually by using <a href="https://sourceforge.net/projects/rss-builder/">RSS Builder</a>. Now by installing and setting up Eleventy's official <a href="https://www.11ty.dev/docs/plugins/rss/">RSS</a> plugin, new feed entries will be generated automatically when I make new changelogs, articles and blog posts.</p>
<div class="heading-wrapper h2">
<h2 id="other-notable-changes-of-leilukins-hub">Other Notable Changes of Leilukin's Hub</h2>
<a class="heading-anchor" href="#other-notable-changes-of-leilukins-hub" aria-labelledby="other-notable-changes-of-leilukins-hub"><span hidden>#</span></a></div>
<p>The following changes are not related to any features inherent to Eleventy or its plugins, but they were part of my process of rebuilding Leilukin's Hub.</p>
<div class="heading-wrapper h3">
<h3 id="site-updates-being-blog-posts">Site Updates being Blog Posts</h3>
<a class="heading-anchor" href="#site-updates-being-blog-posts" aria-labelledby="site-updates-being-blog-posts"><span hidden>#</span></a></div>
<p>Previously, longer <a href="/categories/site-updates/">site updates</a> were made into their own pages, since Leilukin's Hub did not have its own blog when I made the first site update post. Now these updates are converted into blog posts.</p>
<div class="heading-wrapper h3">
<h3 id="featured-articles-being-party-of-articles">Featured Articles being Party of Articles</h3>
<a class="heading-anchor" href="#featured-articles-being-party-of-articles" aria-labelledby="featured-articles-being-party-of-articles"><span hidden>#</span></a></div>
<p>Formerly, pages that featured my interviews were on their own page called &quot;featured&quot;. Now, these <a href="/articles/#featured-articles">featured articles</a> are merged into the <a href="/articles">articles</a> page.</p>
<div class="heading-wrapper h3">
<h3 id="scroll-to-top-function">Scroll-to-Top Function</h3>
<a class="heading-anchor" href="#scroll-to-top-function" aria-labelledby="scroll-to-top-function"><span hidden>#</span></a></div>
<p>Previously, this site's scroll-to-top function was placed in the footer. Now, I created a scroll-to-top button in the bottom right corner of the page when you scroll down.</p>
<div class="heading-wrapper h3">
<h3 id="site-layout">Site Layout</h3>
<a class="heading-anchor" href="#site-layout" aria-labelledby="site-layout"><span hidden>#</span></a></div>
<p>The main title of each page is now displayed above both the main content and sidebars, instead of just above the main content like in the <a href="/changelogs/layouts/#23-june-2023">previous layout</a>. This change was made so when this site is viewed on mobile, the table of contents of the left sidebar will be displayed above the main content but still below the page's main title. Previously, I had to place the table of contents on both the left sidebar and the main content's body, and hide the sidebar table of contents when viewed on mobile.</p>
<p>I also use CSS grid to set the page layout in that the main content's width will remain the same instead of expanding if there is no sidebar on the page.</p>
<div class="heading-wrapper h2">
<h2 id="use-github-actions-to-deploy-leilukins-hub-to-neocities">Use GitHub Actions to deploy Leilukin's Hub to Neocities</h2>
<a class="heading-anchor" href="#use-github-actions-to-deploy-leilukins-hub-to-neocities" aria-labelledby="use-github-actions-to-deploy-leilukins-hub-to-neocities"><span hidden>#</span></a></div>
<p>Eleventy is great for reducing many workloads in maintaining and updating my website, so how about publishing the website to Neocities? That is where the <a href="https://docs.github.com/en/actions">GitHub actions</a> comes in.</p>
<p>Before I decided to use a static site generator to rebuild Leilukin's Hub, I discovered the GitHub action named <a href="https://github.com/bcomnes/deploy-to-neocities">deploy-to-neocities</a>, which as the name suggests, allows you to publish your website directly from a GitHub repository to Neocities. I succeeded in deploying all the files of Leilukin's Hub to Neocities with it even before starting to rebuild my website with Eleventy.</p>
<p>I have been using Visual Studio Code to write the code for Leilukin's Hub, and saving a copy of all the files of my website on my own computer. The combination of creating a Git repository for Leilukin's Hub and using the deploy-to-neocities GitHub action saves the time and workload needed to log in to Neocities, navigate the files and folders and open a file to edit the code every time I want to make a change to my website.</p>
<div class="heading-wrapper h2">
<h2 id="a-weeks-worth-of-effort-well-spent">A Week's Worth of Effort Well-Spent</h2>
<a class="heading-anchor" href="#a-weeks-worth-of-effort-well-spent" aria-labelledby="a-weeks-worth-of-effort-well-spent"><span hidden>#</span></a></div>
<p>I had spent a whole week in rebuilding Leilukin's Hub from scratch with Eleventy, and at last completing the process on 20 April 2024. Most of the time rebuilding this website was spent on setting up layout templates, rather than changing the format of my articles and blog posts from HTML to markdown. However, the effort and time spent was worth it, and Leilukin's Hub feels new again.</p>
<p>Welcome to the rebuilt Leilukin's Hub! 🥳</p>
<ul class="blog__post--nextprev"><li>Previous Post: <a href="/blog/posts/2024-03-06-i-received-a-lifetime-premium-membership-on-nexus-mods-for-free/">I Received a Lifetime Premium Membership on Nexus Mods for Free</a></li><li>Next Post: <a href="/blog/posts/2024-04-21-april-2024-leilukins-hub-overhaul-with-eleventy/">April 2024 Leilukin&#39;s Hub Overhaul with Eleventy</a></li>
</ul>
<style>
.blog__post--nextprev {
list-style: none;
padding-left: 0;
padding-top: 0.8em;
margin-top: 2.5em;
border-top: 0.1em solid var(--clr-title-border);
}
</style>
</article>
<aside class="right-sidebar">
<nav class="content__nav sidebar--sticky">
<h2 class="content__nav--title">My Contents</h2>
<ul class="content__nav--links">
<li><a href="/archive/">Content Archive</a></li>
<li><a href="/categories/">Content Categories</a></li>
<li><a href="/articles/">Articles</a></li>
<li><a href="/blog/">Blog Home</a></li>
<li><a href="/blog/posts/">Blog Archive</a></li>
</ul>
</nav>
</aside>
<style>
.content__nav {
padding: 1.2em clamp(1em, 5%, 1.5em);
background-color: var(--clr-content-bg);
}
.content__nav--title {
font-size: 1.7rem;
}
</style>
</div>
<style>
.breadcrumbs {
list-style: none;
padding: 0;
margin: 0 0 0.7em 0;
display: flex;
gap: 0.5em;
flex-wrap: wrap;
justify-content: center;
}
</style>
</main>
<footer class="footer">
<p>Made with ♥ by Leilukin since <time>11 September 2022</time></p>
<ul class="footer__links">
<li><a
href="/sitemap/
">Site Map</a></li>
<li><a
href="/changelogs/"
>Changelogs</a></li>
<li><a href="/feed.xml">RSS</a></li>
</ul>
</footer>
<style>
.footer {
margin-top: auto;
background: var(--clr-main-footer-bg);
padding: 0.8rem;
text-align: center;
display: grid;
}
.footer p {
padding: 0;
}
.footer__links {
justify-self: center;
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 0.7em;
}
.footer__links li:not(:last-child)::after {
content: '|';
padding-left: 0.6em;
}
@media only screen and (min-width: 600px) {
.footer {
width: 100%;
}
}
</style>
<button class="top-btn hidden">
<img src="/assets/images/elements/chevron-up.svg" alt="Scroll to top">
</button>
<style>
.top-btn {
position: fixed;
bottom: 10px;
right: 10px;
z-index: 999;
border: none;
background-color: var(--clr-top-btn);
border-radius: 50em;
padding: 0.3em;
}
.top-btn:focus {
outline: 0.25em solid var(--clr-top-btn);
outline-offset: 0.15em;
}
.top-btn img {
width: 1.5rem;
aspect-ratio: 1 / 1;
}
</style>
<script defer>
const topButton = document.querySelector(".top-btn");
window.onscroll = () => {
if (document.body.scrollTop > 20 || document.documentElement.scrollTop > 20) {
topButton.classList.remove("hidden");
} else {
topButton.classList.add("hidden");
}
}
topButton.addEventListener('click', () => {
window.scrollTo({
top: 0,
left: 0,
behavior: "smooth",
});
});
</script>
</body>
</html>

View File

@ -1,3 +0,0 @@
<ul>
<li>Add new blog post: <a href="http://localhost:8080/blog/posts/2024-04-21-april-2024-leilukins-hub-overhaul-with-eleventy/">April 2024 Leilukin's Hub Overhaul with Eleventy</a></li>
</ul>

View File

@ -4,7 +4,7 @@
<subtitle>Leilukin&#39;s personal website.</subtitle>
<link href="https://leilukin.neocities.org/feed.xml" rel="self"/>
<link href="https://leilukin.neocities.org"/>
<updated>2024-04-21T23:06:06Z</updated>
<updated>2024-04-21T23:13:33Z</updated>
<id>https://leilukin.neocities.org</id>
<author>
<name>Leilukin</name>
@ -938,7 +938,7 @@
<updated>2023-07-12T00:00:00Z</updated>
<id>https://leilukin.neocities.org/shrines/starwarskotor/articles/partyswap-management-takeover/</id>
<content type="html">&lt;p&gt;Starting from 11 July 2023, I, Leilukin, have officially taken over the management and development of DarthTyren&#39;s &lt;a href=&quot;https://deadlystream.com/files/file/544-partyswap/&quot;&gt;PartySwap&lt;/a&gt; mod for Star Wars: Knights of the Old Republic: The Sith Lords.&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://leilukin.neocities.org/assets/starwarskotor/articles/partyswap-ownership-takeover.png&quot; alt=&quot;Screenshot of the PartySwap mod&#39;s download page, showing Leilukin as the owner&quot; /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://leilukin.neocities.org/assets/shrines/starwarskotor/articles/partyswap-ownership-takeover.png&quot; alt=&quot;Screenshot of the PartySwap mod&#39;s download page, showing Leilukin as the owner&quot; /&gt;&lt;/p&gt;
&lt;p&gt;PartySwap is a mod that allows you to recruit both Handmaiden and Disciple as party members in a single playthrough regardless of the player character&#39;s gender. Since its release on May 21, 2015, PartySwap has been one of the most popular KotOR 2 mods, for very good reasons: it is an excellent mod from concept and execution on both story and technical standpoints. Even though PartySwap was not the first &lt;a href=&quot;https://leilukin.neocities.org/shrines/starwarskotor/articles/resources/kotor2-female-exile-recruit-handmaiden-mods.html&quot;&gt;mod that allows a female player character to recruit Handmaiden as a party member&lt;/a&gt;, it was the first that actually makes both Handmaiden and Disciple join your party in the same playthrough, regardless of the player character&#39;s gender. It is a further testament to PartySwap&#39;s quality that it has been included in the &lt;a href=&quot;https://kotor.neocities.org/modding/&quot;&gt;KotOR Community Portal&#39;s mod builds&lt;/a&gt;, which are known for high-standards for mod quality, and described by the mod builds as a legendary mod.&lt;/p&gt;
&lt;p&gt;Developing and maintaining a highly regarded mod like PartySwap is no small task, as it requires both time and skill. At the end of the day, video game modding is a hobby, and generally modders create mods out of passion for and interest in the source material, and not for profit. Interests can change, especially when it is caused by real-life factors. Therefore, it is understandable that on 2 May 2023, nearly 8 years after the initial release of PartySwap, DarthTyren &lt;a href=&quot;https://deadlystream.com/topic/3220-modpartyswap/?do=findComment&amp;amp;comment=89194&quot;&gt;announced his intention of stepping away from KotOR modding and transferring the management of PartySwap&lt;/a&gt; in the mod&#39;s thread on the Deadly Stream forums:&lt;/p&gt;
&lt;blockquote&gt;
@ -2239,8 +2239,8 @@ After discovering the static site generator &lt;a href=&quot;https://www.11ty.de
&lt;p&gt;Therefore, as a lesbian and someone who has &lt;a href=&quot;https://leilukin.neocities.org/projects/#my-video-game-mods&quot;&gt;made mods&lt;/a&gt; for the Knights of the Old Republic games and written a &lt;a href=&quot;https://leilukin.neocities.org/shrines/starwarskotor/guides/kotor-juhani-romance-guide&quot;&gt;detailed Juhani romance guide&lt;/a&gt;, I would like to present hard evidence from the game files to point out that &lt;strong&gt;Juhani is in fact a lesbian, a woman who is exclusively attracted to women&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;The most crucial evidence comes from &lt;code&gt;k_hjuh_dialog.dlg&lt;/code&gt;, Juhanis main dialogue file which contains all the conversations covered in my Juhani Romance Guide. If you use the &lt;a href=&quot;https://deadlystream.com/files/file/280-kotor-tool/&quot;&gt;KotOR Tool&lt;/a&gt; to browse the game files, &lt;code&gt;k_hjuh_dialog.dlg&lt;/code&gt; is under KotOR I &amp;gt; BIFs &amp;gt; templates.bif &amp;gt; Dialog. I recommend using &lt;a href=&quot;https://deadlystream.com/files/file/750-dlg-editor/&quot;&gt;DLGEditor&lt;/a&gt; to view the .dlg files from KotOR games.&lt;/p&gt;
&lt;p&gt;Here is a screenshot of my DLGEditor with the most relevant part of the &lt;code&gt;k_hjuh_dialog.dlg&lt;/code&gt; file:&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://leilukin.neocities.org/assets/starwarskotor/articles/juhani-lesbian-in-game-evidence.png&quot; alt=&quot;A screenshot of Version 2.3.2 of the DLG Editor displaying Juhani&#39;s main dialogue file, with the first conversation highlighted&quot; /&gt;
(&lt;a href=&quot;https://leilukin.neocities.org/assets/starwarskotor/articles/juhani-lesbian-in-game-evidence.png&quot;&gt;Click to view the image in its original size&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;img src=&quot;https://leilukin.neocities.org/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png&quot; alt=&quot;A screenshot of Version 2.3.2 of the DLG Editor displaying Juhani&#39;s main dialogue file, with the first conversation highlighted&quot; /&gt;
(&lt;a href=&quot;https://leilukin.neocities.org/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png&quot;&gt;Click to view the image in its original size&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;The highlighted dialogue shown in the screenshot (”I feel I must apologize for the way I acted towards you before, in the grove. It was wrong of me.”) is the beginning of your first personal conversation with Juhani after Juhani joins your party. Here is a video of the conversation in question:&lt;/p&gt;
&lt;p&gt;https://www.youtube.com/watch?v=jzqfXoOvGrw&lt;/p&gt;
&lt;p&gt;As shown in the screenshot above, once you begin this conversation, the script &lt;code&gt;k_hjuh_p17&lt;/code&gt; will fire, and this is the source of the script in question:&lt;/p&gt;

View File

@ -1,49 +0,0 @@
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta property="og:title" content="Page Not Found">
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="generator" content="Eleventy v2.0.1">
<meta property="og:type" content="website">
<meta property="og:url" content="https://leilukin.neocities.org/not_found/">
<meta property="og:site_name" content="Leilukin's Hub">
<meta property="og:locale" content="en_MY">
<meta name="twitter:card" content="summary">
<meta name="twitter:url" content="https://leilukin.neocities.org/not_found/">
<link rel="canonical" href="https://leilukin.neocities.org/not_found/">
<link rel="stylesheet" href="/assets/css/misc.css">
<link rel="stylesheet" href="/assets/fonts/noto-sans/noto-sans.css">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/favicon/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/favicon/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/favicon/favicon-16x16.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
<title> Page Not Found | Leilukin&#39;s Hub</title>
</head>
<body>
<main>
<img src="/assets/leilukin/Leilukins-Hub-website-banner.png" alt="Leilukin&#39;s Hub website banner">
<h1>Page Not Found</h1>
<p>Oops! Either the page you are looking for does not exist, or it has been moved to a diffrent part of this site.</p>
<section class="index__btn-wrapper">
<a href="/" class="index__link">🏠 Back to Home</a>
</section>
</main>
</body>
</html>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/asummersend/images/ase-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
<source srcset="/assets/shrines/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
</picture>
</div>
@ -234,15 +234,15 @@
<div class="heading-wrapper h2">
<h2 id="in-game-screenshots">In-Game Screenshots</h2>
<a class="heading-anchor" href="#in-game-screenshots" aria-labelledby="in-game-screenshots"><span hidden>#</span></a></div>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-01.png" alt="In-Game Screenshot of A Summer's End 01"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-02.png" alt="In-Game Screenshot of A Summer's End 02"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-03.png" alt="In-Game Screenshot of A Summer's End 03"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-04.png" alt="In-Game Screenshot of A Summer's End 04"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-05.png" alt="In-Game Screenshot of A Summer's End 05"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-06.png" alt="In-Game Screenshot of A Summer's End 06"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-07.png" alt="In-Game Screenshot of A Summer's End 07"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-08.png" alt="In-Game Screenshot of A Summer's End 08"></p>
<p><img src="/assets/asummersend/screenshots/ASE-Screenshot-09.png" alt="In-Game Screenshot of A Summer's End 09"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-01.png" alt="In-Game Screenshot of A Summer's End 01"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-02.png" alt="In-Game Screenshot of A Summer's End 02"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-03.png" alt="In-Game Screenshot of A Summer's End 03"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-04.png" alt="In-Game Screenshot of A Summer's End 04"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-05.png" alt="In-Game Screenshot of A Summer's End 05"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-06.png" alt="In-Game Screenshot of A Summer's End 06"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-07.png" alt="In-Game Screenshot of A Summer's End 07"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-08.png" alt="In-Game Screenshot of A Summer's End 08"></p>
<p><img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-09.png" alt="In-Game Screenshot of A Summer's End 09"></p>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/asummersend/images/ase-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
<source srcset="/assets/shrines/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
</picture>
</div>
@ -232,7 +232,7 @@
<section class="content__section">
<h2>Welcome to Leilukin's <cite>A Summer's End — Hong Kong 1986</cite> Shrine!</h2>
<img src="/assets/asummersend/images/ASE_Key_art_intro.png" alt="Promotional image of A Summer's End — Hong Kong 1986">
<img src="/assets/shrines/asummersend/images/ASE_Key_art_intro.png" alt="Promotional image of A Summer's End — Hong Kong 1986">
<p><cite>A Summer's End — Hong Kong 1986</cite> is a visual novel developed by Oracle and Bone, a Canada-based independent studio consists of two Asian queer women, Charissa So and Tida Kietsungden. The visual novel tells of a lesbian romance story between Michelle Cheung, an office worker, and Sam Wong, a video store owner, that takes place in Hong Kong in the year of 1986.</p>
@ -246,7 +246,7 @@
<section class="content__section">
<h2>How I Discovered <cite>A Summer's End — Hong Kong 1986</cite></h2>
<img src="/assets/asummersend/images/ASE_Key_art_main.png" alt="Key art of A Summer's End — Hong Kong 1986">
<img src="/assets/shrines/asummersend/images/ASE_Key_art_main.png" alt="Key art of A Summer's End — Hong Kong 1986">
<p>I first learned about <cite>A Summer's End — Hong Kong 1986</cite> through <a href="https://linuxgameconsortium.com/a-summers-end-hong-kong-1986-just-announced/" target="_blank">Linux Game Consortium</a>, a Linux gaming news website. There was a period where I set up my gaming laptop to dual boot Windows 10 and Linux, so I ended up following Linux gaming news for a while. While Windows is still my main platform for gaming, the discovery of <cite>A Summer's End</cite> was the biggest unexpected benefit and surprise when I tried out Linux.</p>
@ -256,7 +256,7 @@
<section class="content__section">
<h2>Why <cite>A Summer's End — Hong Kong 1986</cite> Means a Great Deal to Me</h2>
<img src="/assets/asummersend/screenshots/ASE-Screenshot-05.png" alt="Screenshot of A Summer's End with Sam and Michelle kissing">
<img src="/assets/shrines/asummersend/screenshots/ASE-Screenshot-05.png" alt="Screenshot of A Summer's End with Sam and Michelle kissing">
<p>As a Chinese lesbian who speaks Cantonese and had engaged with a lot of Hong Kong media during my teenage years, <cite>A Summer's End — Hong Kong 1986</cite> is the lesbian story that I relate to and feel represented the most.</p>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/asummersend/images/ase-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
<source srcset="/assets/shrines/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/asummersend/images/ase-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
<source srcset="/assets/shrines/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>
@ -287,7 +287,7 @@
<div class="heading-wrapper h2">
<h2 id="character-profile-kristine">Character Profile: Kristine</h2>
<a class="heading-anchor" href="#character-profile-kristine" aria-labelledby="character-profile-kristine"><span hidden>#</span></a></div>
<p><img src="/assets/cassettebeasts/gamelog/cb-character-kristine.png" alt="Cassette Beasts screenshot of Kristine, a custom player character"></p>
<p><img src="/assets/shrines/cassettebeasts/gamelog/cb-character-kristine.png" alt="Cassette Beasts screenshot of Kristine, a custom player character"></p>
<p>My first and main character for Cassette Beasts. The first save file was created on 18 July 2023, and the main story was beaten on 30 July 2023. The second save file was created on 18 October 2023.</p>
<dl>
<dt>Name</dt>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>
@ -224,7 +224,7 @@
<section class="content__section">
<h2>Welcome to Leilukin's <cite>Cassette Beasts</cite> Shrine!</h2>
<img src="/assets/cassettebeasts/images/CassetteBeasts_keyart_16_9.png" alt="Promotional image of Cassette Beasts">
<img src="/assets/shrines/cassettebeasts/images/CassetteBeasts_keyart_16_9.png" alt="Promotional image of Cassette Beasts">
<p><cite>Cassette Beasts</cite> is a 2D/3D hybrid monster collecting open-world role-playing video game developed by Bytten Studio, an indie team based in Brighton, United Kingdom, co-founded by Jay Baylis and Tom Coxon, and published by Raw Fury.</p>
<p>First released on Steam and Windows on 26 April 2023, later on console on 25 May 2023, <cite>Casette Beasts</cite> is available on Windows, Linux, Steam, Xbox Series X|S, Xbox One, Gamepass and Nintendo Switch.</p>
@ -243,7 +243,7 @@
<section class="content__section">
<h2>Why You Should Play <cite>Cassette Beasts</cite></h2>
<img src="/assets/cassettebeasts/images/cassettebeasts-website-header-bg.jpg" alt="Header of the Cassette Beasts official website">
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-website-header-bg.jpg" alt="Header of the Cassette Beasts official website">
<p><cite>Cassette Beasts</cite> is a masterpiece of a monster collecting game, rivalling if not even surpassing <cite>Pokémon</cite> at its best, because while it is obvious that Cassette Beasts is inspired by <cite>Pokémon</cite>, it executes various aspects of <cite>Pokémon</cite> games with its own unique takes that are sometimes even better than <cite>Pokémon</cite>, from monster collecting mechanic, battle system, elemental type match ups, story, characters, lore, world building, map design, etc, with an amazing soundtrack that goes along with the game. As a result, <cite>Cassette Beasts</cite> is perfectly capable of standing on its own.</p>
@ -257,7 +257,7 @@
<section class="content__section">
<h2>My Interest In <cite>Cassette Beasts</cite></h2>
<img src="/assets/cassettebeasts/images/cassettebeasts-website_screenshot_02.png" alt="Official screenshot of Harbourtown in Cassette Beasts">
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-website_screenshot_02.png" alt="Official screenshot of Harbourtown in Cassette Beasts">
<p>On 30 June 2023, when the Steam Summer Sale 2023 just started, I received <cite>Cassette Beasts</cite> as a Steam gift from a generous friend, who knew that I had been looking for independant monster collecting games, since I mostly play indie games instead of AAA games nowadays.</p>
@ -275,7 +275,7 @@
<section class="content__section">
<h2>My Contributions to the <cite>Cassette Beasts</cite> Community</h2>
<img src="/assets/cassettebeasts/images/cassettebeasts-website_screenshot_07.png" alt="Pre-release artwork of Kayleigh, Meredith and Eugene from Cassette Beasts">
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-website_screenshot_07.png" alt="Pre-release artwork of Kayleigh, Meredith and Eugene from Cassette Beasts">
<p>Since I got into <cite>Cassette Beasts</cite>, I have been making a great deal of effort in promoting the game online, by talking about and recommending the game on my online spaces, including this shrine on my website, as well as social media platforms such as Tumblr and Twitter.</p>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
</div>

View File

@ -380,15 +380,15 @@
<div class="heading-wrapper h2">
<h2 id="a-summers-end-hong-kong-1986"><a href="./asummersend/">A Summer's End — Hong Kong 1986</a></h2>
<a class="heading-anchor" href="#a-summers-end-hong-kong-1986" aria-labelledby="a-summers-end-hong-kong-1986"><span hidden>#</span></a></div>
<p><img src="/assets/asummersend/images/ASE_Key_art_intro.png" alt="Header of A Summer's End — Hong Kong 1986"></p>
<p><img src="/assets/shrines/asummersend/images/ASE_Key_art_intro.png" alt="Header of A Summer's End — Hong Kong 1986"></p>
<div class="heading-wrapper h2">
<h2 id="star-wars-knights-of-the-old-republic"><a href="./starwarskotor/">Star Wars: Knights of the Old Republic</a></h2>
<a class="heading-anchor" href="#star-wars-knights-of-the-old-republic" aria-labelledby="star-wars-knights-of-the-old-republic"><span hidden>#</span></a></div>
<p><img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="Header of the Star Wars: Knights of the Old Republic series"></p>
<p><img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="Header of the Star Wars: Knights of the Old Republic series"></p>
<div class="heading-wrapper h2">
<h2 id="cassette-beasts"><a href="./cassettebeasts/">Cassette Beasts</a></h2>
<a class="heading-anchor" href="#cassette-beasts" aria-labelledby="cassette-beasts"><span hidden>#</span></a></div>
<p><img src="/assets/cassettebeasts/images/CassetteBeasts_keyart_16_9.png" alt="Header of the Star Wars: Knights of the Old Republic series"></p>
<p><img src="/assets/shrines/cassettebeasts/images/CassetteBeasts_keyart_16_9.png" alt="Header of the Star Wars: Knights of the Old Republic series"></p>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>
@ -247,8 +247,8 @@
<p>Therefore, as a lesbian and someone who has <a href="/projects/#my-video-game-mods">made mods</a> for the Knights of the Old Republic games and written a <a href="/shrines/starwarskotor/guides/kotor-juhani-romance-guide">detailed Juhani romance guide</a>, I would like to present hard evidence from the game files to point out that <strong>Juhani is in fact a lesbian, a woman who is exclusively attracted to women</strong>.</p>
<p>The most crucial evidence comes from <code>k_hjuh_dialog.dlg</code>, Juhanis main dialogue file which contains all the conversations covered in my Juhani Romance Guide. If you use the <a href="https://deadlystream.com/files/file/280-kotor-tool/">KotOR Tool</a> to browse the game files, <code>k_hjuh_dialog.dlg</code> is under KotOR I &gt; BIFs &gt; templates.bif &gt; Dialog. I recommend using <a href="https://deadlystream.com/files/file/750-dlg-editor/">DLGEditor</a> to view the .dlg files from KotOR games.</p>
<p>Here is a screenshot of my DLGEditor with the most relevant part of the <code>k_hjuh_dialog.dlg</code> file:</p>
<p><img src="/assets/starwarskotor/articles/juhani-lesbian-in-game-evidence.png" alt="A screenshot of Version 2.3.2 of the DLG Editor displaying Juhani's main dialogue file, with the first conversation highlighted">
(<a href="/assets/starwarskotor/articles/juhani-lesbian-in-game-evidence.png">Click to view the image in its original size</a>)</p>
<p><img src="/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png" alt="A screenshot of Version 2.3.2 of the DLG Editor displaying Juhani's main dialogue file, with the first conversation highlighted">
(<a href="/assets/shrines/starwarskotor/articles/juhani-lesbian-in-game-evidence.png">Click to view the image in its original size</a>)</p>
<p>The highlighted dialogue shown in the screenshot (”I feel I must apologize for the way I acted towards you before, in the grove. It was wrong of me.”) is the beginning of your first personal conversation with Juhani after Juhani joins your party. Here is a video of the conversation in question:</p>
<div id="jzqfXoOvGrw" class="eleventy-plugin-youtube-embed" style="position:relative;width:100%;padding-top: 56.25%;"><iframe style="position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;" width="100%" height="100%" frameborder="0" title="Embedded YouTube video" src="https://www.youtube-nocookie.com/embed/jzqfXoOvGrw" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></div>
<p>As shown in the screenshot above, once you begin this conversation, the script <code>k_hjuh_p17</code> will fire, and this is the source of the script in question:</p>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>
@ -247,7 +247,7 @@
<article class="article">
<p>Starting from 11 July 2023, I, Leilukin, have officially taken over the management and development of DarthTyren's <a href="https://deadlystream.com/files/file/544-partyswap/">PartySwap</a> mod for Star Wars: Knights of the Old Republic: The Sith Lords.</p>
<p><img src="/assets/starwarskotor/articles/partyswap-ownership-takeover.png" alt="Screenshot of the PartySwap mod's download page, showing Leilukin as the owner"></p>
<p><img src="/assets/shrines/starwarskotor/articles/partyswap-ownership-takeover.png" alt="Screenshot of the PartySwap mod's download page, showing Leilukin as the owner"></p>
<p>PartySwap is a mod that allows you to recruit both Handmaiden and Disciple as party members in a single playthrough regardless of the player character's gender. Since its release on May 21, 2015, PartySwap has been one of the most popular KotOR 2 mods, for very good reasons: it is an excellent mod from concept and execution on both story and technical standpoints. Even though PartySwap was not the first <a href="../resources/kotor2-female-exile-recruit-handmaiden-mods.html">mod that allows a female player character to recruit Handmaiden as a party member</a>, it was the first that actually makes both Handmaiden and Disciple join your party in the same playthrough, regardless of the player character's gender. It is a further testament to PartySwap's quality that it has been included in the <a href="https://kotor.neocities.org/modding/">KotOR Community Portal's mod builds</a>, which are known for high-standards for mod quality, and described by the mod builds as a legendary mod.</p>
<p>Developing and maintaining a highly regarded mod like PartySwap is no small task, as it requires both time and skill. At the end of the day, video game modding is a hobby, and generally modders create mods out of passion for and interest in the source material, and not for profit. Interests can change, especially when it is caused by real-life factors. Therefore, it is understandable that on 2 May 2023, nearly 8 years after the initial release of PartySwap, DarthTyren <a href="https://deadlystream.com/topic/3220-modpartyswap/?do=findComment&amp;comment=89194">announced his intention of stepping away from KotOR modding and transferring the management of PartySwap</a> in the mod's thread on the Deadly Stream forums:</p>
<blockquote>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>
@ -220,7 +220,7 @@
<section class="content__section">
<h2>Welcome to Leilukin's <cite>Star Wars: Knights of the Old Republic</cite> Shrine!</h2>
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="Cover arts of Star Wars: Knights of the Old Republic series">
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="Cover arts of Star Wars: Knights of the Old Republic series">
<p><cite>Star Wars: Knights of the Old Republic</cite> (<cite>KotOR</cite>) is a space opera role-playing video game series. The series takes place in the fictional universe of <cite>Star Wars</cite>, with the story taking place approximately 4,000 years before the rise of the Galactic Empire.</p>
<p>The first title was developed by BioWare while the second (<cite>Star Wars: Knights of the Old Republic II: The Sith Lords</cite>) was done by Obsidian Entertainmenr. Both games were published by LucasArts. The <cite>KOTOR</cite> series also includes a subsequent new comic book series. Both comic series were published by Dark Horse Comics and act as prequels to the video games.</p>
<p>To learn more about the <cite>Star Wars: Knights of the Old Republic</cite> series, you can check out the <a href="https://kotor.neocities.org/" target="blank">KotOR Community Portal</a>.</p>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>

View File

@ -41,9 +41,9 @@
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
@ -59,8 +59,8 @@
<div class="hero__img">
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
</div>
@ -302,7 +302,7 @@
<div class="heading-wrapper h3">
<h3 id="revan">Revan</h3>
<a class="heading-anchor" href="#revan" aria-labelledby="revan"><span hidden>#</span></a></div>
<p><img src="/assets/starwarskotor/universes/myrevan-jiaxuan-cheng.png" alt="Screenshot of Jiaxuan Cheng, the Revan for my main KotOR universe"></p>
<p><img src="/assets/shrines/starwarskotor/universes/myrevan-jiaxuan-cheng.png" alt="Screenshot of Jiaxuan Cheng, the Revan for my main KotOR universe"></p>
<dl>
<dt>Name</dt>
<dd>Jiaxuan Cheng 程嘉萱</dd>
@ -322,7 +322,7 @@
<div class="heading-wrapper h3">
<h3 id="jedi-exile">Jedi Exile</h3>
<a class="heading-anchor" href="#jedi-exile" aria-labelledby="jedi-exile"><span hidden>#</span></a></div>
<p><img src="/assets/starwarskotor/universes/myexile-yunhua-yang.png" alt="Screenshot of Yunhua Yang, the Jedi Exile for my main KotOR universe"></p>
<p><img src="/assets/shrines/starwarskotor/universes/myexile-yunhua-yang.png" alt="Screenshot of Yunhua Yang, the Jedi Exile for my main KotOR universe"></p>
<dl>
<dt>Name</dt>
<dd>Jiaxuan Cheng 程嘉萱</dd>

View File

@ -13,9 +13,9 @@
{% endblock %}
{% block favicon %}
<link rel="apple-touch-icon" sizes="180x180" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/asummersend/images/ase-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/asummersend/images/ase-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
{% endblock %}

View File

@ -2,8 +2,8 @@
{% block heroImg %}
<picture>
<source srcset="/assets/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
<source srcset="/assets/shrines/asummersend/images/asummersend-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/asummersend/images/asummersend-header.png" alt="Banner of A Summer's End — Hong Kong 1986 Shrine" />
</picture>
{% endblock %}

View File

@ -13,9 +13,9 @@
{% endblock %}
{% block favicon %}
<link rel="apple-touch-icon" sizes="180x180" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/cassettebeasts/images/cb-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/cassettebeasts/images/cb-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
{% endblock %}

View File

@ -2,8 +2,8 @@
{% block heroImg %}
<picture>
<source srcset="/assets/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
<source srcset="/assets/shrines/cassettebeasts/images/cassettebeasts-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/cassettebeasts/images/cassettebeasts-header-640.png" alt="Banner of Cassette Beasts Shrine" />
</picture>
{% endblock %}

View File

@ -13,9 +13,9 @@
{% endblock %}
{% block favicon %}
<link rel="apple-touch-icon" sizes="180x180" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/starwarskotor/images/kotor-icon.png">
<link rel="apple-touch-icon" sizes="180x180" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="32x32" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="icon" type="image/png" sizes="16x16" href="/assets/shrines/starwarskotor/images/kotor-icon.png">
<link rel="manifest" href="/assets/favicon/site.webmanifest">
{% endblock %}

View File

@ -2,8 +2,8 @@
{% block heroImg %}
<picture>
<source srcset="/assets/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
<source srcset="/assets/shrines/starwarskotor/images/swkotor-header-320.png" media="(orientation: landscape)" />
<img src="/assets/shrines/starwarskotor/images/swkotor-header.jpg" alt="anner of Star Wars: Knights of the Old Republic Shrine" />
</picture>
{% endblock %}

View File

Before

Width:  |  Height:  |  Size: 561 KiB

After

Width:  |  Height:  |  Size: 561 KiB

View File

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

View File

Before

Width:  |  Height:  |  Size: 441 KiB

After

Width:  |  Height:  |  Size: 441 KiB

View File

Before

Width:  |  Height:  |  Size: 529 KiB

After

Width:  |  Height:  |  Size: 529 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 1.7 MiB

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

Before

Width:  |  Height:  |  Size: 1.5 MiB

After

Width:  |  Height:  |  Size: 1.5 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 1.9 MiB

After

Width:  |  Height:  |  Size: 1.9 MiB

View File

Before

Width:  |  Height:  |  Size: 1.2 MiB

After

Width:  |  Height:  |  Size: 1.2 MiB

View File

Before

Width:  |  Height:  |  Size: 1.7 MiB

After

Width:  |  Height:  |  Size: 1.7 MiB

View File

Before

Width:  |  Height:  |  Size: 1.8 MiB

After

Width:  |  Height:  |  Size: 1.8 MiB

View File

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View File

Before

Width:  |  Height:  |  Size: 2.0 MiB

After

Width:  |  Height:  |  Size: 2.0 MiB

View File

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

Before

Width:  |  Height:  |  Size: 649 KiB

After

Width:  |  Height:  |  Size: 649 KiB

View File

Before

Width:  |  Height:  |  Size: 1.4 MiB

After

Width:  |  Height:  |  Size: 1.4 MiB

View File

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 38 KiB

View File

Before

Width:  |  Height:  |  Size: 122 KiB

After

Width:  |  Height:  |  Size: 122 KiB

View File

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View File

Before

Width:  |  Height:  |  Size: 835 KiB

After

Width:  |  Height:  |  Size: 835 KiB

View File

Before

Width:  |  Height:  |  Size: 604 KiB

After

Width:  |  Height:  |  Size: 604 KiB

Some files were not shown because too many files have changed in this diff Show More