') + ')', '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); }
})();
})();
ZEAL · GitHub
This organization was marked as archived by an administrator on Oct 16, 2025. It is no longer maintained.
ZEAL
We empower people and team to be exceptional
Popular repositories
Loading
redux-persist storage engine for react-native-sensitive-info
JavaScript
248
36
Diff tool for deep Ruby hash comparison
Ruby
52
12
Adapt React Native AppState changes to the React component lifecycle
JavaScript
44
3
Example app using the Phoenix Framework with React and GraphQL
Elixir
38
6
Zeal's React/Redux boilerplate setup
JavaScript
35
7
This is an example application using RedwoodJS. It establishes common patterns for creating an app quickly.
TypeScript
21
7
Repositories
Showing 10 of 108 repositories CodingZeal/nextjs-server-action-validation's past year of commit activity TypeScript
1
2
0
0
Updated Feb 27, 2024 thin_notion_api
Public archive
A thin Notion API package for Elixir that gives you a simple way to communicate with the Notion API
CodingZeal/thin_notion_api's past year of commit activity Elixir
2 MIT
3
0
0
Updated Dec 6, 2023 CodingZeal/nextjs-example-confirm-server-action's past year of commit activity TypeScript
0 MIT
0
0
0
Updated Oct 16, 2023 CodingZeal/dont-bail-on-rails-tailwind's past year of commit activity Ruby
0
0
0
0
Updated Oct 2, 2023 hash_diff
Public archive
Diff tool for deep Ruby hash comparison
CodingZeal/hash_diff's past year of commit activity Ruby
52 MIT
12
0
1
Updated Oct 1, 2023 CodingZeal/dont-bail-on-rails-schema-format's past year of commit activity Ruby
0
0
0
0
Updated Sep 13, 2023 redwood-template-app
Public archive
This is an example application using RedwoodJS. It establishes common patterns for creating an app quickly.
CodingZeal/redwood-template-app's past year of commit activity TypeScript
21
7
8
3
Updated Jun 16, 2023 CodingZeal/zeal-site-webhooks's past year of commit activity
0
0
0
0
Updated May 26, 2023 CodingZeal/redwood's past year of commit activity TypeScript
0 MIT
1,012
2
0
Updated Apr 25, 2023 webflow-gpt
Public archive
Lets have AI write some meta descriptions for our blog. Shall we?
CodingZeal/webflow-gpt's past year of commit activity JavaScript
2
0
0
0
Updated Mar 17, 2023
You can’t perform that action at this time.