Skip to content

Instantly share code, notes, and snippets.

View KTibow's full-sized avatar

Kendell R KTibow

View GitHub Profile
@KTibow
KTibow / abysmal.md
Created May 31, 2025 00:15
not so abysmal

abysmal: 10742 words → abysmal → abyssal → abyssa → abyss → abys → abs → as → at → ar → a → sa → s → o → e → ae → ad → an → am → m → ma → la → ta → to → bo → co → do → de → ee → er → or → os → is → it → ot → et → es → ed → d → l → al → ag → ap → p → pa → pat → sat → san → tan → man → mas → bas → ba → ha → ho → mo → so → se → si → li → le → re → are → ale → ala → aa → da → di → pi → ps → pt → t → c → cr → car → sar → sad → lad → lat → hat → bat → ban → bon → on → in → id → od → oe → he → me → mi → ti → tr → tar → tat → tot → tos → bos → mos → mot → cot → con → don → dan → lan → las → gas → pas → pis → pin → ain → ait → sit → st → su → bu → b → ab → ay → say → sam → ham → han → ran → ren → ree → lee → see → ser → der → des → res → red → rod → ro → lo → fo → fr → ur → us → um → im → em → en → el → ol → og → g → ga → wa → na → no → po → pot → pet → ret → rat → mat → mar → bar → bare → care → core → coe → toe → hoe → hee → her → per → par → pare → mare → mane → ane → ans → ars → ara → ra → rs → cs → cos → dos →

@KTibow
KTibow / README.md
Last active May 25, 2025 02:52
How to run SvelteKit on Val Town

How to run SvelteKit on Val Town

Glitch also supported static websites, as well as bundlers, like Vite. We don't support those things right now...

- Val Town for Glitch Users

are you sure about that?

Philosophy

@KTibow
KTibow / ClickToEdit.svelte
Created September 28, 2024 02:34
(pared down) version of a list item component that both drag/drops and can be edited, with the caret matching up
<script lang="ts">
import { createEventDispatcher } from "svelte";
export let text: string;
let editing = false;
let lastClickX = 0;
let lastClickY = 0;
const applyCaret = (node: HTMLInputElement) => {
@KTibow
KTibow / esphome_effect_snippet.yaml
Created August 19, 2023 17:39
chroma haze esphome light strip effect
- addressable_lambda:
name: "Chroma Haze"
update_interval: 100ms
lambda: |
static uint8_t hue = 160;
static uint16_t saturation = 255;
hue = hue - 5 + (uint16_t)(random_float() * 10);
float rand_v = random_float();
uint16_t new_saturation = 255 - (uint16_t)(rand_v * rand_v * 200);

Title: "WHY DA PEE PEE WET"

Page 1:
Contents: "Dear reader, you're on the verge to stumble upon some new experiences being an adolescent boy. Some things may be puzzling - like why da pee pee wet? Let's explore this together!"
Alt text: A young teen boy appearing confused, holding a magnifying glass, setting off on an investigation.

Page 2:
Contents: "Let's start from the basics. What's puberty? Puberty is when your body starts to develop and change. It's a part of growing up!"
Alt text: Animated image of a boy hitting a growth chart marked with ages and signs of puberty.

@KTibow
KTibow / AddNotification.svelte
Created April 12, 2023 11:45
My system for web notifications
<script>
import { PUBLIC_NOTIF_KEY } from "$env/static/public";
let setupState = false;
async function setup() {
setupState = "loading-0";
await Notification.requestPermission();
const registration = await navigator.serviceWorker.ready;
setupState = "loading-1";
let sub;
try {
from PIL import Image, ImageOps
image = Image.open("snapshot.jpg")
width, height = image.size
if width > 178 or height > 128:
image.thumbnail((178, 128))
image = ImageOps.pad(image, (178, 128), color=(255, 255, 255))
image = image.convert("1")
words = set(open("words.txt").read().splitlines())
word_length = int(input("Enter word length: "))
words = {word.lower() for word in words if len(word) == word_length}
letters = "abcdefghijklmnopqrstuvwxyz"
def calc_reduction(letter):
masks = ["".join([letter if c == letter else " " for c in word]) for word in words]
counts = dict()
for item in masks:
@KTibow
KTibow / Monaco.svelte
Created November 6, 2022 20:14
Monaco editor in svelte
<script>
import { onMount } from "svelte";
import editorWorker from "monaco-editor/esm/vs/editor/editor.worker?worker";
import jsonWorker from "monaco-editor/esm/vs/language/json/json.worker?worker";
import cssWorker from "monaco-editor/esm/vs/language/css/css.worker?worker";
import htmlWorker from "monaco-editor/esm/vs/language/html/html.worker?worker";
import tsWorker from "monaco-editor/esm/vs/language/typescript/ts.worker?worker";
let subscriptions = [];
export let content;
// ==UserScript==
// @name for r/place
// @namespace http://tampermonkey.net/
// @version 0.1
// @description try to take over the canvas!
// @author KTibow
// @match https://hot-potato.reddit.com/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=reddit.com
// @grant none
// @run-at document-end