~ajhalili2006's personal website, built with Zensical (successor of Material for Mkdocs) [old repo name got bugged while attempting to do manual knot migration via repo deletion] andreijiroh.dev
zensical mkdocs-material website

feat(website): update content and links + website layout and banner

Also did some config updates behind the scenes during this session for
cafe (#cafe:hackclub.slack.com)

Signed-off-by: Andrei Jiroh Halili <ajhalili2006@andreijiroh.dev>

+1 -1
Pipfile
···
python_version = "3.12"
[scripts]
-
dev = "mkdocs serve --watch overrides --watch-theme --verbose"
+
dev = "mkdocs serve --watch overrides --watch-theme"
build = "mkdocs build -d public --verbose"
build-staging = "pipenv run build -f mkdocs.readthedocs.yml"
+20 -10
markdown/index.md
···
# Well hello there!
+
![Profile views](https://komarev.com/ghpvc/?username=ajhalili2006&label=profile+views&color=yellow&style=flat-square)
+
[![Hack Club](https://badges.api.lorebooks.wiki/badges/hackclub/hackclub?style=flat-square)](https://hackclub.com)
+
[![Community Lorebooks badge](https://img.shields.io/badge/lorebooks.wiki-008080?style=flat-square&logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMjRweCIgdmlld0JveD0iMCAtOTYwIDk2MCA5NjAiIHdpZHRoPSIyNHB4IiBmaWxsPSIjNGRkZGUwIj48cGF0aCBkPSJNMjYwLTMyMHE0NyAwIDkxLjUgMTAuNVQ0NDAtMjc4di0zOTRxLTQxLTI0LTg3LTM2dC05My0xMnEtMzYgMC03MS41IDdUMTIwLTY5MnYzOTZxMzUtMTIgNjkuNS0xOHQ3MC41LTZabTI2MCA0MnE0NC0yMSA4OC41LTMxLjVUNzAwLTMyMHEzNiAwIDcwLjUgNnQ2OS41IDE4di0zOTZxLTMzLTE0LTY4LjUtMjF0LTcxLjUtN3EtNDcgMC05MyAxMnQtODcgMzZ2Mzk0Wm0tNDAgMTE4cS00OC0zOC0xMDQtNTl0LTExNi0yMXEtNDIgMC04Mi41IDExVDEwMC0xOThxLTIxIDExLTQwLjUtMVQ0MC0yMzR2LTQ4MnEwLTExIDUuNS0yMVQ2Mi03NTJxNDYtMjQgOTYtMzZ0MTAyLTEycTU4IDAgMTEzLjUgMTVUNDgwLTc0MHE1MS0zMCAxMDYuNS00NVQ3MDAtODAwcTUyIDAgMTAyIDEydDk2IDM2cTExIDUgMTYuNSAxNXQ1LjUgMjF2NDgycTAgMjMtMTkuNSAzNXQtNDAuNSAxcS0zNy0yMC03Ny41LTMxVDcwMC0yNDBxLTYwIDAtMTE2IDIxdC0xMDQgNTlaTTI4MC00OTRaIi8%2BPC9zdmc%2B)](https://lorebooks.wiki)
+
![GitHub readme banner](https://github.com/ajhalili2006/ajhalili2006/raw/83d1552339fec8d91eadcab0289d43b6a9ef775c/static/readme-banner-2022.png)
-
I am **Andrei Jiroh Halili** (he/they), an Autistic[^1] Filipino currently full-time student at day,
-
open-sourcerer at [Recap Time Squad][rtdev] doing backend development in TypeScript across both
-
Node.js and Deno runtimes and BDFL in most of its projects, a [Hack Clubber] (joined on July 2024 during
-
[Arcade][hc-arcade] and maintainer of [leeksbot] (companion Slack app for leeks channel), future alumni 2025) and
-
Alpine Linux packager (currently maintaining [GitHub CLI] [in the aports]) at night.
+
I am **Andrei Jiroh Halili** (he/they), an Autistic[^1] Filipino currently full-time
+
student at day,
+
open-sourcerer[^4] at [Recap Time Squad][rtdev] doing backend development in TypeScript across both
+
Node.js and Deno runtimes and being a [(SA)BDFL][sabdfl-wiki] on in most of its
+
projects, a [Hack Clubber] (joined on July 2024 during [Arcade][hc-arcade]
+
and maintainer of [leeksbot] (companion Slack app for leeks channel), future
+
alumni 2025) and Alpine Linux packager (currently maintaining [GitHub CLI] [in the aports]) at night.
-
## Quick Links
+
## Quick Links>
_(see also [my links-in-bio page](./links.md) for all the links in one place)_
···
## More about myself
-
* While my early autism diagnosis helped me through speech therapy, I am still between masking/suffering in silence
-
while being neurodivergent in real life.
+
* Started in my TBD
+
* While my early autism diagnosis helped me through speech therapy, I am still
+
between masking/suffering in silence while being neurodivergent in real life.
## Tools I use and my setup
···
* **Secrets management tools**: [dotenvx] for Git-based setup but encrypted,
[Doppler SecretOps platform] for file-less remote configs
+
<!-- links -->
[rtdev]: https://recaptime.dev
[hc-arcade]: https://hackclub.com/arcade
[Hack Clubber]: https://hackclub.com
···
[in the aports]: https://gitlab.alpinelinux.org/alpine/aports
[mau.dev]: https://mau.dev/ajhalili2006
[saas]: https://gitlab.com/ajhalili2006
+
[sabdfl-wiki]: https://wiki.andreijiroh.dev/kooky-insane-stuff/vocabulary/sabdfl/
+
[GitHub]: https://github.com/ajhlili2006
+
[sourcehut]: https://sr.ht/~ajhalili2006
<!-- footnotes -->
[^1]: I use identity first language instead of medical/person first language in context of my disability and neurodivergence. but will adjust accordingly to other disabled/neurodivergent people's preferences as needed.
[^2]: `~tulir`: Tulir Asokan (<https://mau.fi>)
[^3]: These are brought by my dad aboard and sent them back home as gift.
+
[^4]: I mean open-source developer and maintainer myself for the uninitialized
<!--
I'm **Andrei Jiroh Halili** (he/they), an 18 year old Autistic[^7] Filipino student,
···
[^7]: While I am fine with anyone using person-first language (`person with autism`), I prefer identity-first language since neurodivergence is always part of human life and genome. See also this page in [my user manual](./user-manual/neurodivergence-and-disability.md) for more in depth guidance on language and disability.
[Honest Government Ads]: https://go.andreijiroh.xyz/honest-govt-ads
-
[GitHub]: https://github.com/ajhlili2006
-
[sourcehut]: https://sr.ht/~ajhalili2006
[across the fediverse]: https://tilde.zone/@ajhalili2006
[dotenvx]: https://go.andreijiroh.xyz/dotenvx
[Doppler SecretOps platform]: https://go.andreijiroh.xyz/doppler
+6 -5
markdown/links.md
···
## Meta
* :globe_with_meridians: [Personal website (you're actually here btw)](./index.md)
-
* :material-file-document-multiple: [Personal User Manual](./user-manual/index.md)
+
* :material-file-document-multiple: [Personal User Manual](https://wiki.andreijiroh.dev/garden/user-manual/index.md)
* :octicons-book-16: [Personal wiki / Digital Garden](https://wiki.andreijiroh.dev)
* :calendar: [now page](./now.md)
···
* :infinity: [Awesome Neurodiversity](https://linktr.ee/AwesomeND) - awesome list for resources aimed at neurodivergent people and allies/friends of them. **Currently on hiatus**
* :compass: [Andrei Jiroh in the multiverse / multifandom hellscapes](https://linktr.ee/MFHellscapes) - Just me across fandoms.
-
* :writing_hand: [The Bloody Hell PH](https://fromthebshq.carrd.co/) - Not just political writings and other things not in the main blog.
-
* :tools: [Recap Time Squad / RecapTime.dev](https://recaptime.dev) - home of most open-source work I do
+
* :writing_hand: [The Bloody Hell PH](https://fromthebshq.carrd.co/) - Not just political writings and other things not in the main blog. **Probably on hiatus at the moment**
+
* :tools: [Recap Time Squad / RecapTime.dev](https://recaptime.dev) - home of most open-source work I do, among other things **Currently cooking right now**
+
* :simple-hackclub: **Hack Club** - online community for teenage hackers and makers
* :computer: In The Tildeverse
* [:simple-hackclub: Hack Club Nest](https://wiki.andreijiroh.dev/garden/tildeverse/hackclub-nest)
* [:rocket: Uberspace](https://wiki.andreijiroh.dev/garden/tildeverse/uberspace)
···
* :octicons-mark-github-24: [GitHub profile](https://github.com/ajhalili2006)
* [Extended namespace](https://github.com/andreijiroh-dev)
* [Experimential projects](https://github.com/ajhalili2006-experiments)
-
* :simple-gitlab: [GitLab profile](https://mau.dev/ajhalili2006) ([also on GitLab SaaS](https://gitlab.com/ajhalili2006))
-
* [Extended namespace](https://mau.dev/andreijiroh-dev)
+
* :simple-gitlab: [GitLab profile on SaaS](https://gitlab.com/ajhalili2006) ([also on Manimum GitLab](https://mau.dev/ajhalili2006))
+
* [Extended namespace](https://gitlab.com/andreijiroh-dev) ([alt](https://mau.dev/andreijiroh-dev))
* :simple-codeberg: [Codeberg](https://codeberg.org/ajhalili2006)
* :simple-sourcehut: [sourcehut](https://sr.ht/~ajhalili2006)
* :simple-launchpad: [Launchpad.net](https://launchpad.net/~ajhalili2006)
+20 -14
markdown/now.md
···
description: What ~ajhalili2006 been doing lately, sometimes behind the scenes.
---
-
Welcome to my [now page][nowpage-info] where I log what's been cooking behind the scenes.
-
([sneak to my nownownow entry](https://nownownow.com/p/Dxh0) for some tidbits) I'll try to
-
update this page on a weekly or monthly basis, depending on my schedule and if I have been
-
hit by (autistic) burnout.
+
Welcome to my [now page][nowpage-info] where I log what's been cooking behind the
+
scenes lately. ([sneak to my nownownow entry for this page][nownownow]) for some tidbits)
[nowpage-info]: https://nownownow.com/about
+
[nownownow]: https://nownownow.com/p/Dxh0
-
_**Last updated (PHT)**: 2025-02-12 from Marilao, Bulacan, PH_
+
_**Last updated (PHT)**: 2025-02-15 from Marilao, Bulacan, PH_
## February 2025
### Listening on Loop
-
Here are the songs I listen on loop for the month of February 2025:
+
Here are the songs I listen on loop for the month of [February 2025](https://www.last.fm/user/ajhalili2006/library?from=2025-02-01&to=2025-02-28):
-
* Royal Blood - Tell Me When It's Too Late
-
*
+
* Royal Blood - Tell Me When It's Too Late ([last.fm scrobbling data][scrbl-tmwitl])
+
* Koven - Industrial Strain ([last.dm scrobbling data][scrbl-is])
+
* Nitro Fun - POWER ([last.fm scrobbling data][scrbl-pwr])
+
+
[scrbl-tmwitl]: https://www.last.fm/user/ajahalili2006/library/music/Royal+Blood/_/Tell+Me+When+It’s+Too+Late
+
[scrbl-is]: https:///www.last.fm/user/ajhalili2006/library/music
+
[scrbl-pwr]: https://www.last.fm/user/ajhalili2006/library/music/Nitro+Fun/_/POWER
### Recap Time Squad and friends
-
TBD
+
At Recap Time Squad side of the things, we moved `recaptime.dev` and other domains back to
+
Cloudflare Registrar (with my High Seas HCB credits) from Porkbun and used
### Hack Club
-
Grinded TBD hours of coding (mostly backend dev and literally writing Markdown content)
-
during [High Seas](https://highseas.hackclub.com), and here's what I ordered in the
-
wind down periods (aka before the shop closes):
+
Grinded 148 hours of coding (mostly backend dev and literally writing Markdown
+
content) during [High Seas](https://highseas.hackclub.com), and here's what I
+
ordered in the wind down periods (aka before the shop closes):
* USD 280 on Porkbun + Cloudflare HCB credits
-
* a lot of piles of stickers
+
* USD 20 for `recaptime.dev` (USD 25.78)
+
* a lot of piles of stickers (hopefully it does not get lost on mail)
* Raspberry Pi 5 for dedicated homelab server setup at home
-
*
+
* Another YubiKey 5C NFC because I lost the first one from Arcade (RIP)
### School
+2 -2
mkdocs.readthedocs.yml
···
INHERIT: mkdocs.yml
-
site_name: ~ajhalili2006 (staging website)
-
site_url: https://staging.andreijiroh.xyz/
+
site_name: ~ajhalili2006 (on RTD Community)
+
site_url: https://staging.andreijiroh.dev/
docs_dir: markdown
site_dir: public
extra:
+18 -18
mkdocs.yml
···
# navbar
nav:
-
- Home:
-
- index.md
-
- nowpage: now.md
-
- Contact: contact/index.md
-
- PGP and SSH keys: keys/index.md
-
- "All my links": links.md
-
- Legal:
-
- Security policy: security.md
+
- Profile README: index.md
+
- Meta:
+
- nowpage: now.md
+
- "All my links": links.md
+
- Contact: contact/index.md
+
- PGP and SSH keys: keys/index.md
+
- Legal:
+
- Security policy: security.md
- User manual: https://wiki.andreijiroh.dev/garden/user-manual
-
- Portfolio:
-
- portfolio/index.md
-
- Projects: portfolio/projects.md
-
- Communities: portfolio/communities.md
-
- Tildes: portfolio/tildes.md
-
- Resume: user-manual/resume.md
+
- Portfolio:
+
- portfolio/index.md
+
- Projects: portfolio/projects.md
+
- Communities: portfolio/communities.md
+
- Tildes: portfolio/tildes.md
+
- Resume: user-manual/resume.md
- Blog: "https://blog.andreijiroh.dev"
# theme settings
···
- icon: fontawesome/brands/twitter
link: https://twitter.com/ajhalili2006
name: ~ajhalili2006 on twitter
-
+
# substack
- icon: simple/substack
link: https://ajhalili2006.substack.com
···
link: https://github.com/ajhalili2006
name: ~ajhalili2006 on github
- icon: fontawesome/brands/gitlab
-
link: https://mau.dev/ajhalili2006
-
name: ~ajhalili2006 on mauinum gitlab instance
+
link: https://gitlab.com/ajhalili2006
+
name: ~ajhalili2006 on GitLab SaaS instance
- icon: simple/sourcehut
link: https://sr.ht/~ajhalili2006
name: ~ajhalili2006 on sr.ht
···
- icon: fontawesome/brands/facebook
link: https://facebook.com/ajhalili2006
name: ~ajhalili2006's personal (slash professional profile) facebook account
-
+
# linkedin
- icon: fontawesome/brands/linkedin
link: https://linkedin.com/in/ajhalili2006
+1 -1
overrides/assets/stylesheets/mkdocs-material-styling.css
···
-
@keyframes heart{0%,40%,80%,to{transform:scale(1)}20%,60%{transform:scale(1.15)}}.md-typeset .twitter{color:#00acee}.md-typeset .substack{color:#ff6719}.md-typeset .mastodon{color:#897ff8}.md-typeset .mdx-video{width:auto}.md-typeset .mdx-video__inner{height:0;padding-bottom:56.138%;position:relative;width:100%}.md-typeset .mdx-video iframe{border:none;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.md-typeset .mdx-heart{animation:heart 1s infinite}.md-typeset .mdx-insiders{color:#e91e63}.md-typeset .mdx-badge{font-size:.85em}.md-typeset .mdx-badge--heart{--md-typeset-a-color:#e92063;--md-accent-fg-color:#ff4281;--md-accent-fg-color--transparent:#e920631a}.md-typeset .mdx-badge--heart .twemoji{animation:heart 1s infinite}.md-typeset .mdx-badge--right{float:right;margin-left:.35em}[dir=ltr] .md-typeset .mdx-badge__icon{border-top-left-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__icon{border-top-right-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__icon{border-bottom-left-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__icon{border-bottom-right-radius:.1rem}.md-typeset .mdx-badge__icon{background:var(--md-accent-fg-color--transparent);padding:.2rem}.md-typeset .mdx-badge__icon:last-child{border-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__text{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__text{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__text{border-bottom-right-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__text{border-bottom-left-radius:.1rem}.md-typeset .mdx-badge__text{box-shadow:0 0 0 1px inset var(--md-accent-fg-color--transparent);padding:.2rem .3rem}.md-typeset .mdx-switch button{cursor:pointer;transition:opacity .25s}.md-typeset .mdx-switch button:focus,.md-typeset .mdx-switch button:hover{opacity:.75}.md-typeset .mdx-switch button>code{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block}.md-typeset .mdx-columns ol,.md-typeset .mdx-columns ul{-moz-columns:2;column-count:2}@media screen and (max-width:29.984375em){.md-typeset .mdx-columns ol,.md-typeset .mdx-columns ul{-moz-columns:initial;columns:initial}}.md-typeset .mdx-columns li{-moz-column-break-inside:avoid;break-inside:avoid}.md-typeset .mdx-flags{margin:2em auto}.md-typeset .mdx-flags ol{list-style:none}.md-typeset .mdx-flags ol li{margin-bottom:1em}.md-typeset .mdx-flags__item{display:flex;gap:.6rem}.md-typeset .mdx-flags__content{display:flex;flex:1;flex-direction:column}.md-typeset .mdx-flags__content span{align-items:baseline;display:inline-flex;justify-content:space-between}.md-typeset .mdx-flags__content>span:nth-child(2){font-size:80%}.md-typeset .mdx-flags__content code{float:right}.md-typeset .mdx-social{height:min(27rem,80vw);position:relative}.md-typeset .mdx-social:hover .mdx-social__image{background-color:#e4e4e40d}.md-typeset .mdx-social__layer{margin-top:4rem;position:absolute;transform-style:preserve-3d;transition:.25s cubic-bezier(.7,0,.3,1)}.md-typeset .mdx-social__layer:hover .mdx-social__label{opacity:1}.md-typeset .mdx-social__layer:hover .mdx-social__image{background-color:#7f7f7ffc}.md-typeset .mdx-social__layer:hover~.mdx-social__layer{opacity:0}.md-typeset .mdx-social__image{box-shadow:-.25rem .25rem .5rem #0000000d;transform:rotate(-40deg) skew(15deg,15deg) scale(.7);transition:all .25s}.md-typeset .mdx-social__image img{display:block}.md-typeset .mdx-social__label{background-color:var(--md-default-fg-color--light);color:var(--md-default-bg-color);display:block;opacity:0;padding:.2rem .4rem;position:absolute;transition:all .25s}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(6){transform:translateY(-30px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(5){transform:translateY(-20px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(4){transform:translateY(-10px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(3){transform:translateY(0)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(2){transform:translateY(10px)}.md-typeset .mdx-social:hover .mdx-social__layer:first-child{transform:translateY(20px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(0){transform:translateY(30px)}.md-banner{color:var(--md-footer-fg-color--lighter)}.md-banner strong{white-space:nowrap}.md-banner a,.md-banner strong{color:var(--md-footer-fg-color)}.md-banner a:focus,.md-banner a:hover{color:currentcolor}.md-banner a:focus .twemoji,.md-banner a:hover .twemoji{background-color:var(--md-footer-fg-color);box-shadow:none}.md-banner .twemoji{border-radius:100%;box-shadow:inset 0 0 0 .05rem currentcolor;display:inline-block;height:1.2rem;padding:.25rem;transition:all .25s;vertical-align:bottom;width:1.2rem}.md-banner .twemoji svg{display:block;max-height:none}.mdx-container{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(0, 0%, 100%, 1)' /></svg>") no-repeat bottom,linear-gradient(to bottom,var(--md-primary-fg-color),#a63fd9 99%,var(--md-default-bg-color) 99%);padding-top:1rem}[data-md-color-scheme=slate] .mdx-container{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(230, 15%, 14%, 1)' /></svg>") no-repeat bottom,linear-gradient(to bottom,var(--md-primary-fg-color),#363949 99%,var(--md-default-bg-color) 99%)}.mdx-hero{color:var(--md-primary-bg-color);margin:0 .8rem}.mdx-hero h1{color:currentcolor;font-weight:700;margin-bottom:1rem}@media screen and (max-width:29.984375em){.mdx-hero h1{font-size:1.4rem}}.mdx-hero__content{padding-bottom:6rem}@media screen and (min-width:60em){.mdx-hero{align-items:stretch;display:flex}.mdx-hero__content{margin-top:3.5rem;max-width:19rem;padding-bottom:14vw}.mdx-hero__image{order:1;transform:translateX(4rem);width:38rem}}@media screen and (min-width:76.25em){.mdx-hero__image{transform:translateX(8rem)}}.mdx-hero .md-button{color:var(--md-primary-bg-color);margin-right:.5rem;margin-top:.5rem}.mdx-hero .md-button:focus,.mdx-hero .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.mdx-hero .md-button--primary{background-color:var(--md-primary-bg-color);border-color:var(--md-primary-bg-color);color:#894da8}.md-typeset .mdx-iconsearch{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z1);position:relative;transition:box-shadow 125ms}.md-typeset .mdx-iconsearch:focus-within,.md-typeset .mdx-iconsearch:hover{box-shadow:var(--md-shadow-z2)}.md-typeset .mdx-iconsearch .md-input{background:var(--md-default-bg-color);box-shadow:none}[data-md-color-scheme=slate] .md-typeset .mdx-iconsearch .md-input{background:var(--md-code-bg-color)}.md-typeset .mdx-iconsearch-result{-webkit-backface-visibility:hidden;backface-visibility:hidden;max-height:50vh;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:pan-y}.md-tooltip .md-typeset .mdx-iconsearch-result{max-height:10.25rem}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset .mdx-iconsearch-result__meta{color:var(--md-default-fg-color--lighter);font-size:.64rem;position:absolute;right:.6rem;top:.4rem}[dir=ltr] .md-typeset .mdx-iconsearch-result__list{margin-left:0}[dir=rtl] .md-typeset .mdx-iconsearch-result__list{margin-right:0}.md-typeset .mdx-iconsearch-result__list{list-style:none;margin:0;padding:0}[dir=ltr] .md-typeset .mdx-iconsearch-result__item{margin-left:0}[dir=rtl] .md-typeset .mdx-iconsearch-result__item{margin-right:0}.md-typeset .mdx-iconsearch-result__item{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin:0;padding:.2rem .6rem}.md-typeset .mdx-iconsearch-result__item:last-child{border-bottom:none}.md-typeset .mdx-iconsearch-result__item>*{margin-right:.6rem}.md-typeset .mdx-iconsearch-result__item img{height:.9rem;width:.9rem}[data-md-color-scheme=slate] .md-typeset .mdx-iconsearch-result__item img[src*=squidfunk]{filter:invert(1)}.md-typeset .mdx-premium p{margin:2em 0;text-align:center}.md-typeset .mdx-premium img{height:3.25rem}.md-typeset .mdx-premium p:last-child{display:flex;flex-wrap:wrap;justify-content:center}.md-typeset .mdx-premium p:last-child>a{display:block;flex-shrink:0}.md-typeset .mdx-sponsorship__list{margin:2em 0}.md-typeset .mdx-sponsorship__list:after{clear:both;content:"";display:block}[dir=ltr] .md-typeset .mdx-sponsorship__item{float:left}[dir=rtl] .md-typeset .mdx-sponsorship__item{float:right}.md-typeset .mdx-sponsorship__item{border-radius:100%;display:block;height:1.6rem;margin:.2rem;overflow:hidden;transform:scale(1);transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .mdx-sponsorship__item:focus,.md-typeset .mdx-sponsorship__item:hover{transform:scale(1.1)}.md-typeset .mdx-sponsorship__item:focus img,.md-typeset .mdx-sponsorship__item:hover img{filter:grayscale(0)}.md-typeset .mdx-sponsorship__item--private{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .mdx-sponsorship__item img{display:block;filter:grayscale(100%) opacity(75%);height:auto;transition:filter 125ms;width:100%}.md-typeset .mdx-sponsorship-button{font-weight:400}.md-typeset .mdx-sponsorship-count,.md-typeset .mdx-sponsorship-total{font-weight:700}
+
@keyframes heart{0%,40%,80%,to{transform:scale(1)}20%,60%{transform:scale(1.15)}}.md-typeset .twitter{color:#00acee}.md-typeset .mastodon{color:#897ff8}.md-typeset .mdx-video{width:auto}.md-typeset .mdx-video__inner{height:0;padding-bottom:56.138%;position:relative;width:100%}.md-typeset .mdx-video iframe{border:none;height:100%;left:0;overflow:hidden;position:absolute;top:0;width:100%}.md-typeset .mdx-heart{animation:heart 1s infinite}.md-typeset .mdx-insiders{color:#e91e63}.md-typeset .mdx-badge{font-size:.85em}.md-typeset .mdx-badge--heart{--md-typeset-a-color:#e92063;--md-accent-fg-color:#ff4281;--md-accent-fg-color--transparent:#e920631a;color:#e91e63}.md-typeset .mdx-badge--heart .twemoji{animation:heart 1s infinite}.md-typeset .mdx-badge--right{float:right;margin-left:.35em}[dir=ltr] .md-typeset .mdx-badge__icon{border-top-left-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__icon{border-top-right-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__icon{border-bottom-left-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__icon{border-bottom-right-radius:.1rem}.md-typeset .mdx-badge__icon{background:var(--md-accent-fg-color--transparent);padding:.2rem}.md-typeset .mdx-badge__icon:last-child{border-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__text{border-top-right-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__text{border-top-left-radius:.1rem}[dir=ltr] .md-typeset .mdx-badge__text{border-bottom-right-radius:.1rem}[dir=rtl] .md-typeset .mdx-badge__text{border-bottom-left-radius:.1rem}.md-typeset .mdx-badge__text{box-shadow:0 0 0 1px inset var(--md-accent-fg-color--transparent);padding:.2rem .3rem}.md-typeset .mdx-switch button{cursor:pointer;transition:opacity .25s}.md-typeset .mdx-switch button:focus,.md-typeset .mdx-switch button:hover{opacity:.75}.md-typeset .mdx-switch button>code{background-color:var(--md-primary-fg-color);color:var(--md-primary-bg-color);display:block}.md-typeset .mdx-columns ol,.md-typeset .mdx-columns ul{-moz-columns:2;column-count:2}@media screen and (max-width:29.984375em){.md-typeset .mdx-columns ol,.md-typeset .mdx-columns ul{-moz-columns:initial;columns:initial}}.md-typeset .mdx-columns li{-moz-column-break-inside:avoid;break-inside:avoid}.md-typeset .mdx-flags{margin:2em auto}.md-typeset .mdx-flags ol{list-style:none}.md-typeset .mdx-flags ol li{margin-bottom:1em}.md-typeset .mdx-flags__item{display:flex;gap:.6rem}.md-typeset .mdx-flags__content{display:flex;flex:1;flex-direction:column}.md-typeset .mdx-flags__content span{align-items:baseline;display:inline-flex;justify-content:space-between}.md-typeset .mdx-flags__content>span:nth-child(2){font-size:80%}.md-typeset .mdx-flags__content code{float:right}.md-typeset .mdx-social{height:min(27rem,80vw);position:relative}.md-typeset .mdx-social:hover .mdx-social__image{background-color:#e4e4e40d}.md-typeset .mdx-social__layer{margin-top:4rem;position:absolute;transform-style:preserve-3d;transition:.25s cubic-bezier(.7,0,.3,1)}.md-typeset .mdx-social__layer:hover .mdx-social__label{opacity:1}.md-typeset .mdx-social__layer:hover .mdx-social__image{background-color:#7f7f7ffc}.md-typeset .mdx-social__layer:hover~.mdx-social__layer{opacity:0}.md-typeset .mdx-social__image{box-shadow:-.25rem .25rem .5rem #0000000d;transform:rotate(-40deg) skew(15deg,15deg) scale(.7);transition:all .25s}.md-typeset .mdx-social__image img{display:block}.md-typeset .mdx-social__label{background-color:var(--md-default-fg-color--light);color:var(--md-default-bg-color);display:block;opacity:0;padding:.2rem .4rem;position:absolute;transition:all .25s}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(6){transform:translateY(-30px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(5){transform:translateY(-20px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(4){transform:translateY(-10px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(3){transform:translateY(0)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(2){transform:translateY(10px)}.md-typeset .mdx-social:hover .mdx-social__layer:first-child{transform:translateY(20px)}.md-typeset .mdx-social:hover .mdx-social__layer:nth-child(0){transform:translateY(30px)}.md-banner{color:var(--md-footer-fg-color--lighter)}.md-banner strong{white-space:nowrap}.md-banner a,.md-banner strong{color:var(--md-footer-fg-color)}.md-banner a:focus,.md-banner a:hover{color:currentcolor}.md-banner a:focus .twemoji,.md-banner a:hover .twemoji{background-color:var(--md-footer-fg-color);box-shadow:none}.md-banner .twemoji{border-radius:100%;box-shadow:inset 0 0 0 .05rem currentcolor;display:inline-block;height:1.2rem;padding:.25rem;transition:all .25s;vertical-align:bottom;width:1.2rem}.md-banner .twemoji svg{display:block;max-height:none}.mdx-container{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(0, 0%, 100%, 1)' /></svg>") no-repeat bottom,linear-gradient(to bottom,var(--md-primary-fg-color),#a63fd9 99%,var(--md-default-bg-color) 99%);padding-top:1rem}[data-md-color-scheme=slate] .mdx-container{background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1123 258'><path d='M1124,2c0,0 0,256 0,256l-1125,0l0,-48c0,0 16,5 55,5c116,0 197,-92 325,-92c121,0 114,46 254,46c140,0 214,-167 572,-166Z' style='fill: hsla(230, 15%, 14%, 1)' /></svg>") no-repeat bottom,linear-gradient(to bottom,var(--md-primary-fg-color),#363949 99%,var(--md-default-bg-color) 99%)}.mdx-hero{color:var(--md-primary-bg-color);margin:0 .8rem}.mdx-hero h1{color:currentcolor;font-weight:700;margin-bottom:1rem}@media screen and (max-width:29.984375em){.mdx-hero h1{font-size:1.4rem}}.mdx-hero__content{padding-bottom:6rem}@media screen and (min-width:60em){.mdx-hero{align-items:stretch;display:flex}.mdx-hero__content{margin-top:3.5rem;max-width:19rem;padding-bottom:14vw}.mdx-hero__image{order:1;transform:translateX(4rem);width:38rem}}@media screen and (min-width:76.25em){.mdx-hero__image{transform:translateX(8rem)}}.mdx-hero .md-button{color:var(--md-primary-bg-color);margin-right:.5rem;margin-top:.5rem}.mdx-hero .md-button:focus,.mdx-hero .md-button:hover{background-color:var(--md-accent-fg-color);border-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color)}.mdx-hero .md-button--primary{background-color:var(--md-primary-bg-color);border-color:var(--md-primary-bg-color);color:#894da8}.md-typeset .mdx-iconsearch{background-color:var(--md-default-bg-color);border-radius:.1rem;box-shadow:var(--md-shadow-z1);position:relative;transition:box-shadow 125ms}.md-typeset .mdx-iconsearch:focus-within,.md-typeset .mdx-iconsearch:hover{box-shadow:var(--md-shadow-z2)}.md-typeset .mdx-iconsearch .md-input{background:var(--md-default-bg-color);box-shadow:none}[data-md-color-scheme=slate] .md-typeset .mdx-iconsearch .md-input{background:var(--md-code-bg-color)}.md-typeset .mdx-iconsearch-result{-webkit-backface-visibility:hidden;backface-visibility:hidden;max-height:50vh;overflow-y:auto;scrollbar-color:var(--md-default-fg-color--lighter) #0000;scrollbar-width:thin;touch-action:pan-y}.md-tooltip .md-typeset .mdx-iconsearch-result{max-height:10.25rem}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar{height:.2rem;width:.2rem}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar-thumb{background-color:var(--md-default-fg-color--lighter)}.md-typeset .mdx-iconsearch-result::-webkit-scrollbar-thumb:hover{background-color:var(--md-accent-fg-color)}.md-typeset .mdx-iconsearch-result__meta{color:var(--md-default-fg-color--lighter);font-size:.64rem;position:absolute;right:.6rem;top:.4rem}@media screen and (max-width:29.984375em){.md-typeset .mdx-iconsearch-result__meta{display:none}}.md-typeset .mdx-iconsearch-result__select{background-color:var(--md-default-fg-color--lightest);border:none;border-radius:.1rem;color:var(--md-default-fg-color--light);font-size:.64rem;padding-bottom:.15em;padding-top:.15em;position:absolute;right:.6rem;top:.4rem;transition:color 125ms,background-color 125ms}.md-typeset .mdx-iconsearch-result__select:focus,.md-typeset .mdx-iconsearch-result__select:hover{background-color:var(--md-accent-fg-color);color:var(--md-accent-bg-color);outline:none}.md-typeset .mdx-iconsearch-result__select+.mdx-iconsearch-result__meta{right:4.1rem}[dir=ltr] .md-typeset .mdx-iconsearch-result__list{margin-left:0}[dir=rtl] .md-typeset .mdx-iconsearch-result__list{margin-right:0}.md-typeset .mdx-iconsearch-result__list{list-style:none;margin:0;padding:0}[dir=ltr] .md-typeset .mdx-iconsearch-result__item{margin-left:0}[dir=rtl] .md-typeset .mdx-iconsearch-result__item{margin-right:0}.md-typeset .mdx-iconsearch-result__item{border-bottom:.05rem solid var(--md-default-fg-color--lightest);margin:0;padding:.2rem .6rem}.md-typeset .mdx-iconsearch-result__item:last-child{border-bottom:none}.md-typeset .mdx-iconsearch-result__item>*{margin-right:.6rem}.md-typeset .mdx-iconsearch-result__item img{height:.9rem;width:.9rem}[data-md-color-scheme=slate] .md-typeset .mdx-iconsearch-result__item img[src*=squidfunk]{filter:invert(1)}.md-typeset .mdx-premium p{margin:2em 0;text-align:center}.md-typeset .mdx-premium img{height:3.25rem}.md-typeset .mdx-premium p:last-child{display:flex;flex-wrap:wrap;justify-content:center}.md-typeset .mdx-premium p:last-child>a{display:block;flex-shrink:0}.md-typeset .mdx-sponsorship__list{margin:2em 0}.md-typeset .mdx-sponsorship__list:after{clear:both;content:"";display:block}[dir=ltr] .md-typeset .mdx-sponsorship__item{float:left}[dir=rtl] .md-typeset .mdx-sponsorship__item{float:right}.md-typeset .mdx-sponsorship__item{border-radius:100%;display:block;height:1.6rem;margin:.2rem;overflow:hidden;transform:scale(1);transition:color 125ms,transform 125ms;width:1.6rem}.md-typeset .mdx-sponsorship__item:focus,.md-typeset .mdx-sponsorship__item:hover{transform:scale(1.1)}.md-typeset .mdx-sponsorship__item:focus img,.md-typeset .mdx-sponsorship__item:hover img{filter:grayscale(0)}.md-typeset .mdx-sponsorship__item--private{background:var(--md-default-fg-color--lightest);color:var(--md-default-fg-color--lighter);font-size:.6rem;font-weight:700;line-height:1.6rem;text-align:center}.md-typeset .mdx-sponsorship__item img{display:block;filter:grayscale(100%) opacity(75%);height:auto;transition:filter 125ms;width:100%}.md-typeset .mdx-sponsorship-button{font-weight:400}.md-typeset .mdx-sponsorship-count,.md-typeset .mdx-sponsorship-total{font-weight:700}
+3
overrides/assets/stylesheets/theme.css
···
+
@import url("./mkdocs-material-styling.css");
+
+
.bluesky{color: rgb(10, 122, 255)}.md-typeset .substack{color:#ff6719}.md-typeset
-3
overrides/base.html
···
-
{#-
-
This file was automatically generated - do not edit
-
-#}
{% import "partials/language.html" as lang with context %}
<!doctype html>
<html lang="{{ lang.t('language') }}" class="no-js">
+19 -13
overrides/main.html
···
{% extends "base.html" %}
{% block extrahead %}
-
<link rel="stylesheet" href="{{ 'assets/stylesheets/mkdocs-material-styling.css' | url }}">
+
<link rel="stylesheet" href="{{ 'assets/stylesheets/theme.css' | url }}">
<script src="https://hypothes.is/embed.js" async></script>
<!--<script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-7086107380680684" crossorigin="anonymous"></script>-->
···
{% include ".icons/fontawesome/brands/mastodon.svg" %}
</span>
<strong>the tildeverse</strong>
+
</a>,
+
<a rel="me" href="https://bsky.app/profile/andreijiroh.dev">
+
<span class="twemoji bluesky">
+
{% include ".icons/simple/bluesky.svg" %}
+
</span>
+
<strong>Bluesky</strong>
</a>
and
<a href="https://substack.com/@ajhalili2006">
-
<span class="twemoji substack">
-
{% include ".icons/simple/substack.svg" %}
-
</span>
-
<strong>Substack</strong>
+
<span class="twemoji substack">
+
{% include ".icons/simple/substack.svg" %}
+
</span>
+
<strong>Substack</strong>
</a>
{% endblock %}
{% block container %}
-
<div class="md-content" data-md-component="content">
-
<article class="md-content__inner md-typeset">
-
{% block content %}
-
{% include "partials/content.html" %}
-
{% endblock %}
-
</article>
-
</div>
-
{% endblock %}
+
<div class="md-content" data-md-component="content">
+
<article class="md-content__inner md-typeset">
+
{% block content %}
+
{% include "partials/content.html" %}
+
{% endblock %}
+
</article>
+
</div>
+
{% endblock %}