') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ', 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); })(); GitHub - Nomad-Study/nomadstudy-github-list: NomadCoders에서 진행하는 노마드 10주 스터디 회원 Github 리스트 (공식 사이트) · GitHub
Skip to content

Latest commit

History

128 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Nomad Study Github List

노마드 코더에서 진행하는 노마드 10주 스터디 맴버들의 깃헙 리스트입니다.

Github list of NomadCoders NomadStudy

Contributing

노마드 10주 스터디 맴버들 위주로 pull request 나 issue 보내주세요

  • 템플릿을 변형/이용을 허락해주신 @flynnpark 님 감사합니다.

Nicolas

Profile(NomadCoders)Nickname(Slack)Github
Nicolás Serrano Arévalo니꼬@serranoarevalo

Nomad 10 Week Study

노마드 웹기초 스터디가 궁금하다면 ?Check Out

노마드 리엑트 스터디가 궁금하다면 ?Check Out

Repository Maintainer

해당 레포리지를 관리하고 있는 맴버입니다.

Profile(NomadCoders)Nickname(Slack)Github
Devinandevinan@devinan

Github List

Profile(NomadCoders)Nickname(Slack)Github
BBAK_JUN빡준@wnsguddl789
Devinandevinan@devinan
DevxlntDevXLNT@DevXLNT
ffenlandffen@ffenland
Gael AnVermouth@vermouth0106
GonanGonan@YeeunKo
HAERANGMANHAERANGMAN@HAERANGMAN
hyeongwookimdev김형우@hyeongwookimdev
jaehunyoujaehunyou@jaehunyou
jh leejhlee@gkgk545
Jia장지아 Jia Jang@jangjia01234
Jinsu KimJinskim@MeluvRose
K-AVLBsnailmin@K-AVLB
Kwon kyungzunBrooklin@brooklin23
Kyuhyun Lee난코@Nanco-L
my-rokimy-roki@my-roki
Namyunha남윤하@Namyunha
notnormal8078@deanyoon
phsik3260현식@phsik3260
sunyeong-jeongSY@calla1109
YENA KWONYena Kwon@beyondthedream
Youngha KimGlobalYoung@YoungHaKim7
zoocassozoocasso@zoocasso
김광윤null@leorivk
김문종hushkmj@overscrap
김재원김재원@Jaewon94
김펭긴Penguin Kim@PenguinKKIM
김형민Tinubee@Tinubee
이승아승아@seunga-lee
이영민Orb@ws0671
이준우BeeGye@BeeGye
전석희전석희@juninjune
정민교밍닝구@alsry922
정상원topcircle@LifeFi
정혜인Nini@Heyyyin
조형석조형석@fluorjo
현진현진@zinnli
형준형준@Kim-Hyeong-joon

About

NomadCoders에서 진행하는 노마드 10주 스터디 회원 Github 리스트 (공식 사이트)

Resources

Stars

5 stars

Watchers

2 watching

Forks

Releases

Packages

Contributors