24 Commits (355df550fc7bd95602af633e788907fca02578c4)

Author SHA1 Message Date
welpo 427ffc7241
feat(footer/socials): add base64 encoded email protection 2 years ago
welpo 725101300e
️ refactor(utterances): further minify JS 2 years ago
welpo a4e48b48fd
💡 chore: add comments 2 years ago
welpo 92e6af1d58
️ refactor: further minify theme initialization 2 years ago
Óscar 5cdc18e688
feat: add backlinks to footnotes (#101) 2 years ago
welpo 9a98789922
feat: add support for Isso comments 2 years ago
welpo e1dfd2ea07
🐛 fix: properly initialise `currentTheme`
The `currentTheme` variable is now properly initialized when setting
the initial theme, which fixes the "extra click" issue observed when system preference
is `dark` and there's no saved theme in localStorage.

Also minifies the themeSwitcher.

Fixes #94
2 years ago
welpo 4b43229d0a
🚚 chore(js): rename minified files 2 years ago
welpo 7924e8206c
feat: add support for Hyvor Talk comments 2 years ago
welpo 5993e950c7
feat: add support for giscus and utterances 2 years ago
welpo 19d120019b
feat: add support for giscus & utterances comments 2 years ago
welpo 93c8b577b8
🚧 feat: add utterances support 2 years ago
welpo 2dec139e41
feat: add copy button to code blocks 2 years ago
welpo 8e1473bba9
🚧 feat: add basic copy button to codeblocks 2 years ago
welpo 526c8a1e67
♻️ refactor: simplify theme switching logic
🐛 fix: ensure currentTheme is initialized correctly
2 years ago
welpo 9512bbb194
♻️ refactor: use `const` in theme initialization
Refactor the theme initialization script to use 'const' instead of 'let'
for the 'currentTheme' variable, as the value is not expected to change
after initialization.

This makes the code more clear and prevents accidental
re-assignment.
2 years ago
welpo 1efb0330e3
🐛 fix: remove flash when navigating in dark-mode
The `initialize-theme.js` script takes care of the following:

  1. If there is a stored theme value in the localStorage, set the theme
 based on that value.
  2. If there is no stored theme value, check the  user's system
  preference (dark or light) and set the theme accordingly.

The new `main.js` takes care of the actual theme switching and listening
to system preference changes (if the user has not manually set a theme).

Now the icons are stored in CSS, and are set according to the current
theme. This allows for having different icons that dynamically switch.

Additionally, wraps social and navigation elements in ul/li.

Fixes #76
2 years ago
welpo eb63718bbf
🚚 refactor: rename minified KaTeX css 2 years ago
welpo f9335b3fa4
feat: add KaTeX support 2 years ago
welpo 9a1f5db45c
feat: listen for changes on OS theme to switch accordingly
As long as the visitor has not changed the default theme, the site will
change between dark and light themes matching the OS setting.
2 years ago
serginogal 2f80b0b5ad feat: clean js code 2 years ago
welpo af80aef00c
feat: change default theme to OS default
Update the theme switcher code to set the default theme to the OS
default, rather than the "light" theme. This provides a more seamless
user experience for users whose OS is set to a dark mode. The current
theme setting in local storage will still be respected if present. This
change was made to improve the accessibility and usability.

Fixes #38
2 years ago
welpo 722d493a9a
💄 style: default light mode 2 years ago
welpo 0b117d1641 first commit 2 years ago