Skip to content

Instantly share code, notes, and snippets.

View theodrosyimer's full-sized avatar

Theodros Yimer theodrosyimer

  • France
View GitHub Profile
@theodrosyimer
theodrosyimer / get-youtube-timestamps.js
Last active February 29, 2024 23:54
get-youtube-timestamps
console.log(getYoutubeTimestamps())
// works for videos less than 100 hours (should be enough, but easily extensible)
function getYoutubeTimestamps({withMilliseconds = true} = {}) {
if ($('#right-arrow')) {
$('#right-arrow').click()
}
let chaptersTimestampList = [...$$('[slot="extra-content"] #scroll-container #endpoint > #details:not([hidden]) #time')].map(item => ({
timestamp: item.textContent,
title: item.previousElementSibling.textContent
@theodrosyimer
theodrosyimer / combinators.js
Created November 19, 2021 12:42 — forked from Avaq/combinators.js
Common combinators in JavaScript
const I = x => x
const K = x => y => x
const A = f => x => f (x)
const T = x => f => f (x)
const W = f => x => f (x) (x)
const C = f => y => x => f (x) (y)
const B = f => g => x => f (g (x))
const S = f => g => x => f (x) (g (x))
const S_ = f => g => x => f (g (x)) (x)
const S2 = f => g => h => x => f (g (x)) (h (x))