Skip to content

Instantly share code, notes, and snippets.

View StoneyEagle's full-sized avatar
🦅

Stoney_Eagle StoneyEagle

🦅
View GitHub Profile
@StoneyEagle
StoneyEagle / 404.html
Created January 10, 2025 14:25 — forked from leonsilicon/404.html
Properly set up routing for an SPA hosted on GitHub pages
<!DOCTYPE html>
<html>
<head>
<script>
sessionStorage.redirect = location.href;
const projectPages = true; // If you're using the base .github.io domain without a path (i.e. <name>.github.io is your home page), set this to false
const l = window.location;
const repo = projectPages ? '/' + l.pathname.split('/')[1] : '';
l.replace(
l.protocol + '//' + l.hostname + (l.port ? ':' + l.port : '') + repo
@StoneyEagle
StoneyEagle / frosting.css
Created December 13, 2024 19:02
Card frosting
html.xmas .frosting::before {
content: '';
display: block;
position: absolute;
top: -7px;
left: -3px;
right: 0;
z-index: 999;
height: 23px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACsAAAAXCAYAAACS5bYWAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAABFpJREFUeNrUV0tIo1cUvpkYjQ4xxSA6DxuNqG0dtaUKOgs3s6i0dFd3pSsXdjeIixakiGA34sZuXCkoONLFwJTK4GMYLYXg29gatTpiXurkbd7vv9/5ub+IxuhA7eiFQ5Kbc8/57ne/e87/ywRBYLdl3GG3aNwqsLJ0k0tLS+fmcnNzWUVFBVMoFGx2djarvLxcm5OTw+bm5iytra2xc4ExNjY27iqVyvvwK6CpeDzuCYVC1urq6qDA9UcfPp+PHR4esmAwKK6tr68/l5/8rgQ2Ozub1dbWyiYmJooaGxt/VqvV38jlchX9l0qlwoFA4DWS/RKLxRxFRUVf5+XlPcaaT2AP0sVPJBL2SCRiAPBpu93+vKamZo/Ae71eZjabWV1dXVqw7CKwp43ksrCw8Bhg7MJ/PLDZ5PHx8cz29vYT5JGD/bSYLgTrcDgYdk6siSc6NjZWDaAe4ZoHQL+cmZnRpZPnhWDpD8kw7uKo9ML/NMCsd2tr61vkzboMrEyv138M7TyLRqMWMBsX3sMgaZhMpp+AR5EJrCocDpuEGzKg4x8khs+CVWxubvZfR9JkMik4nU7BarUKLpeLmLsKuwIqTLynp4fqmIzASrqQT09Pf1VVVfX0KsWZ6uHBwQHTaDSsoKAgo6/H4xHLEcrVyRwuEisrKzs5XrrIVAVwiUVDKRRrL+YI32ewdVhMApuHWvcj6vids6J2u90MF4yBHUZNgKoE
@StoneyEagle
StoneyEagle / ChristmasSnow.vue
Created December 11, 2024 20:43
Snow overlay
<script setup lang="ts">
import {isXmasTime} from "@/lib/dateTime";
// add xmas to your html class
</script>
<template>
<div v-if="isXmasTime()"
class="z-1199 absolute pointer-events-none opacity-50">
<template v-for="i in Array.from(Array(30).keys())" :key="i">
<div class="snowflake"></div>
@StoneyEagle
StoneyEagle / Controller.cs
Last active November 15, 2024 16:10
Configuration-Driven UI
[ApiController]
[Tags("Media")]
[ApiVersion(1.0)]
[Authorize]
[Route("api/v{version:apiVersion}")]
public class HomeController : BaseController
{
[HttpGet]
[Route("home")]
public async Task<IActionResult> Home()
@StoneyEagle
StoneyEagle / musicbrainz.filenaming.script.txt
Created September 16, 2024 12:02
Picard File Naming Script
$noop(
########################################################################
# #
# Picard File Naming Script 2020-11-15 #
# Bob Swift [rdswift] #
# #
# License: GPLv3.0 #
# #
########################################################################
#
@StoneyEagle
StoneyEagle / twitch-temperature.js
Last active September 6, 2024 19:22
Temperature conversion for twitch chat
const config = {
settings: {
TWITCH: {
USERNAME: '',
OAUTH_TOKEN: '',
CHANNEL_NAME: ''
},
},
}
@StoneyEagle
StoneyEagle / createEement.ts
Created August 8, 2024 11:04
Typesafe create element
/**
* Creates a new HTML element of the specified type and assigns the given ID to it.
* @param type - The type of the HTML element to create.
* @param id - The ID to assign to the new element.
* @param unique - Whether to use an existing element with the specified ID if it already exists.
* @returns An object with four methods:
* - `addClasses`: Adds the specified CSS class names to the element's class list and returns the next 3 functions.
* - `appendTo`: Appends the element to a parent element and returns the element.
* - `prependTo`: Prepends the element to a parent element and returns the element.
* - `get`:Returns the element.
@StoneyEagle
StoneyEagle / Device Login.md
Last active March 29, 2024 18:34
Twitch Device Auth Flow for Postman
curl --location 'https://id.twitch.tv/oauth2/token' \
--form 'client_id="{{twitch-client-id}}"' \
--form 'scope="{{twitch-scopes}}"' \
--form 'device_code="{{TWITCH_DEVICE_CODE}}"' \
--form 'grant_type="urn:ietf:params:oauth:grant-type:device_code"'
Test
@StoneyEagle
StoneyEagle / Token Client Credentials.md
Created March 28, 2024 16:02
Twitch Credentials Auth for postman

Set the variables twitch-client-id and witch-client-secret as secret variables in your Postman environment,

curl --location 'https://id.twitch.tv/oauth2/token' \
--header 'Content-Type: application/json' \
--data '{
	"client_id": "{{twitch-client-id}}",
	"client_secret": "{{twitch-client-secret}}",
	"grant_type": "client_credentials",
	"scope": "the scopes you need"
}'
@StoneyEagle
StoneyEagle / obs-websocket.js
Created March 6, 2024 22:59 — forked from clarkio/obs-websocket.js
Connecting to OBS Websocket Server with Authentication
const obsConfig = {
address: '127.0.0.1',
port: 4455,
password: 'your-password'
}
const socket = new WebSocket(`ws://${obsConfig.address}:${obsConfig.port}`);
const password = obsConfig.password;
socket.onopen = function(event) {