{{ /set }}
{{ content }}
diff --git a/src/changelogs/logs/2025/2025-05-09.md b/src/changelogs/logs/2025/2025-05-09.md
new file mode 100644
index 00000000..d651d85f
--- /dev/null
+++ b/src/changelogs/logs/2025/2025-05-09.md
@@ -0,0 +1,5 @@
+---
+date: 2025-05-09T10:04:11+0800
+---
+
+* Add a [Search page](/search) powered by the static search library [Pagefind](https://pagefind.app/).
diff --git a/src/index.vto b/src/index.vto
index c6a979b2..fe118997 100644
--- a/src/index.vto
+++ b/src/index.vto
@@ -5,6 +5,7 @@ metadata:
title: Home
isContentDivided: true
hasTooltips: true
+excludeFromSearch: true
eleventyNavigation:
key: Home
order: 1
@@ -17,7 +18,7 @@ eleventyComputed:
Hello! You can call me {{ sitemeta.siteAuthor.name }}. Welcome to my website! This site is my own personal hub and corner on the internet.
-
You can browse all my contents published on this site through the Archive page, or the Content Topics page. You can use the Explore page or the site map to navigate this website.
Looking for something on my website? If you have JavaScript enabled, you can use the search field below, which is powered by the static search library Pagefind. Your search query will not be recorded anywhere.
+
Accessibility Note
+
Unfortunately, it is a known issue that Pagefind's search field is not properly labelled, which affects screen readers' ability to understand the search field.
+
Search This Website
+
+
+
+
+
+
diff --git a/src/pages/sitemap.vto b/src/pages/sitemap.vto
index 10cdb6c9..17176172 100644
--- a/src/pages/sitemap.vto
+++ b/src/pages/sitemap.vto
@@ -1,6 +1,7 @@
---
title: Site Map
eleventyExcludeFromCollections: true
+excludeFromSearch: true
navigationOptions:
listClass: "sitemap"
eleventyComputed:
diff --git a/src/pages/statements/accessibility.md b/src/pages/statements/accessibility.md
index 7700ecb4..ae4fb12a 100644
--- a/src/pages/statements/accessibility.md
+++ b/src/pages/statements/accessibility.md
@@ -1,7 +1,7 @@
---
title: Accessibility
keyword: accessibility statement
-updated: 2025-02-20T21:13:48+0800
+updated: 2025-05-09T10:05:02+0800
eleventyNavigation:
order: 15
---
@@ -38,6 +38,10 @@ I use the following tools to test my site for accessibility:
In addition, I test the accessibility of my website manually by navigating with keyboard alone.
+## Known Issues
+
+The website's [Search page](/search/) includes a search field that is powered by [Pagefind](https://pagefind.app/), which has a [known issue](https://github.com/CloudCannon/pagefind/issues/158) of its search field input not being properly labelled, which affects screen readers' ability to understand the search field.
+
## Feedback
Feedback from disabled and neurodivergent people are welcome. You can [contact me via email](mailto:{{ sitemeta.siteAuthor.emailEncoded | safe }}) for feedbacks and suggestions for improving the accessibility of this site.
diff --git a/src/pages/statements/colophon.md b/src/pages/statements/colophon.md
index 57fe350b..c1792d6c 100644
--- a/src/pages/statements/colophon.md
+++ b/src/pages/statements/colophon.md
@@ -1,7 +1,7 @@
---
title: Colophon
keyword: colophon page
-updated: 2025-05-08T21:55:54+0800
+updated: 2025-05-09T09:51:16+0800
toc: true
eleventyNavigation:
order: 16
@@ -82,5 +82,6 @@ Due to this website being a static site, JavaScript is used to create dynamic an
* [Website Carbon Badge](https://www.websitecarbon.com/badge/), which is placed on the home page, uses JavaScript to calculate the carbon footprint of this website.
* [Joined page](/joined) includes webring widgets that use JavaScript.
* [Guestbook](/guestbook) uses JavaScript to render a form, send form data to my private Discord channel via Discord webhook, and fetch data from Google Sheets to display messages on the web page (guestbook code by [Vera Konigin](https://groundedwren.neocities.org/pages/controls/guestbookDemo)).
+* The search form on the [Search page](/search) is powered by [Pagefind](https://pagefind.app/), a static search library in JavaScript.
You can still access most of the content of this site with JavaScript disabled, but the above components will not work as intended.