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
// ==UserScript== | |
// @name yt-channel-playlist | |
// @namespace http://tampermonkey.net/ | |
// @version 2024-09-15 | |
// @description try to take over the world! | |
// @author senthilmpro | |
// @match https://www.youtube.com/@* | |
// @match https://www.youtube.com/*/ | |
// @icon https://www.google.com/s2/favicons?sz=64&domain=youtube.com | |
// @grant none |
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
// go to channel home page (not any other subtab) | |
// open developer tools - console. | |
// paste the following. | |
let scripts = Array.from(document.querySelectorAll('script')); | |
let script = scripts.filter(x => x.innerHTML?.includes('externalId')) | |
let channelId = script[0]?.innerHTML.split("externalId")[1].split(",")[0]?.replace(":", '')?.replaceAll('"', ''); | |
let playlistUrl = null; |
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
# shorthand to navigate your folders | |
# add this to ~/.zshrc | |
# then run "source ~/.zshrc" | |
# usage "dir music" | |
# "dir dl" | |
dir() { | |
local user=$(whoami) | |
local folder="$1" |
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
let cId = document.querySelector('[itemprop="identifier"]').content; | |
const getPlaylistId = () => { | |
let cId = document.querySelector('[itemprop="identifier"]').content; | |
if(cId?.startsWith('UC')) return 'UU' + cId.slice(2); | |
else return null; | |
} | |
const getPlaylistUrl = () => { | |
let channelId = getPlaylistId(); |
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
// download | |
let counter = 0; | |
let prefix = "TamilFreakers"; | |
const LAST_INDEX = 1210; // get the message Id of last message (right click on the latest post, "copy message link".. this should have latest message id") | |
let messages = Array(LAST_INDEX).fill(0).map((x, i) => `message${i + 1}`).reverse(); | |
let textContents = []; | |
let htmlContents = []; |
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
// snippet from google gemini | |
function convertImageURLToBase64(imageUrl) { | |
fetch(imageUrl) | |
.then(response => response.blob()) | |
.then(blob => { | |
const reader = new FileReader(); | |
reader.readAsDataURL(blob); | |
reader.onloadend = function() { | |
const base64data = reader.result; |
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
// open terminal -> "npm install winston -S" | |
const winston = require('winston'); | |
// snippet from https://stackoverflow.com/questions/51012150/winston-3-0-colorize-whole-output-on-console | |
let alignColorsAndTime = winston.format.combine( | |
winston.format.colorize({ | |
all:true | |
}), | |
winston.format.label({ | |
label:'[LOGGER]' |
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
git log --color --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --branches | |
## source: https://dev.to/pradumnasaraf/beautify-your-git-log-with-a-single-command-2i5 |
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'); | |
const archiver = require('archiver'); | |
const path = require('path'); | |
// inspired from https://stackoverflow.com/questions/15641243/need-to-zip-an-entire-directory-using-node-js | |
const zipDirectory = (dirPath, outputFile = "target.zip") => { | |
const dPath = path.resolve(dirPath); | |
var output = fs.createWriteStream(outputFile); | |
const archive = archiver('zip'); |
NewerOlder