This page is a log of major improvements to this website.
Optimize Index Page Load Time
The time is 2024-04-17. I suddenly decided to improve the load time of this site.
I used the following settings when testing: Speed Throttling: GPRS. Cache Disabled.
Adding a single <link rel="preload"/>
tag for the external link indicator brings the index page’s load time from 2.56s down to 1s! The order of tags inside <head>
is actually important! Tip: put the most important CSS files first.
P.S. The emulated GPRS speed seems faster than I imagined.
Lume News
In case you haven’t visited the about page of this website, you now know that this website is made with Lume.
Lume now has a content-management system and a template-based file-creation system. Although I don’t need either of those features, you should check it out!
SVG Icons
I got this idea from staring at the nav bar of https://play.date/.
background-image
is a thing of the past. (-webkit-)mask-image
is better, which, along with background-color: currentColor
, allows text-colored SVG icons to exist.
These are the icons: . You can find them on the table of contents page, with or without JS.
One caveat when using mask-image: url(image.svg#id)
: #id
can only target a SVG shape such as <path>
, not other elements like <g>
.
Decreasing Build Time
2024-06-26
I got tired of waiting for my website to build, so I made it build faster.
I had to rerun all the measurements when the machine is under the same load with hyperfine to have a fair comparison. Time is really subjective…
Before, it takes 4.499 s ± 0.147 s to build.
Removing inline and esbuild cuts the build time down to 3.588 s ± 0.095 s.
Replacing remarked with markdown-it and rewriting articles with katex in Djot reduces the build time to 2.878 s ± 0.097 s
And the final build time is 2.790 s ± 0.089 s. I forgot what I did. Mostly cache busting, I think.
See the author of Lume teach me how to profile Lume.
Making /sitemap/ Javascript free
2024-07-14
There’s not much to talk about this, except that I can now claim my website can be view 100% Javascript-free!
Remove title=""
from everything
Also 2024-07-14.
title=""
is invisible inside mobile browsers, so I replaced all of them with plain text. e.g. from <abbr title="desc">what</abbr>
to what (desc)
or desc (what)
. In some rare cases, I opted for aria-label="desc"
.
I had to completely redesign (read: use text instead of symbolism) the whole nav bar.
I hope this makes my website more accessible to visual-only readers.