feat(v2): implement client-side interactive search/filter widget & upgrade Video Hub layout to glassmorphic cards grid

This commit is contained in:
Nubenetes Bot
2026-06-18 01:16:59 +02:00
parent 3f290d23a8
commit ae683c6d1a
22 changed files with 913 additions and 4048 deletions
+157
View File
@@ -490,3 +490,160 @@ a {
text-shadow: 0 0 8px rgba(34, 211, 238, 0.5);
}
/* ---------------------------------------------------- */
/* INTERACTIVE FILTER & SEARCH SYSTEM UI */
/* ---------------------------------------------------- */
.v2-filtered-hidden {
display: none !important;
}
.v2-filter-container {
margin: 24px 0 20px 0;
padding: 20px;
border-radius: 12px;
border: 1px solid rgba(0, 0, 0, 0.08);
background: rgba(244, 244, 245, 0.5); /* Zinc 100 translucent */
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
display: flex;
flex-direction: column;
gap: 16px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
}
[data-md-color-scheme="slate"] .v2-filter-container {
border-color: rgba(34, 211, 238, 0.15);
background: rgba(24, 24, 27, 0.6); /* Zinc 900 translucent */
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}
.v2-search-wrapper {
position: relative;
display: flex;
align-items: center;
width: 100%;
}
.v2-search-input {
width: 100%;
padding: 12px 40px 12px 16px;
font-size: 0.85rem;
font-family: inherit;
border-radius: 8px;
border: 1px solid rgba(0, 0, 0, 0.15);
background: #ffffff;
color: var(--md-primary-fg-color);
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
outline: none;
}
[data-md-color-scheme="slate"] .v2-search-input {
border-color: rgba(255, 255, 255, 0.08);
background: rgba(9, 9, 11, 0.7); /* Zinc 950 */
color: #ffffff;
}
.v2-search-input:focus {
border-color: var(--md-accent-fg-color);
box-shadow: 0 0 0 3px var(--md-accent-fg-color--transparent);
}
[data-md-color-scheme="slate"] .v2-search-input:focus {
border-color: var(--md-accent-fg-color);
box-shadow: 0 0 12px rgba(34, 211, 238, 0.25);
background: rgba(9, 9, 11, 0.9);
}
.v2-search-clear {
position: absolute;
right: 14px;
font-size: 1.4rem;
cursor: pointer;
color: var(--md-primary-fg-color--dark);
transition: color 0.2s ease;
user-select: none;
line-height: 1;
}
.v2-search-clear:hover {
color: var(--md-accent-fg-color);
}
.v2-tag-pills {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.v2-pill {
padding: 6px 12px;
font-size: 0.68rem;
font-weight: 700;
border-radius: 6px;
border: 1px solid rgba(0, 0, 0, 0.08);
background: rgba(0, 0, 0, 0.02);
color: var(--md-primary-fg-color--dark);
cursor: pointer;
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
text-transform: uppercase;
letter-spacing: 0.05em;
font-family: inherit;
}
[data-md-color-scheme="slate"] .v2-pill {
border-color: rgba(255, 255, 255, 0.08);
background: rgba(255, 255, 255, 0.03);
color: rgba(255, 255, 255, 0.6);
}
.v2-pill:hover {
border-color: var(--md-accent-fg-color);
color: var(--md-primary-fg-color);
background: var(--md-accent-fg-color--transparent);
}
[data-md-color-scheme="slate"] .v2-pill:hover {
color: #ffffff;
text-shadow: 0 0 8px rgba(34, 211, 238, 0.3);
}
.v2-pill.active {
border-color: var(--md-accent-fg-color) !important;
color: #ffffff !important;
background: var(--md-accent-fg-color) !important;
box-shadow: 0 4px 10px rgba(14, 165, 233, 0.3);
}
[data-md-color-scheme="slate"] .v2-pill.active {
color: #09090b !important;
background: var(--md-accent-fg-color) !important;
box-shadow: 0 0 14px rgba(34, 211, 238, 0.4);
}
.v2-filter-stats {
display: flex;
justify-content: space-between;
font-size: 0.72rem;
color: var(--md-primary-fg-color--dark);
border-top: 1px solid rgba(0, 0, 0, 0.06);
padding-top: 12px;
margin-top: 4px;
}
[data-md-color-scheme="slate"] .v2-filter-stats {
border-top-color: rgba(255, 255, 255, 0.06);
}
.v2-visible-count, .v2-total-count {
color: var(--md-primary-fg-color);
font-weight: 700;
}
[data-md-color-scheme="slate"] .v2-visible-count,
[data-md-color-scheme="slate"] .v2-total-count {
color: #ffffff;
}
+185
View File
@@ -0,0 +1,185 @@
document.addEventListener("DOMContentLoaded", function () {
// Initialize the filter only if we are on a page with resource lists
const contentArea = document.querySelector(".md-content__inner");
if (!contentArea) return;
// Check if there are any resource items on the page (li or details)
const listItems = Array.from(contentArea.querySelectorAll("ul > li"));
const detailsItems = Array.from(contentArea.querySelectorAll("details.note"));
// If there are no list items and no details items, do not inject the filter
if (listItems.length === 0 && detailsItems.length === 0) return;
// Do not show on the homepage or video hub index page
const h1 = contentArea.querySelector("h1");
if (h1 && (h1.textContent.includes("Nubenetes Elite Portal (V2)") || h1.textContent.includes("Agentic Video Hub"))) {
return;
}
// Build the filter container element
const filterContainer = document.createElement("div");
filterContainer.className = "v2-filter-container";
filterContainer.innerHTML = `
<div class="v2-search-wrapper">
<input type="text" class="v2-search-input" placeholder="Search resources in this page..." />
<span class="v2-search-clear" style="display:none;">&times;</span>
</div>
<div class="v2-tag-pills">
<button class="v2-pill active" data-filter="all">All</button>
<button class="v2-pill" data-filter="DE FACTO STANDARD">De Facto Standard</button>
<button class="v2-pill" data-filter="ENTERPRISE-STABLE">Enterprise Stable</button>
<button class="v2-pill" data-filter="EMERGING">Emerging</button>
<button class="v2-pill" data-filter="GUIDE">Guide</button>
<button class="v2-pill" data-filter="CASE STUDY">Case Study</button>
<button class="v2-pill" data-filter="COMMUNITY-TOOL">Community Tool</button>
<button class="v2-pill" data-filter="SPANISH">Spanish</button>
</div>
<div class="v2-filter-stats">
<span>Showing <strong class="v2-visible-count">0</strong> of <strong class="v2-total-count">0</strong> resources</span>
<span class="v2-active-filters" style="font-style: italic;"></span>
</div>
`;
// Insert the filter container right after the main H1
if (h1 && h1.nextSibling) {
h1.parentNode.insertBefore(filterContainer, h1.nextSibling);
} else {
contentArea.insertBefore(filterContainer, contentArea.firstChild);
}
const searchInput = filterContainer.querySelector(".v2-search-input");
const searchClear = filterContainer.querySelector(".v2-search-clear");
const pills = filterContainer.querySelectorAll(".v2-pill");
const visibleCountSpan = filterContainer.querySelector(".v2-visible-count");
const totalCountSpan = filterContainer.querySelector(".v2-total-count");
// All target elements we want to filter
const targets = [];
// Prepare list items
listItems.forEach(item => {
// Make sure it's a resource list item (has a link and some content)
if (item.querySelector("a")) {
targets.push({
element: item,
type: "li",
text: item.textContent.toLowerCase(),
tags: Array.from(item.querySelectorAll(".md-tag")).map(t => t.textContent.toUpperCase())
});
}
});
// Prepare details.note items (if any, like in some V2 structures)
detailsItems.forEach(detail => {
const summary = detail.querySelector("summary");
targets.push({
element: detail,
type: "details",
text: detail.textContent.toLowerCase(),
tags: summary ? [summary.textContent.toUpperCase()] : []
});
});
totalCountSpan.textContent = targets.length;
visibleCountSpan.textContent = targets.length;
let activeFilter = "all";
let searchText = "";
function updateFilters() {
let visibleCount = 0;
targets.forEach(item => {
let matchesSearch = true;
let matchesPill = true;
// 1. Search text filter
if (searchText) {
matchesSearch = item.text.includes(searchText);
}
// 2. Pill/Category filter
if (activeFilter !== "all") {
if (activeFilter === "SPANISH") {
matchesPill = item.tags.some(tag => tag.includes("SPANISH"));
} else {
matchesPill = item.tags.some(tag => tag.includes(activeFilter));
}
}
if (matchesSearch && matchesPill) {
item.element.classList.remove("v2-filtered-hidden");
visibleCount++;
} else {
item.element.classList.add("v2-filtered-hidden");
}
});
visibleCountSpan.textContent = visibleCount;
// 3. Hide empty headers and subheadings
// If a section (e.g., under h2, h3, h4) has no visible items, hide the section header
const headings = Array.from(contentArea.querySelectorAll("h2, h3, h4"));
headings.forEach(heading => {
let next = heading.nextElementSibling;
let totalItemsInSection = 0;
let hiddenItemsInSection = 0;
while (next && !["H1", "H2", "H3", "H4"].includes(next.tagName)) {
if (next.tagName === "UL") {
const lis = Array.from(next.querySelectorAll("li"));
lis.forEach(li => {
if (targets.some(t => t.element === li)) {
totalItemsInSection++;
if (li.classList.contains("v2-filtered-hidden")) {
hiddenItemsInSection++;
}
}
});
} else if (next.tagName === "DETAILS" && next.classList.contains("note")) {
totalItemsInSection++;
if (next.classList.contains("v2-filtered-hidden")) {
hiddenItemsInSection++;
}
}
next = next.nextElementSibling;
}
if (totalItemsInSection > 0 && totalItemsInSection === hiddenItemsInSection) {
heading.classList.add("v2-filtered-hidden");
} else {
heading.classList.remove("v2-filtered-hidden");
}
});
}
// Input event listener
searchInput.addEventListener("input", function (e) {
searchText = e.target.value.toLowerCase().trim();
if (searchText) {
searchClear.style.display = "block";
} else {
searchClear.style.display = "none";
}
updateFilters();
});
// Clear search
searchClear.addEventListener("click", function () {
searchInput.value = "";
searchText = "";
searchClear.style.display = "none";
updateFilters();
searchInput.focus();
});
// Pill click event listener
pills.forEach(pill => {
pill.addEventListener("click", function () {
pills.forEach(p => p.classList.remove("active"));
this.classList.add("active");
activeFilter = this.getAttribute("data-filter");
updateFilters();
});
});
});
+1 -1
View File
@@ -3,7 +3,7 @@ site_url: https://nubenetes.com/
site_description: A curated list of awesome IT projects and resources. Inspired by the awesome list.
site_author: "Nubenetes"
docs_dir: docs/
use_directory_urls: true
use_directory_urls: false
#repo_name: 'GitHub'
repo_name: nubenetes/awesome-kubernetes
repo_url: https://github.com/nubenetes/awesome-kubernetes
+3 -4
View File
@@ -2801,10 +2801,10 @@
<p><em>&ldquo;One of the biggest problems in IT is that we keep reinventing the wheel. We are running the same circles, producing similar technologies to solve the same problems. Reinventing the wheel is a great way to learn how the wheel works, but not an efficient way to build software&rdquo;</em> (<a href="https://x.com/dmokafa">@dmokafa</a>)</p>
<p><em>&ldquo;Tech industry thinks throwing more tools to the problem is the solution. More tools = more failure modes&rdquo;</em> (<a href="https://x.com/rakyll">@rakyll</a>)</p>
</blockquote>
<p>Instead of <a href="https://devdriven.by/promotion">reinventing the wheel</a> by rewriting from scratch a new installer or ad-hoc devops tool to manage/monitor kubernetes, please pay attention to the links shared here and learn how to add value on the so called <a href="https://dzone.com/articles/defining-day-2-operations">day 2</a>. You will find solutions and knowledge in a practical and efficient way without being totally essential to obtain a certification to successfully complete the task. For example, if there&rsquo;s money for <a href="https://www.reddit.com/r/ExperiencedDevs/comments/pw6vuv/promotion_driven_development">reinventing the wheel</a> on day 1, then there&rsquo;s money for investing in these high value added solutions on day 2 where automation can significantly improve our lives and the quality of the delivered service. <strong>Automation is also a key element when evaluating the delivery of a service.</strong></p>
<p>Instead of <a href="https://vadimkravcenko.com/shorts/promotion-based-development/">reinventing the wheel</a> by rewriting from scratch a new installer or ad-hoc devops tool to manage/monitor kubernetes, please pay attention to the links shared here and learn how to add value on the so called <a href="https://dzone.com/articles/defining-day-2-operations">day 2</a>. You will find solutions and knowledge in a practical and efficient way without being totally essential to obtain a certification to successfully complete the task. For example, if there&rsquo;s money for <a href="https://www.reddit.com/r/ExperiencedDevs/comments/pw6vuv/promotion_driven_development">reinventing the wheel</a> on day 1, then there&rsquo;s money for investing in these high value added solutions on day 2 where automation can significantly improve our lives and the quality of the delivered service. <strong>Automation is also a key element when evaluating the delivery of a service.</strong></p>
<p><strong>Nubenetes shares relevant information that helps spread the new technological and cultural standards, in order to eliminate bottlenecks and <a href="https://alexander-goida.medium.com/thoughts-about-breaking-silos-of-software-engineering-teams-323d1f78ef68">silos</a> and promote digital transformation.</strong></p>
<p>Does saying this publicly imply being blacklisted and losing professional opportunities? What kind of society do we live in?</p>
<p>Tips: ask the hiring manager what experience they have with Cloud Automation, Cloud Managed Services and K8s in Production, if they deploy OpenShift via IPI<sup id="fnref2:1"><a class="footnote-ref" href="#fn:1">1</a></sup> or UPI, whether they are familiar with <a href="https://thenewstack.io/kubernetes-at-scale-without-gitops-is-a-bad-idea">Gitops</a> as the correct way of doing DevOps, if they work with modern, easy-to-use automation tools (<a href="https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs">terraform</a>, <a href="https://docs.ansible.com/projects/ansible/latest/collections/kubernetes/core/k8s_module.html">ansible modules</a> with YAML/<a href="https://github.com/pallets/jinja">Jinja templates</a>, argocd, helm, an automation server<sup id="fnref:3"><a class="footnote-ref" href="#fn:3">3</a></sup> to run pipelines, declarative code in Jenkins<sup id="fnref:4"><a class="footnote-ref" href="#fn:4">4</a></sup> Pipelines or in DevOps Azure Pipelines, <a href="https://nubenetes.com/terraform">IaC boilerplates</a> instead of <a href="https://www.digitalocean.com/blog/vanilla-kubernetes-vs-managed-kubernetes">k8s vanilla</a>, etc) or they are not practical and prefer to develop their own ad-hoc tools with millions of lines of code that need maintenance (by who?). If any doubt, ask them to show you their pipelines and custom solutions, how long it takes them to deploy and setup their k8s infra on day 1 &amp; day 2 (pets vs cattle service model), how long it takes them to deploy a single app and if the process is fully automated or not, what monitoring solutions they have, if security and Role-based Access Control (RBAC) are implemented in their k8s clusters, whether changes and PoCs are tested first in ephemeral and isolated K8s/Cloud infra test environments with IaC &amp; CI/CD pipelines, if solutions can be discussed within the team, etc.</p>
<p>Tips: ask the hiring manager what experience they have with Cloud Automation, Cloud Managed Services and K8s in Production, if they deploy OpenShift via IPI<sup id="fnref2:1"><a class="footnote-ref" href="#fn:1">1</a></sup> or UPI, whether they are familiar with <a href="https://thenewstack.io/kubernetes-at-scale-without-gitops-is-a-bad-idea">Gitops</a> as the correct way of doing DevOps, if they work with modern, easy-to-use automation tools (<a href="https://registry.terraform.io/providers/hashicorp/kubernetes/latest/docs">terraform</a>, <a href="https://docs.ansible.com/projects/ansible/latest/collections/kubernetes/core/k8s_module.html">ansible modules</a> with YAML/<a href="https://github.com/pallets/jinja">Jinja templates</a>, argocd, helm, an automation server<sup id="fnref:3"><a class="footnote-ref" href="#fn:3">3</a></sup> to run pipelines, declarative code in Jenkins<sup id="fnref:4"><a class="footnote-ref" href="#fn:4">4</a></sup> Pipelines or in DevOps Azure Pipelines, <a href="https://nubenetes.com/terraform/">IaC boilerplates</a> instead of <a href="https://www.digitalocean.com/blog/vanilla-kubernetes-vs-managed-kubernetes">k8s vanilla</a>, etc) or they are not practical and prefer to develop their own ad-hoc tools with millions of lines of code that need maintenance (by who?). If any doubt, ask them to show you their pipelines and custom solutions, how long it takes them to deploy and setup their k8s infra on day 1 &amp; day 2 (pets vs cattle service model), how long it takes them to deploy a single app and if the process is fully automated or not, what monitoring solutions they have, if security and Role-based Access Control (RBAC) are implemented in their k8s clusters, whether changes and PoCs are tested first in ephemeral and isolated K8s/Cloud infra test environments with IaC &amp; CI/CD pipelines, if solutions can be discussed within the team, etc.</p>
<blockquote>
<p><a href="https://www.youtube.com/watch?v=cdZZpaB2kDM&amp;t=2025s"><em>&ldquo;The absolutely difficult thing is reaching volume production without going bankrupt, that is the actual hard thing&rdquo;</em></a> Elon Musk</p>
</blockquote>
@@ -2826,8 +2826,7 @@
</details>
<p>Let&rsquo;s improve both the private &amp; public IT sector and the opportunities in large, medium and small companies, and give us a star on GitHub if you like this blog!!</p>
<center>
<iframe allow="autoplay" frameborder="no" height="200" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/17422127&amp;color=%230a1ef1&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true&amp;visual=true" width="200"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/thespaceman78" title="thespaceman78" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener"></a> · <a href="https://soundcloud.com/thespaceman78/the-seatbelts-tank-ost-cowboy" title="The Seatbelts - Tank!" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">The Seatbelts - Tank!</a></div></p>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="315" src="https://www.youtube.com/embed/GZl7N8sXyEo" title="YouTube video player" width="560"></iframe>
</center>
<hr />
<h2 id="cloud-computing-job-market-in-2016">Cloud Computing job market in 2016</h2>
+2
View File
@@ -2884,6 +2884,8 @@
<li><a href="https://t.co/EKsVgKA4xn">IBM IAM for AI Agents</a> -how IBM Identity and Access Management (IAM) provides native IAM for AI agents, enabling them to have an identity and deliver least privileged access.</li>
<li><a href="https://cloud.google.com/blog/topics/developers-practitioners/level-up-your-agents-announcing-googles-official-skills-repository">Level Up Your Agents: Announcing Google&rsquo;s Official Skills Repository</a> 🌟 - This blog post announces the launch of Google&rsquo;s official Agent Skills repository on GitHub, designed to equip AI agents with condensed expertise on specific technologies and tasks. Skills are presented in an open Markdown format, including reference files and code snippets, to provide agent-first documentation. This approach aims to reduce &lsquo;context bloat&rsquo; often encountered when using Model Context Protocol (MCP) servers, leading to more efficient and cost-effective AI agent interactions with Google Cloud products like Gemini API, BigQuery, and GKE.</li>
<li><a href="https://github.com/shanraisshan/claude-code-best-practice">Claude Code Best Practice</a> - A GitHub repository focused on &lsquo;vibe coding to agentic engineering&rsquo;, providing practices and examples for interacting with AI models like Claude. It includes sections on agents, commands, skills, development workflows, and implementation details.</li>
<li><a href="https://www.youtube.com/watch?v=TUKYbUIXLOE">youtube: The 6 Levels of Claude Code Explained</a> 🌟 - This video provides a structured architectural roadmap for mastering Claude Code, Anthropic&rsquo;s agentic CLI tool for software engineering. It details the progression from basic code generation to complex, multi-step agentic workflows, emphasizing the tool&rsquo;s relevance to the 2026 Kubernetes ecosystem through automated manifest refactoring, contextual codebase analysis, and direct CLI-driven infrastructure orchestration.</li>
<li><a href="https://anthropic.skilljar.com/claude-code-in-action">Claude Code in Action</a> 🌟 - A course from Anthropic Academy that provides comprehensive training on using Claude Code for software development tasks. It covers the underlying architecture of AI coding assistants, practical implementation techniques, and advanced integration strategies. Key topics include understanding coding assistant architecture, exploring Claude Code&rsquo;s tool use system, mastering context management techniques, implementing visual communication workflows, creating custom automation, and extending functionality with MCP servers.</li>
<li><a href="https://kiro.dev">Kiro: Engineering Rigor for Agentic Development</a> - Kiro is a tool designed to bring engineering discipline to AI agent development. It focuses on managing intent, handling long-running tasks across large codebases, and validating code correctness through a learning agent. Key features include converting natural language prompts into structured requirements (EARS notation), generating architectural designs, creating implementation plans with discrete, sequenced tasks, and enabling terminal-based interaction for building features, automating workflows, and debugging.</li>
<li><a href="https://github.com/HolmesGPT/holmesgpt">HolmesGPT (Robusta)</a> - An open-source AI agent for investigating Prometheus alerts and Kubernetes incidents. It uses LLMs to triage issues and provide recommended fixes.</li>
<li><a href="https://github.com/Skyvern-ai/Skyvern">Skyvern</a> - Automate browser-based workflows using LLMs and Computer Vision.</li>
+1 -1
View File
@@ -3043,7 +3043,7 @@
<li><a href="https://cursor.com/blog/cloud-agent-development-environments">Development Environments for Cloud Agents</a> 🌟 -Cursor&rsquo;s new tools for configuring development environments for cloud agents. It highlights the importance of robust environments for agents to perform end-to-end engineering tasks, including accessing codebases, dependencies, credentials, and build systems. The feature supports multi-repo environments, allowing agents to reason across multiple codebases, which is crucial for microservice architectures.</li>
<li><a href="https://cursor.com/es/learn">Cursor AI Fundamentals Course</a> - Official tutorials for Cursor, covering AI fundamentals including models, tokens, hallucinations, agents, MCP, skills, and context. The course is in Spanish and consists of 13 modules.</li>
<li><a href="https://cursor.com/docs/bugbot#effort-levels">Cursor Bugbot Effort Levels Documentation</a> - Documentation for Cursor&rsquo;s Bugbot, introducing &lsquo;effort levels&rsquo; for users on usage-based plans. These levels can be configured via the Bugbot dashboard.</li>
<li><a href="https://anthropic.skilljar.com/claude-code-in-action">Claude Code in Action</a> - A course from Anthropic Academy that provides comprehensive training on using Claude Code for software development tasks. It covers the underlying architecture of AI coding assistants, practical implementation techniques, and advanced integration strategies. Key topics include understanding coding assistant architecture, exploring Claude Code&rsquo;s tool use system, mastering context management techniques, implementing visual communication workflows, creating custom automation, and extending functionality with MCP servers.</li>
<li><a href="https://anthropic.skilljar.com/claude-code-in-action">Claude Code in Action</a> - <em>(Related to ai-agents-mcp topic)</em></li>
<li><a href="https://github.com/rasbt/LLMs-from-scratch">LLMs-from-scratch</a> 🌟 - A GitHub repository that provides a step-by-step implementation of a ChatGPT-like Large Language Model (LLM) using PyTorch, covering development, pretraining, and finetuning.</li>
<li><a href="https://github.com/shanraisshan/claude-code-best-practice">Claude Code Best Practice</a> - <em>(Related to ai-agents-mcp topic)</em></li>
<li><a href="https://www.docker.com/llm">Docker for LLMs</a> - <em>(Related to docker topic)</em></li>
+2 -2
View File
@@ -3321,8 +3321,8 @@
<li><a href="#tweets">Tweets</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/294589005&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/jimmy-sax" title="Jimmy Sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax</a> · <a href="https://soundcloud.com/jimmy-sax/una-matina-jimmy-sax" title="Una Matina Jimmy Sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Una Matina Jimmy Sax</a></div></p>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/1856102433&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/jimmy-sax" title="Jimmy Sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax</a> · <a href="https://soundcloud.com/jimmy-sax/una-mattina" title="Una Mattina" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Una Mattina</a></div></p>
</center>
<h2 id="introduction-to-digital-business-transformation">Introduction to Digital Business Transformation</h2>
<ul>
+1 -1
View File
@@ -2933,7 +2933,7 @@
<li><a href="#tweets">Tweets</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/873312214&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/873312214&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/yardensaxophone" title="Yarden Saxophone" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Yarden Saxophone</a> · <a href="https://soundcloud.com/yardensaxophone/esperanza-yarden-saxophone" title="Esperanza - Yarden Saxophone" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Esperanza - Yarden Saxophone</a></div></p>
</center>
<h2 id="introduction">Introduction</h2>
+1 -2
View File
@@ -3197,8 +3197,7 @@
<li><a href="#videos">Videos</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/636487902&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/alessandro-donofrio-5" title="Alemix Donofrio" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Alemix Donofrio</a> · <a href="https://soundcloud.com/alessandro-donofrio-5/jimmy-sax-time" title="Jimmy Sax - Time" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax - Time</a></div></p>
<iframe allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen="allowfullscreen" frameborder="0" height="315" src="https://www.youtube.com/embed/t_hdOVsdRSE" title="YouTube video player" width="560"></iframe>
</center>
<h2 id="introduction">Introduction</h2>
<ul>
Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

+8 -3842
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -4674,7 +4674,7 @@
<li><a href="#memes">Memes</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/410107842&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/410107842&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/hugoboomin" title="Hugo Boomin ⚡️ 🔥 💥" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Hugo Boomin ⚡️ 🔥 💥</a> · <a href="https://soundcloud.com/hugoboomin/jimmy-sax-live-at-nikki-beach-st-tropez-opus-eric-prydz" title="Jimmy Sax - Live At Nikki Beach St Tropez (Opus - Eric Prydz)" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax - Live At Nikki Beach St Tropez (Opus - Eric Prydz)</a></div></p>
</center>
<h2 id="must-know-kubernetes-concepts">Must know Kubernetes concepts</h2>
+6 -21
View File
@@ -2609,21 +2609,10 @@
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#devdrivenby" class="md-nav__link">
<a href="#promotion-based-development" class="md-nav__link">
<span class="md-ellipsis">
DevDriven.By
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#promotion-driven-development" class="md-nav__link">
<span class="md-ellipsis">
Promotion Driven Development
Promotion-Based Development
</span>
</a>
@@ -3065,8 +3054,8 @@
<li><a href="#tweets-2-cultures">Tweets 2. Cultures</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/604265532&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/tlotfy99" title="Abou Seif 🧿" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Abou Seif 🧿</a> · <a href="https://soundcloud.com/tlotfy99/no-man-no-cry-jimmy-sax" title="no man no cry - jimmy sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">no man no cry - jimmy sax</a></div></p>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/340111054&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/jimmy-sax" title="Jimmy Sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax</a> · <a href="https://soundcloud.com/jimmy-sax/no-man-no-cry-jimmy-sax-version" title="no man no cry - jimmy sax" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">no man no cry - jimmy sax</a></div></p>
</center>
<h2 id="project-management-methodology">Project Management Methodology</h2>
<ul>
@@ -3239,13 +3228,9 @@
<p><a href="https://www.ewsolutions.com/worst-project-management-practices">ewsolutions.com: Worst Project Management Practices</a></p>
</li>
</ul>
<h3 id="devdrivenby">DevDriven.By</h3>
<h3 id="promotion-based-development">Promotion-Based Development</h3>
<ul>
<li><a href="https://devdriven.by">devdriven.by</a></li>
</ul>
<h3 id="promotion-driven-development">Promotion Driven Development</h3>
<ul>
<li><a href="https://devdriven.by/promotion">devdriven.by: Promotion Driven Development</a> When you write code to increase your visibility with management, let things break so that you can be the hero that fixes them and generally work on things that lead to a corner office asap</li>
<li><a href="https://vadimkravcenko.com/shorts/promotion-based-development/">Promotion-Based Development: A Fast Track to Mediocrity</a> When you write code to increase your visibility with management, let things break so that you can be the hero that fixes them and generally work on things that lead to a corner office asap</li>
<li><a href="http://www.nichesoftware.co.nz/2021/05/29/promotion-driven-development.html">nichesoftware.co.nz: Promotion Driven Development (PDD) 🌟</a></li>
<li><a href="https://www.reddit.com/r/ExperiencedDevs/comments/pw6vuv/promotion_driven_development">reddit.com: Promotion Driven Development</a></li>
</ul>
+1 -1
View File
@@ -2989,7 +2989,7 @@
<li><a href="#videos">Videos</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/162899288&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/162899288&amp;color=%23ff5500&amp;auto_play=true&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/arielmezzapesa-1" title="Ariel Mezzapesa" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Ariel Mezzapesa</a> · <a href="https://soundcloud.com/arielmezzapesa-1/lily-was-here-candy-dulfer" title="Lily Was Here (Candy Dulfer)" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Lily Was Here (Candy Dulfer)</a></div></p>
</center>
<h2 id="introduction">Introduction</h2>
+162 -162
View File
@@ -2,650 +2,650 @@
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://nubenetes.com/index.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ChromeDevTools.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/GoogleCloudPlatform.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/about.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ai-agents-mcp.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ai.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/angular.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ansible.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/api.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/appointment-scheduling.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/argo.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-architecture.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-backup.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-containers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-data.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-databases.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-devops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-iac.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-messaging.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-miscellaneous.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-monitoring.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-networking.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-newfeatures.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-pricing.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-security.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-serverless.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-spain.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-storage.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-tools-scripts.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws-training.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/aws.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/azure.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/caching.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/chaos-engineering.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/chatgpt.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cheatsheets.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/chef.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cicd-kubernetes-plugins.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cicd.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cloud-arch-diagrams.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cloud-asset-inventory.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/cloudflare.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/container-managers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/crossplane.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/crunchydata.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/customer.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/databases.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/demos.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/devel-sites.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/developerportals.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/devops-tools.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/devops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/devsecops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/digital-money.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/digitalocean.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/docker.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/dom.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/dotnet.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/edge-computing.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/elearning.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/embedded-servlet-containers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/faq.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/finops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/flux.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/freelancing.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/git.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/gitops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/golang.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/grafana.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/helm.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/hr.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/iac.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ibm_cloud.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/interview-questions.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/introduction.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/istio.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/java-and-java-performance-optimization.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/java_app_servers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/java_frameworks.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/javascript.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/jenkins-alternatives.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/jenkins.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/jvm-parameters-matrix-table.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/keptn.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubectl-commands.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-alternatives.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-autoscaling.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-backup-migrations.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-based-devel.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-bigdata.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-client-libraries.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-monitoring.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-networking.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-newsletters.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-on-premise.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-operators-controllers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-releases.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-security.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-storage.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-tools.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-troubleshooting.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes-tutorials.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kubernetes.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/kustomize.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/linux-dev-env.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/linux.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/liquibase.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/lowcode-nocode.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/managed-kubernetes-in-public-cloud.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/matrix-table.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/maven-gradle.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/message-queue.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/mkdocs.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/mlops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/monitoring.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/networking.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/newsfeeds.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/newsql.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/noops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/nosql.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/oauth.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ocp3.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/ocp4.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/openshift-pipelines.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/openshift.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/oraclecloud.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/other-awesome-lists.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/performance-testing-with-jenkins-and-jmeter.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/postman.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/private-cloud-solutions.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/project-management-methodology.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/project-management-tools.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/prometheus.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/public-cloud-solutions.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/pulumi.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/python.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/qa.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/rancher.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/react.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/recruitment.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/registries.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/remote-tech-jobs.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/scaffolding.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/scaleway.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/securityascode.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/serverless.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/servicemesh.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/sonarqube.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/sre.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/stackstorm.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/swagger-code-generator-for-rest-apis.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/tekton.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/terraform.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/test-automation-frameworks.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/testops.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/uncategorized.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/visual-studio.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/web-servers.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/web3.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/workfromhome.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/xamarin.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
<url>
<loc>https://nubenetes.com/yaml.html</loc>
<lastmod>2026-06-03</lastmod>
<lastmod>2026-06-17</lastmod>
</url>
</urlset>
Binary file not shown.
+157
View File
@@ -490,3 +490,160 @@ a {
text-shadow: 0 0 8px rgba(34, 211, 238, 0.5);
}
/* ---------------------------------------------------- */
/* INTERACTIVE FILTER & SEARCH SYSTEM UI */
/* ---------------------------------------------------- */
.v2-filtered-hidden {
display: none !important;
}
.v2-filter-container {
margin: 24px 0 20px 0;
padding: 20px;
border-radius: 12px;
border: 1px solid rgba(0, 0, 0, 0.08);
background: rgba(244, 244, 245, 0.5); /* Zinc 100 translucent */
backdrop-filter: blur(12px);
-webkit-backdrop-filter: blur(12px);
display: flex;
flex-direction: column;
gap: 16px;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
transition: all 0.3s ease;
}
[data-md-color-scheme="slate"] .v2-filter-container {
border-color: rgba(34, 211, 238, 0.15);
background: rgba(24, 24, 27, 0.6); /* Zinc 900 translucent */
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}
.v2-search-wrapper {
position: relative;
display: flex;
align-items: center;
width: 100%;
}
.v2-search-input {
width: 100%;
padding: 12px 40px 12px 16px;
font-size: 0.85rem;
font-family: inherit;
border-radius: 8px;
border: 1px solid rgba(0, 0, 0, 0.15);
background: #ffffff;
color: var(--md-primary-fg-color);
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
outline: none;
}
[data-md-color-scheme="slate"] .v2-search-input {
border-color: rgba(255, 255, 255, 0.08);
background: rgba(9, 9, 11, 0.7); /* Zinc 950 */
color: #ffffff;
}
.v2-search-input:focus {
border-color: var(--md-accent-fg-color);
box-shadow: 0 0 0 3px var(--md-accent-fg-color--transparent);
}
[data-md-color-scheme="slate"] .v2-search-input:focus {
border-color: var(--md-accent-fg-color);
box-shadow: 0 0 12px rgba(34, 211, 238, 0.25);
background: rgba(9, 9, 11, 0.9);
}
.v2-search-clear {
position: absolute;
right: 14px;
font-size: 1.4rem;
cursor: pointer;
color: var(--md-primary-fg-color--dark);
transition: color 0.2s ease;
user-select: none;
line-height: 1;
}
.v2-search-clear:hover {
color: var(--md-accent-fg-color);
}
.v2-tag-pills {
display: flex;
flex-wrap: wrap;
gap: 8px;
}
.v2-pill {
padding: 6px 12px;
font-size: 0.68rem;
font-weight: 700;
border-radius: 6px;
border: 1px solid rgba(0, 0, 0, 0.08);
background: rgba(0, 0, 0, 0.02);
color: var(--md-primary-fg-color--dark);
cursor: pointer;
transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
text-transform: uppercase;
letter-spacing: 0.05em;
font-family: inherit;
}
[data-md-color-scheme="slate"] .v2-pill {
border-color: rgba(255, 255, 255, 0.08);
background: rgba(255, 255, 255, 0.03);
color: rgba(255, 255, 255, 0.6);
}
.v2-pill:hover {
border-color: var(--md-accent-fg-color);
color: var(--md-primary-fg-color);
background: var(--md-accent-fg-color--transparent);
}
[data-md-color-scheme="slate"] .v2-pill:hover {
color: #ffffff;
text-shadow: 0 0 8px rgba(34, 211, 238, 0.3);
}
.v2-pill.active {
border-color: var(--md-accent-fg-color) !important;
color: #ffffff !important;
background: var(--md-accent-fg-color) !important;
box-shadow: 0 4px 10px rgba(14, 165, 233, 0.3);
}
[data-md-color-scheme="slate"] .v2-pill.active {
color: #09090b !important;
background: var(--md-accent-fg-color) !important;
box-shadow: 0 0 14px rgba(34, 211, 238, 0.4);
}
.v2-filter-stats {
display: flex;
justify-content: space-between;
font-size: 0.72rem;
color: var(--md-primary-fg-color--dark);
border-top: 1px solid rgba(0, 0, 0, 0.06);
padding-top: 12px;
margin-top: 4px;
}
[data-md-color-scheme="slate"] .v2-filter-stats {
border-top-color: rgba(255, 255, 255, 0.06);
}
.v2-visible-count, .v2-total-count {
color: var(--md-primary-fg-color);
font-weight: 700;
}
[data-md-color-scheme="slate"] .v2-visible-count,
[data-md-color-scheme="slate"] .v2-total-count {
color: #ffffff;
}
+185
View File
@@ -0,0 +1,185 @@
document.addEventListener("DOMContentLoaded", function () {
// Initialize the filter only if we are on a page with resource lists
const contentArea = document.querySelector(".md-content__inner");
if (!contentArea) return;
// Check if there are any resource items on the page (li or details)
const listItems = Array.from(contentArea.querySelectorAll("ul > li"));
const detailsItems = Array.from(contentArea.querySelectorAll("details.note"));
// If there are no list items and no details items, do not inject the filter
if (listItems.length === 0 && detailsItems.length === 0) return;
// Do not show on the homepage or video hub index page
const h1 = contentArea.querySelector("h1");
if (h1 && (h1.textContent.includes("Nubenetes Elite Portal (V2)") || h1.textContent.includes("Agentic Video Hub"))) {
return;
}
// Build the filter container element
const filterContainer = document.createElement("div");
filterContainer.className = "v2-filter-container";
filterContainer.innerHTML = `
<div class="v2-search-wrapper">
<input type="text" class="v2-search-input" placeholder="Search resources in this page..." />
<span class="v2-search-clear" style="display:none;">&times;</span>
</div>
<div class="v2-tag-pills">
<button class="v2-pill active" data-filter="all">All</button>
<button class="v2-pill" data-filter="DE FACTO STANDARD">De Facto Standard</button>
<button class="v2-pill" data-filter="ENTERPRISE-STABLE">Enterprise Stable</button>
<button class="v2-pill" data-filter="EMERGING">Emerging</button>
<button class="v2-pill" data-filter="GUIDE">Guide</button>
<button class="v2-pill" data-filter="CASE STUDY">Case Study</button>
<button class="v2-pill" data-filter="COMMUNITY-TOOL">Community Tool</button>
<button class="v2-pill" data-filter="SPANISH">Spanish</button>
</div>
<div class="v2-filter-stats">
<span>Showing <strong class="v2-visible-count">0</strong> of <strong class="v2-total-count">0</strong> resources</span>
<span class="v2-active-filters" style="font-style: italic;"></span>
</div>
`;
// Insert the filter container right after the main H1
if (h1 && h1.nextSibling) {
h1.parentNode.insertBefore(filterContainer, h1.nextSibling);
} else {
contentArea.insertBefore(filterContainer, contentArea.firstChild);
}
const searchInput = filterContainer.querySelector(".v2-search-input");
const searchClear = filterContainer.querySelector(".v2-search-clear");
const pills = filterContainer.querySelectorAll(".v2-pill");
const visibleCountSpan = filterContainer.querySelector(".v2-visible-count");
const totalCountSpan = filterContainer.querySelector(".v2-total-count");
// All target elements we want to filter
const targets = [];
// Prepare list items
listItems.forEach(item => {
// Make sure it's a resource list item (has a link and some content)
if (item.querySelector("a")) {
targets.push({
element: item,
type: "li",
text: item.textContent.toLowerCase(),
tags: Array.from(item.querySelectorAll(".md-tag")).map(t => t.textContent.toUpperCase())
});
}
});
// Prepare details.note items (if any, like in some V2 structures)
detailsItems.forEach(detail => {
const summary = detail.querySelector("summary");
targets.push({
element: detail,
type: "details",
text: detail.textContent.toLowerCase(),
tags: summary ? [summary.textContent.toUpperCase()] : []
});
});
totalCountSpan.textContent = targets.length;
visibleCountSpan.textContent = targets.length;
let activeFilter = "all";
let searchText = "";
function updateFilters() {
let visibleCount = 0;
targets.forEach(item => {
let matchesSearch = true;
let matchesPill = true;
// 1. Search text filter
if (searchText) {
matchesSearch = item.text.includes(searchText);
}
// 2. Pill/Category filter
if (activeFilter !== "all") {
if (activeFilter === "SPANISH") {
matchesPill = item.tags.some(tag => tag.includes("SPANISH"));
} else {
matchesPill = item.tags.some(tag => tag.includes(activeFilter));
}
}
if (matchesSearch && matchesPill) {
item.element.classList.remove("v2-filtered-hidden");
visibleCount++;
} else {
item.element.classList.add("v2-filtered-hidden");
}
});
visibleCountSpan.textContent = visibleCount;
// 3. Hide empty headers and subheadings
// If a section (e.g., under h2, h3, h4) has no visible items, hide the section header
const headings = Array.from(contentArea.querySelectorAll("h2, h3, h4"));
headings.forEach(heading => {
let next = heading.nextElementSibling;
let totalItemsInSection = 0;
let hiddenItemsInSection = 0;
while (next && !["H1", "H2", "H3", "H4"].includes(next.tagName)) {
if (next.tagName === "UL") {
const lis = Array.from(next.querySelectorAll("li"));
lis.forEach(li => {
if (targets.some(t => t.element === li)) {
totalItemsInSection++;
if (li.classList.contains("v2-filtered-hidden")) {
hiddenItemsInSection++;
}
}
});
} else if (next.tagName === "DETAILS" && next.classList.contains("note")) {
totalItemsInSection++;
if (next.classList.contains("v2-filtered-hidden")) {
hiddenItemsInSection++;
}
}
next = next.nextElementSibling;
}
if (totalItemsInSection > 0 && totalItemsInSection === hiddenItemsInSection) {
heading.classList.add("v2-filtered-hidden");
} else {
heading.classList.remove("v2-filtered-hidden");
}
});
}
// Input event listener
searchInput.addEventListener("input", function (e) {
searchText = e.target.value.toLowerCase().trim();
if (searchText) {
searchClear.style.display = "block";
} else {
searchClear.style.display = "none";
}
updateFilters();
});
// Clear search
searchClear.addEventListener("click", function () {
searchInput.value = "";
searchText = "";
searchClear.style.display = "none";
updateFilters();
searchInput.focus();
});
// Pill click event listener
pills.forEach(pill => {
pill.addEventListener("click", function () {
pills.forEach(p => p.classList.remove("active"));
this.classList.add("active");
activeFilter = this.getAttribute("data-filter");
updateFilters();
});
});
});
+1 -1
View File
@@ -4066,7 +4066,7 @@
<li><a href="#tweets">Tweets</a></li>
</ol>
<center>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A/api.soundcloud.com/tracks/468480528&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<iframe allow="autoplay" frameborder="no" height="166" scrolling="no" src="https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/468480528&amp;color=%23ff5500&amp;auto_play=false&amp;hide_related=false&amp;show_comments=true&amp;show_user=true&amp;show_reposts=false&amp;show_teaser=true" width="100%"></iframe>
<p><div style="font-size: 10px; color: #cccccc;line-break: anywhere;word-break: normal;overflow: hidden;white-space: nowrap;text-overflow: ellipsis; font-family: Interstate,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Garuda,Verdana,Tahoma,sans-serif;font-weight: 100;"><a href="https://soundcloud.com/raymond-mnt" title="RAYMOND MNT" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">RAYMOND MNT</a> · <a href="https://soundcloud.com/raymond-mnt/jimmy-sax-parga-oriental-sax" title="Jimmy Sax - Parga (Oriental sax ).mp3" target="_blank" style="color: #cccccc; text-decoration: none;" rel="noopener">Jimmy Sax - Parga (Oriental sax ).mp3</a></div></p>
</center>
<h2 id="hashicorp-learning-resources-reference-guide">HashiCorp Learning Resources Reference Guide</h2>
+4 -4
View File
@@ -22,28 +22,28 @@
</div>
<div style="display: flex; justify-content: center; gap: 24px; margin: 16px 0; flex-wrap: wrap;">
<a href="./kubernetes/" style="text-decoration: none; color: inherit; display: block;">
<a href="./kubernetes.html" style="text-decoration: none; color: inherit; display: block;">
<div class="hero-badge-card hero-badge-card--cyan">
<img src="/v2/images/kubernetes_logo.png" alt="Kubernetes"/>
<div class="hero-badge-title">Ecosystem Core</div>
<div class="hero-badge-subtitle">Explore Kubernetes</div>
</div>
</a>
<a href="./ai-agents-mcp/" style="text-decoration: none; color: inherit; display: block;">
<a href="./ai-agents-mcp.html" style="text-decoration: none; color: inherit; display: block;">
<div class="hero-badge-card hero-badge-card--purple">
<img src="/v2/images/ai_agents_logo.png" alt="AI & MCP Agents"/>
<div class="hero-badge-title">AI & MCP Agents</div>
<div class="hero-badge-subtitle">Agentic Ecosystem</div>
</div>
</a>
<a href="./videos/" style="text-decoration: none; color: inherit; display: block;">
<a href="./videos/index.html" style="text-decoration: none; color: inherit; display: block;">
<div class="hero-badge-card hero-badge-card--pink">
<img src="/v2/images/video_hub_logo.png" alt="Agentic Video Hub"/>
<div class="hero-badge-title">Agentic Video Hub</div>
<div class="hero-badge-subtitle">Architect Video Library</div>
</div>
</a>
<a href="./introduction/" style="text-decoration: none; color: inherit; display: block;">
<a href="./introduction.html" style="text-decoration: none; color: inherit; display: block;">
<div class="hero-badge-card hero-badge-card--teal">
<img src="/v2/images/hero-car.png" alt="Nubenetes Car"/>
<div class="hero-badge-title">Get Started</div>
+31 -4
View File
@@ -3,7 +3,34 @@
Welcome to the **Nubenetes Elite Video Hub**. Discover highly-curated architectural video resources organized into logical learning paths:
## Learning Dimensions
- 🤖 [**AI Agents and MCP**](./ai-agents.md) — Dive into agentic architectures, tool integration, and Model Context Protocol setups.
- 🛠️ [**DevOps, IaC, and SRE**](./devops-iac.md) — Platform engineering, infrastructure automation with Terraform, SRE, and compliance workflows utilizing AI assistants.
- ☁️ [**Cloud Native Core**](./cloud-native.md) — Architectural strategies, Kubernetes operations, networking, and MLOps platforms.
- 🏁 [**Fundamentals**](./fundamentals.md) — Documentaries, foundational cloud native concepts, and core Strategy tutorials.
<div style="display: flex; justify-content: center; gap: 24px; margin: 24px 0; flex-wrap: wrap;">
<a href="./ai-agents.html" style="text-decoration: none; color: inherit; display: block; flex: 1; min-width: 250px; max-width: 270px;">
<div class="hero-badge-card hero-badge-card--purple" style="min-height: 240px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px 16px;">
<span style="font-size: 3.5rem; margin-bottom: 12px; display: block;">🤖</span>
<div class="hero-badge-title" style="font-size: 1.05rem; font-weight: bold;">AI Agents and MCP</div>
<div class="hero-badge-subtitle" style="font-size: 0.78rem; margin-top: 8px; line-height: 1.4; color: var(--md-primary-fg-color--dark);">Dive into agentic architectures, tool integration, and Model Context Protocol setups.</div>
</div>
</a>
<a href="./devops-iac.html" style="text-decoration: none; color: inherit; display: block; flex: 1; min-width: 250px; max-width: 270px;">
<div class="hero-badge-card hero-badge-card--cyan" style="min-height: 240px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px 16px;">
<span style="font-size: 3.5rem; margin-bottom: 12px; display: block;">🛠️</span>
<div class="hero-badge-title" style="font-size: 1.05rem; font-weight: bold;">DevOps, IaC, and SRE</div>
<div class="hero-badge-subtitle" style="font-size: 0.78rem; margin-top: 8px; line-height: 1.4; color: var(--md-primary-fg-color--dark);">Platform engineering, infrastructure automation with Terraform, SRE, and compliance workflows utilizing AI assistants.</div>
</div>
</a>
<a href="./cloud-native.html" style="text-decoration: none; color: inherit; display: block; flex: 1; min-width: 250px; max-width: 270px;">
<div class="hero-badge-card hero-badge-card--teal" style="min-height: 240px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px 16px;">
<span style="font-size: 3.5rem; margin-bottom: 12px; display: block;">☁️</span>
<div class="hero-badge-title" style="font-size: 1.05rem; font-weight: bold;">Cloud Native Core</div>
<div class="hero-badge-subtitle" style="font-size: 0.78rem; margin-top: 8px; line-height: 1.4; color: var(--md-primary-fg-color--dark);">Architectural strategies, Kubernetes operations, networking, and MLOps platforms.</div>
</div>
</a>
<a href="./fundamentals.html" style="text-decoration: none; color: inherit; display: block; flex: 1; min-width: 250px; max-width: 270px;">
<div class="hero-badge-card hero-badge-card--pink" style="min-height: 240px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px 16px;">
<span style="font-size: 3.5rem; margin-bottom: 12px; display: block;">🏁</span>
<div class="hero-badge-title" style="font-size: 1.05rem; font-weight: bold;">Fundamentals</div>
<div class="hero-badge-subtitle" style="font-size: 0.78rem; margin-top: 8px; line-height: 1.4; color: var(--md-primary-fg-color--dark);">Documentaries, foundational cloud native concepts, and core Strategy tutorials.</div>
</div>
</a>
</div>
+4 -1
View File
@@ -4,7 +4,7 @@ site_description: "Enterprise-grade curated portal for the modern Cloud Native e
site_author: "Nubenetes"
copyright: "Copyright &copy; 2026 Nubenetes Agentic Intelligence"
docs_dir: v2-docs
use_directory_urls: true
use_directory_urls: false
repo_name: "nubenetes/awesome-kubernetes"
repo_url: "https://github.com/nubenetes/awesome-kubernetes"
@@ -74,6 +74,9 @@ extra_css:
- static/extra.css
- static/v2_elite.css?v=2.3.44
extra_javascript:
- static/v2_filter.js
markdown_extensions:
- admonition
- pymdownx.details