View index.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const fs = require("fs/promises"); | |
const fileName = "input.txt"; | |
async function readInput(fileName) { | |
const file = await fs.readFile(fileName, "utf-8"); | |
return file.trim().replace(/\r/g, "").split("\n"); | |
} | |
async function solveFirst(fileName) { | |
const inputs = await readInput(fileName); |
View profile.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{"version":2,"type":"profile","profile":{"id":7,"name":"Coding Garden","hotkey":null,"pause_updates":null,"description":"Commands for CodingGarden","context":[{"id":"5b66b0d5-0d11-4d41-af47-4d4ef92047db","type":"Channel","data":{"login":"codinggarden","id":"413856795"}}]},"toggled":true,"values":{"chat.actions.room":[{"t":"inherit","id":"1657045451549-0.39029851003637184-0"},{"v":{"action":"chat","appearance":{"type":"image","text":"Topic","image":"https://sfo2.digitaloceanspaces.com/alca/static/f/cj/Timer_Start_opt.png","tooltip":"!focus-start"},"options":{"command":"!focus-start 30","paste":true},"display":{}},"id":"1657042750748-0.43892151947400904-0"},{"v":{"action":"chat","appearance":{"type":"image","text":"Topic","image":"https://sfo2.digitaloceanspaces.com/alca/static/f/cj/Timer_Stop_opt.png","tooltip":"!focus-end"},"options":{"command":"!focus-end","paste":false},"display":{}},"id":"1657047049848-0.7201918069457542-1"}]}} |
View main.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* How long to wait in milliseconds if Twitch is taking too long to respond with | |
* all of the gifts. | |
*/ | |
const MYSTERYGIFT_TIMEOUT_MS = 10 * 1000; | |
/** | |
* How long to wait in milliseconds if the detected gift sub is not part of a | |
* larger mystery gift initially. | |
*/ | |
const GIFTSUB_ORPHAN_TIMEOUT_MS = 2 * 1000; |
View custom-events.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const tmiParse = require('tmi.js/lib/parser'); | |
const escapedIRCRegex = /\\([sn:r\\])/g; | |
const ircEscapedChars = { s: ' ', n: '', ':': ';', r: '' }; | |
const booleanTagKeys = [ 'mod', 'subscriber', 'msg-param-should-share-streak' ]; | |
const integerTagKeys = [ | |
'tmi-sent-ts', 'msg-param-months', 'msg-param-cumulative-months', | |
'msg-param-streak-months', 'msg-param-sender-count', | |
'msg-param-mass-gift-count', 'msg-param-viewerCount', 'msg-param-threshold', | |
'msg-param-bits-amount', 'msg-param-min-cheer-amount', |
View chat-lines-tweaks.css
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
.chat-lines { | |
font-size: 14px; | |
} |
View Rose.pde
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Rose { | |
PShape shape; | |
PVector stemStart, stemEnd; | |
float targetStemLength, growthTimeStart, growthTimeEnd; | |
float n, d, targetR, r; | |
float i; | |
Rose(int index) { | |
stemStart = new PVector( | |
random( |
View TwitchAPI.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
const request = require('request'), | |
_kraken = request.defaults({ | |
baseUrl: 'https://api.twitch.tv/kraken/', | |
headers: { | |
'Client-ID': 'CLIENT ID HERE', | |
Accept: 'Accept: application/vnd.twitchtv.v5+json' | |
}, | |
json: true | |
}); |
View StarPatterns.pde
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
float sliderA, sliderB; | |
float dim = 20; | |
void setup() { | |
size(600, 600); | |
sliderA = random(0, dim); | |
sliderB = random(0, dim * 2); | |
} | |
void draw() { |
View DistToSegment_sketch.pde
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PVector lineStart, lineEnd, point; | |
void setup() { | |
size(600, 600); | |
updatePoints(); | |
} | |
void draw() { | |
background(0); | |
View MysticRose_3D_sketch.pde
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PVector[] points; | |
int pointCount = 0; | |
int lastPointCount = 0; | |
void setup() { | |
size(600, 600, P3D); | |
colorMode(HSB); | |
} | |
void draw() { |
NewerOlder