2024-06-18 17:19:23 +00:00
|
|
|
<!-- proven.lol verification -->
|
2024-03-07 15:45:20 +00:00
|
|
|
<link rel="me" title="proven.lol" href="https://proven.lol/4cc26c">
|
2024-06-18 17:19:23 +00:00
|
|
|
<!-- cabin analytics -->
|
2024-06-18 20:03:48 +00:00
|
|
|
<script async defer src="https://cabin.jbowdre.lol/hello.js"></script>
|
2024-06-18 17:19:23 +00:00
|
|
|
<!-- typo animation -->
|
2024-08-04 18:47:21 +00:00
|
|
|
<script src="https://res.jbowdre.lol/js/typo.js" defer></script>
|
2024-03-07 15:45:20 +00:00
|
|
|
<script>
|
2024-06-14 19:46:33 +00:00
|
|
|
// implement typo
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
2024-08-04 20:13:40 +00:00
|
|
|
let typoElement = document.getElementById('typo');
|
2024-08-04 20:22:22 +00:00
|
|
|
if (typoElement) {
|
|
|
|
let typoText = "I write code to make imaginary computers run code written by less imaginary developers";
|
|
|
|
typo(typoElement, typoText);
|
|
|
|
}
|
2024-05-02 02:15:51 +00:00
|
|
|
});
|
2024-03-07 15:45:20 +00:00
|
|
|
</script>
|
2024-08-04 20:13:40 +00:00
|
|
|
<script src="https://res.jbowdre.lol/js/weather.js" defer></script>
|
2024-05-01 18:15:05 +00:00
|
|
|
<script>
|
2024-08-04 19:39:53 +00:00
|
|
|
// replace theme-song placeholder text when the musicthread response comes in
|
|
|
|
document.addEventListener('DOMContentLoaded', function() {
|
|
|
|
const themeSongContainer = document.getElementById('theme-song');
|
2024-08-04 20:13:40 +00:00
|
|
|
if (themeSongContainer) {
|
|
|
|
const observer = new MutationObserver(function(mutations) {
|
|
|
|
mutations.forEach(function(mutation) {
|
|
|
|
if (mutation.type === 'childList' && themeSongContainer.childNodes.length > 2) {
|
|
|
|
themeSongContainer.removeChild(themeSongContainer.firstChild);
|
|
|
|
observer.disconnect();
|
|
|
|
}
|
|
|
|
});
|
2024-05-02 02:15:51 +00:00
|
|
|
});
|
2024-08-04 20:13:40 +00:00
|
|
|
observer.observe(themeSongContainer, { childList: true });
|
|
|
|
}
|
2024-08-04 19:39:53 +00:00
|
|
|
});
|
2024-08-04 20:13:40 +00:00
|
|
|
</script>
|