<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://scriptvalley.com</loc>
<lastmod>2026-06-13T13:52:32.918Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses</loc>
<lastmod>2026-06-13T13:52:32.918Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/how-javascript-runs-in-the-browser-and-nodejs</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/var-vs-let-vs-const--which-one-to-use-and-when</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/javascript-data-types-explained-with-typeof</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/javascript-operators-and-operator-precedence</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/control-flow-if-else-switch-and-loops-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/javascript-foundations/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/function-declarations-vs-function-expressions-vs-arrow-funct</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/scope-chain-and-lexical-scope-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/closures-in-javascript-explained-with-real-examples</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/default-parameters-rest-parameters-and-the-spread-operator</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/higher-order-functions-map-filter-reduce-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/functions-and-scope/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/javascript-objects-creating-accessing-and-mutating</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/arrays-methods-every-javascript-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/destructuring-arrays-and-objects-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/prototypes-and-prototype-chain-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/es6-classes-in-javascript-syntax-inheritance-and-pitfalls</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/objects-arrays-and-destructuring/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/the-javascript-event-loop-explained-simply</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/promises-in-javascript-how-to-create-and-consume-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/asyncawait-writing-asynchronous-code-that-reads-synchronousl</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/promiseall-promiserace-promiseallsettled-promiseany-explaine</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/fetching-data-from-apis-with-fetch-and-handling-errors</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/asynchronous-javascript/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/selecting-and-modifying-dom-elements-with-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/javascript-event-listeners-handling-user-interaction</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/local-storage-and-session-storage-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/the-intersection-observer-and-mutation-observer-apis</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/timers-requestanimationframe-and-browser-rendering-performan</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/dom-manipulation-and-browser-apis/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/es-modules-import-and-export-syntax-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/error-handling-in-javascript-try-catch-custom-errors-and-err</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/iterators-and-generators-in-javascript-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/proxy-and-reflect-intercepting-javascript-object-operations</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/weakmap-weakset-and-memory-management-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language/advanced-javascript-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/what-is-typescript-and-why-use-it-over-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/how-to-install-typescript-and-compile-your-first-file</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/typescript-primitive-types-string-number-boolean-null-undefi</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/typescript-arrays-and-tuples-explained-with-examples</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/typescript-any-unknown-and-never-types-when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/typescript-foundations/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/how-to-type-objects-in-typescript-with-inline-types</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/typescript-interfaces-vs-type-aliases-what-is-the-difference</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/how-to-extend-and-implement-interfaces-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/index-signatures-and-dynamic-object-keys-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/intersection-types-in-typescript-combining-multiple-types</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/object-types-and-interfaces/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/how-to-type-function-parameters-and-return-types-in-typescri</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/function-overloads-in-typescript-how-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/union-types-and-type-narrowing-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/type-guards-and-custom-type-predicates-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/higher-order-functions-and-function-types-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/functions-and-type-narrowing/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/what-are-generics-in-typescript-and-why-do-you-need-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/generic-constraints-in-typescript-using-extends</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/generic-interfaces-and-generic-classes-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/built-in-typescript-utility-types-partial-required-readonly-</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/generic-utility-types-returntype-parameters-and-awaited-expl</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/generics/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/typescript-class-basics-access-modifiers-public-private-prot</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/abstract-classes-and-inheritance-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/static-members-and-singleton-pattern-in-typescript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/getters-and-setters-in-typescript-classes</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/typescript-decorators-introduction-class-and-method-decorato</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/classes-and-object-oriented-typescript/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/mapped-types-in-typescript-transforming-existing-types</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/conditional-types-in-typescript-ternary-logic-at-the-type-le</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/template-literal-types-in-typescript-dynamic-string-types</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/typescript-module-augmentation-and-declaration-merging</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/typescript-project-configuration-strict-mode-and-performance</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/typescript-complete-course-from-zero/advanced-types-and-real-world-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/how-to-install-python-and-run-your-first-script</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/python-variables-and-data-types-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/python-operators-and-expressions--complete-guide</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/python-if-else-and-conditional-logic</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/python-for-loops-and-while-loops</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/python-basics-and-syntax/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/python-lists--creation-indexing-and-common-methods</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/python-tuples-vs-lists--when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/python-dictionaries--keys-values-and-methods</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/python-sets--unique-collections-and-set-operations</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/python-list-comprehensions-and-generators</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/data-structures/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/how-to-define-and-call-functions-in-python</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/python-args-and-kwargs-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/python-lambda-functions-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/python-closures-and-the-scope-chain</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/python-decorators--how-they-work-and-how-to-write-one</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/functions-and-functional-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/python-classes-and-objects--the-basics</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/python-inheritance-and-method-overriding</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/python-dunder-methods-and-operator-overloading</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/python-class-methods-static-methods-and-properties</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/python-abstract-classes-and-interfaces</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/object-oriented-programming/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/how-to-read-and-write-files-in-python</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/python-try-except--exception-handling-patterns</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/python-custom-exceptions--how-and-when-to-create-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/working-with-json-files-in-python</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/reading-and-writing-csv-files-with-python</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/file-io-and-error-handling/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/python-iterators-and-the-iterator-protocol</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/python-generators--yield-and-send-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/python-context-managers--writing-your-own-with-statement</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/python-type-hints-and-how-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/python-threading-and-multiprocessing-basics</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course/advanced-python-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/how-java-compilation-and-the-jvm-work</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/java-primitive-data-types-and-variable-declaration</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/java-operators-and-expression-evaluation-order</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/java-if-else-and-switch-control-flow</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/java-for-loop-while-loop-and-loop-control</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/java-classes-and-objects-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/java-encapsulation-with-private-fields-and-getters-setters</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/java-inheritance-and-the-extends-keyword</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/java-polymorphism-and-method-overriding-at-runtime</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/java-interfaces-and-implementing-multiple-contracts</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/object-oriented-programming-in-java/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/java-arraylist-vs-linkedlist--when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/java-hashmap-and-hashset-for-fast-lookups</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/java-generics-and-type-safe-collections</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/java-streams-api-for-collection-processing</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/java-iterator-pattern-and-comparable-for-sorting</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/java-collections-framework/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/java-checked-vs-unchecked-exceptions-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/java-try-catch-finally-and-multi-catch-blocks</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/java-try-with-resources-and-autocloseable</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/reading-and-writing-text-files-in-java</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/custom-exceptions-in-java--when-and-how-to-create-them</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/exception-handling-and-io/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/java-threads--creating-and-starting-threads</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/java-synchronized-keyword-and-race-conditions</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/java-executorservice-and-thread-pool-basics</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/java-atomic-classes-and-concurrent-collections</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/java-completablefuture-for-async-non-blocking-code</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/concurrency-and-multithreading/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/java-lambda-expressions-and-functional-interfaces</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/java-optional--avoiding-nullpointerexception-properly</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/java-records-for-immutable-data-classes</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/java-sealed-classes-and-pattern-matching-with-switch</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/java-design-patterns--builder-strategy-and-observer</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course/modern-java-features-and-best-practices/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/what-is-react-and-why-use-it-over-plain-javascript</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/how-to-set-up-a-react-project-with-vite</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/jsx-syntax-rules-every-react-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/react-components-explained-functions-vs-classes</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/how-props-work-in-react-components</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/usestate-hook-explained-with-practical-examples</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/how-react-event-handling-works</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/controlled-vs-uncontrolled-components-in-react-forms</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/lifting-state-up-in-react-component-trees</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/how-to-render-lists-and-use-keys-correctly-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-and-event-handling/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/useeffect-hook-side-effects-and-lifecycle-in-functional-comp</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/useref-hook-dom-access-and-mutable-values-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/usereducer-hook-managing-complex-state-logic</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/usememo-and-usecallback-when-and-how-to-use-memoization</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/how-to-build-custom-hooks-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-hooks-in-depth/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/react-context-api-solving-prop-drilling</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/compound-component-pattern-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/higher-order-components-hoc-pattern-explained</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/reactmemo-and-performance-optimization-for-components</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/render-props-pattern-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/component-patterns-and-context-api/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/react-router-v6-setup-and-basic-routing</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/dynamic-routes-and-url-parameters-in-react-router</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/protected-routes-and-authentication-in-react-router</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/code-splitting-and-lazy-loading-routes-in-react</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/react-router-data-apis-loaders-and-actions</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/react-router-and-navigation/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/client-state-vs-server-state-understanding-the-difference</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/zustand-global-state-management-without-boilerplate</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/react-query-fetching-and-caching-server-data</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/react-query-mutations-creating-updating-and-deleting-data</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/combining-zustand-and-react-query-in-a-real-app</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course/state-management-with-zustand-and-react-query/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/what-is-nextjs-and-how-does-it-differ-from-create-react-app</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/how-to-scaffold-a-nextjs-project-with-create-next-app</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/how-file-based-routing-works-in-the-nextjs-app-router</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/server-components-vs-client-components-in-nextjs</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/how-to-fetch-data-in-nextjs-server-components</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/nextjs-foundations-and-project-setup/assessments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/how-to-create-dynamic-route-segments-in-nextjs-app-router</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/how-to-navigate-between-pages-using-the-nextjs-link-componen</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/what-are-route-groups-and-parallel-routes-in-nextjs</loc>
<lastmod>2026-06-13T13:52:33.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/how-to-read-search-params-and-handle-404s-in-nextjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/how-middleware-works-in-nextjs-and-when-to-use-it</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/routing-navigation-and-dynamic-segments/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/how-to-create-api-routes-in-the-nextjs-app-router</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/what-are-server-actions-and-how-do-they-replace-api-routes-f</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/how-to-handle-form-state-and-errors-with-useactionstate-in-n</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/how-to-validate-and-sanitize-data-in-nextjs-server-actions</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/how-to-structure-nextjs-api-routes-for-rest-endpoints</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/api-routes-and-server-actions/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/how-to-set-up-prisma-with-nextjs-and-postgresql</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/how-to-define-models-and-relations-in-a-prisma-schema</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/how-to-perform-crud-operations-with-prisma-in-nextjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/how-to-implement-pagination-with-prisma-and-nextjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/how-to-handle-database-errors-and-transactions-in-prisma</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/database-integration-with-prisma/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/how-to-set-up-nextauthjs-v5-in-a-nextjs-app-router-project</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/how-to-add-oauth-providers-to-nextauthjs-github-google</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/how-to-implement-credentials-authentication-with-nextauthjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/how-to-access-session-data-in-nextjs-server-and-client-compo</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/how-to-protect-routes-with-nextauthjs-middleware</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/authentication-with-nextauthjs/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/how-to-optimize-images-in-nextjs-with-the-image-component</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/how-to-optimize-fonts-in-nextjs-with-nextfont</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/how-to-add-metadata-and-open-graph-tags-in-nextjs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/how-nextjs-caching-works-and-how-to-control-it</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/how-to-deploy-a-nextjs-application-to-vercel</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nextjs-full-stack-react-applications/performance-optimization-and-deployment/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/what-is-tailwind-css-and-how-does-utility-first-css-work</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/how-to-install-tailwind-css-with-vite-or-cdn</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/tailwind-spacing-sizing-and-color-system-explained</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/typography-utilities-in-tailwind-css</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/tailwind-css-hover-focus-and-state-variants</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/tailwind-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/tailwind-flexbox-utilities-flex-justify-align-explained</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/css-grid-in-tailwind-columns-rows-and-template-areas</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/how-to-center-elements-vertically-and-horizontally-in-tailwi</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/tailwind-position-utilities-relative-absolute-sticky-fixed</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/building-a-responsive-navbar-with-tailwind-flexbox</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/layout-with-flexbox-and-grid/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/how-tailwind-responsive-breakpoints-work-sm-md-lg-xl</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/responsive-typography-and-spacing-in-tailwind</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/responsive-show-and-hide-elements-with-tailwind-display-clas</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/responsive-images-and-aspect-ratios-in-tailwind</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/container-class-and-responsive-layout-containers-in-tailwind</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/responsive-design/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/building-reusable-button-components-with-tailwind-variants</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/tailwind-card-component-patterns-for-product-and-content-car</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/styling-html-forms-with-tailwind-css</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/building-a-modal-overlay-with-tailwind-css</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/tailwind-badge-tag-and-pill-component-patterns</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/component-patterns-and-ui-building/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/how-to-customize-tailwind-with-tailwindconfigjs-theme-extens</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/tailwind-dark-mode-class-strategy-vs-media-strategy</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/tailwind-arbitrary-values-writing-custom-css-inside-utility-</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/using-apply-in-tailwind-to-extract-component-classes</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/tailwind-css-variables-and-design-tokens-with-css-custom-pro</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/customization-and-theming/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/tailwind-transitions-and-how-to-animate-ui-state-changes</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/tailwind-css-animations-animate-spin-pulse-bounce-and-custom</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/tailwind-peer-modifier-styling-siblings-based-on-input-state</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/tailwind-css-plugins-typography-forms-and-container-queries</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/building-a-complete-saas-landing-page-with-tailwind-css</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course/animations-transitions-and-advanced-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/what-is-the-critical-rendering-path-and-why-does-it-matter</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/what-is-ttfb-and-how-does-server-response-time-affect-page-s</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/what-are-render-blocking-resources-and-how-to-eliminate-them</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/how-to-read-a-browser-waterfall-chart-to-find-performance-bo</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/what-is-the-browser-cache-and-how-http-cache-headers-control</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/how-browsers-load-pages/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/what-is-lcp-and-how-to-improve-largest-contentful-paint</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/what-is-cls-and-how-to-eliminate-cumulative-layout-shift</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/what-is-inp-and-how-to-optimize-interaction-to-next-paint</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/how-to-measure-core-web-vitals-in-the-field-and-in-the-lab</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/how-to-use-lighthouse-to-audit-and-score-page-performance</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/core-web-vitals/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/which-image-format-should-you-use-webp-avif-or-jpeg</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/how-to-serve-responsive-images-with-srcset-and-sizes-attribu</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/when-to-use-lazy-loading-for-images-and-what-the-tradeoffs-a</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/how-to-load-web-fonts-without-causing-layout-shift-or-foit</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/how-to-compress-and-optimize-images-at-build-time-with-sharp</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/image-and-font-optimization/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/how-javascript-bundle-size-affects-time-to-interactive</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/how-to-code-split-a-javascript-bundle-with-dynamic-imports</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/how-to-tree-shake-unused-javascript-with-es-modules</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/what-causes-long-tasks-on-the-main-thread-and-how-to-fix-the</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/how-to-use-a-bundle-analyzer-to-find-and-remove-large-depend</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/how-http2-and-http3-improve-web-performance-over-http11</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/how-cdns-work-and-when-you-actually-need-one</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/how-brotli-and-gzip-compression-reduce-transfer-size</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/what-is-resource-hinting-preconnect-prefetch-and-preload</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/how-to-implement-a-service-worker-for-offline-caching-and-fa</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/network-and-delivery-optimization/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/how-css-triggers-layout-paint-and-composite--and-why-it-matt</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/how-to-achieve-smooth-60fps-css-animations-without-jank</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/what-causes-forced-synchronous-layout-and-how-to-avoid-it</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/how-to-use-css-containment-to-improve-rendering-performance</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/how-to-reduce-unused-css-and-eliminate-render-blocking-style</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/css-performance-and-rendering/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/what-is-the-dom-and-how-does-a-browser-build-it</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/how-to-select-dom-elements-with-queryselector</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/reading-and-writing-element-properties-in-the-dom</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/how-to-traverse-the-dom-tree-with-parent-child-and-sibling-p</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/creating-and-inserting-dom-elements-dynamically-with-javascr</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/understanding-the-dom/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/how-addeventlistener-works-in-javascript</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/what-is-event-bubbling-and-how-does-it-work</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/event-delegation-handling-clicks-on-dynamic-elements</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/preventing-default-browser-behaviour-on-form-submit-and-link</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/keyboard-and-input-events-keydown-keyup-and-input</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/events-and-event-handling/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/how-to-add-remove-and-toggle-css-classes-with-classlist</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/reading-and-setting-inline-styles-with-elementstyle</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/how-to-read-element-dimensions-and-position-in-the-browser</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/css-transitions-vs-javascript-animation-requestanimationfram</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/intersection-observer-detecting-when-elements-enter-the-view</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/styles-classes-and-layout-via-javascript/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/what-is-asynchronous-javascript-and-why-does-it-matter</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/javascript-promises-then-catch-and-promiseall</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/asyncawait-writing-asynchronous-code-that-reads-like-synchro</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/how-to-fetch-data-from-an-api-using-the-fetch-api</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/handling-api-errors-and-loading-states-in-the-ui</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/asynchronous-javascript-and-the-fetch-api/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/localstorage-vs-sessionstorage-when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/how-to-read-and-write-browser-cookies-with-javascript</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/the-storage-event-syncing-data-across-browser-tabs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/building-a-simple-client-side-state-manager-with-localstorag</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/indexeddb-basics-storing-structured-data-in-the-browser</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/browser-storage-and-state-management/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/how-the-history-api-enables-single-page-app-navigation</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/parsing-and-building-urls-with-the-url-api</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/clipboard-api-reading-and-writing-text-in-the-browser</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/mutationobserver-watching-dom-changes-without-polling</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/resizeobserver-reacting-to-element-size-changes</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-in-the-browser-dom-events-apis/web-apis-history-url-clipboard-and-observers/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/what-is-nodejs-and-how-does-it-differ-from-browser-javascrip</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/how-the-nodejs-event-loop-works-step-by-step</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/nodejs-module-system-commonjs-vs-es-modules</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/npm-and-packagejson-managing-nodejs-dependencies</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/nodejs-built-in-globals-and-useful-cli-flags</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/the-nodejs-runtime-explained/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/callbacks-in-nodejs-and-the-error-first-convention</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/promises-in-nodejs-then-catch-and-chaining</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/asyncawait-in-nodejs-writing-async-code-that-looks-synchrono</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/nodejs-eventemitter-building-event-driven-components</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/handling-errors-in-async-nodejs-code-the-right-way</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/async-javascript-in-nodejs/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/nodejs-fs-module-reading-writing-and-watching-files</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/nodejs-path-module-handling-file-paths-correctly-cross-platf</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/building-an-http-server-with-nodejs-http-module</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/nodejs-streams-reading-and-writing-large-data-efficiently</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/nodejs-crypto-module-hashing-encryption-and-random-values</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/nodejs-core-modules/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/expressjs-setup-and-routing-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/express-middleware-how-it-works-and-how-to-write-your-own</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/input-validation-in-express-apis-with-zod-or-joi</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/structured-error-handling-in-express-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/serving-files-and-handling-multipart-uploads-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/expressjs-building-rest-apis/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/jwt-authentication-in-nodejs-how-it-actually-works</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/building-a-jwt-auth-middleware-for-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/password-hashing-and-secure-login-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/securing-express-apis-helmet-rate-limiting-and-cors</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/environment-configuration-and-secrets-management-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/authentication-and-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/connecting-nodejs-to-postgresql-with-pg-or-prisma</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/unit-testing-nodejs-with-jest</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/integration-testing-express-apis-with-supertest</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/logging-and-monitoring-nodejs-applications-in-production</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/deploying-nodejs-to-production-docker-and-cloud-platforms</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime/databases-testing-and-deployment/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/what-is-expressjs-and-why-use-it-over-plain-nodejs</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/how-to-create-your-first-express-server-and-handle-requests</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/express-routing--defining-get-post-put-delete-routes</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/route-parameters-and-query-strings-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/express-router--how-to-split-routes-into-separate-files</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/expressjs-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/what-is-middleware-in-express-and-how-the-middleware-stack-w</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/how-to-write-a-custom-logging-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/how-to-write-request-validation-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/how-third-party-middleware-works--morgan-cors-helmet</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/how-to-pass-data-between-middleware-using-req-object</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/middleware-deep-dive/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/rest-api-design-principles-every-developer-should-know</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/how-to-structure-consistent-json-api-responses</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/express-error-handling-middleware--how-to-catch-all-errors</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/pagination-filtering-and-sorting-in-rest-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/how-to-handle-async-route-handlers-without-crashing-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/building-restful-apis/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/how-jwt-authentication-works-in-rest-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/how-to-write-jwt-authentication-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/role-based-access-control-rbac-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/how-to-hash-passwords-and-store-them-securely-with-bcrypt</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/how-to-use-environment-variables-to-protect-secrets-in-expre</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/authentication-and-authorization/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/how-to-build-a-rate-limiting-middleware-from-scratch</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/input-sanitization-middleware--preventing-injection-attacks</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/how-to-handle-file-uploads-in-express-with-multer</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/response-caching-middleware--how-to-cache-api-responses</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/how-to-structure-express-middleware-for-large-scale-applicat</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/advanced-middleware-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/how-to-test-express-routes-with-jest-and-supertest</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/how-to-test-authenticated-express-routes-in-jest</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/express-app-configuration-for-production--compression-loggin</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/how-to-deploy-an-express-api-to-railway-or-render</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/how-to-document-an-express-api-with-swaggeropenapi</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/expressjs-apis-and-middleware/testing-and-deploying-express-apis/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/how-http-request-response-cycle-works</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/what-makes-an-api-restful--the-6-constraints</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/http-methods--get-post-put-patch-delete-explained</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/rest-resource-naming-and-url-design-best-practices</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/http-status-codes--which-code-to-return-and-when</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/http-foundations-and-rest-principles/assessments</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/setting-up-expressjs-for-rest-api-development</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/express-routing--defining-get-post-put-delete-routes</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/express-router--organizing-routes-into-separate-files</loc>
<lastmod>2026-06-13T13:52:33.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/express-middleware--what-it-is-and-how-to-use-it</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/project-folder-structure-for-a-scalable-express-api</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/building-your-first-api-with-nodejs-and-express/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/input-validation-in-express-with-zod</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/consistent-api-error-response-format-design</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/api-pagination--cursor-based-vs-offset-based</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/api-filtering-and-sorting-with-query-parameters</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/api-versioning-strategies--url-vs-header-versioning</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/data-validation-error-handling-and-api-design-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/jwt-authentication--how-json-web-tokens-work</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/implementing-login-and-jwt-auth-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/refresh-tokens--implementing-secure-token-rotation</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/role-based-access-control-rbac-in-express-apis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/securing-passwords--bcrypt-hashing-and-common-mistakes</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/authentication-and-authorization/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/connecting-express-to-postgresql-with-prisma-orm</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/prisma-crud--create-read-update-delete-with-real-queries</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/database-transactions-in-prisma--when-and-how-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/n1-query-problem-in-apis-and-how-to-fix-it-with-prisma</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/prisma-migrations--managing-database-schema-changes-safely</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/database-integration-with-postgresql-and-prisma/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/integration-testing-express-apis-with-jest-and-supertest</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/openapi-documentation--generating-docs-from-your-express-api</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/rate-limiting-and-security-headers-for-production-apis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/environment-variables-and-config-management-for-apis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/deploying-a-nodejs-api-to-production--railway-and-render</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/rest-api-development-beginner-to-production/testing-documentation-and-production-deployment/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/what-is-fastapi-and-why-is-it-faster-than-flask-and-django-r</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/how-to-define-path-parameters-and-query-parameters-in-fastap</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/how-to-validate-request-bodies-with-pydantic-models-in-fasta</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/how-fastapi-response-models-and-status-codes-work</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/how-to-structure-a-fastapi-project-with-routers-and-multiple</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/fastapi-foundations/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/when-to-use-async-def-vs-def-in-fastapi-routes</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/how-fastapi-dependency-injection-works-with-depends</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/how-to-use-class-based-dependencies-in-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/how-to-use-yield-dependencies-for-resource-management-in-fas</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/how-to-run-background-tasks-in-fastapi-without-blocking-the-</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/async-programming-and-dependencies/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/how-to-connect-fastapi-to-postgresql-using-sqlalchemy</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/how-to-define-sqlalchemy-orm-models-for-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/how-to-perform-crud-operations-with-sqlalchemy-in-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/how-to-use-alembic-for-database-migrations-in-fastapi-projec</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/how-to-use-sqlalchemy-async-sessions-with-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/database-integration-with-sqlalchemy/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/how-to-hash-passwords-and-verify-them-in-fastapi-with-passli</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/how-to-create-and-verify-jwt-tokens-in-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/how-to-implement-oauth2-password-flow-login-in-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/how-to-configure-cors-in-fastapi-for-frontend-integration</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/how-to-add-rate-limiting-and-request-size-limits-to-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/authentication-and-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/how-to-set-up-pytest-and-testclient-for-fastapi-testing</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/how-to-override-fastapi-dependencies-in-tests</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/how-to-write-tests-for-authenticated-fastapi-routes</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/how-to-test-fastapi-with-a-real-database-using-pytest-fixtur</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/how-to-measure-and-improve-test-coverage-in-a-fastapi-projec</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/testing-fastapi-applications/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/how-to-containerize-a-fastapi-app-with-docker</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/how-to-manage-environment-variables-and-secrets-in-fastapi-p</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/how-to-add-structured-logging-to-a-fastapi-application</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/how-to-add-health-check-and-readiness-endpoints-to-fastapi</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/how-to-deploy-fastapi-with-gunicorn-and-uvicorn-workers-in-p</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/fastapi-build-production-python-apis/production-deployment/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/what-is-redis-and-why-use-it-instead-of-a-database</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/how-to-install-redis-on-linux-macos-and-docker</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/redis-data-types-overview-strings-hashes-lists-sets-sorted-s</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/redis-key-expiry-and-ttl-how-to-set-and-check-expiration</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/redis-persistence-rdb-snapshots-vs-aof-logging-explained</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/redis-string-commands-set-get-incr-append-getrange</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/redis-hash-commands-hset-hget-hmget-hdel-hgetall</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/redis-list-commands-lpush-rpush-lpop-lrange-llen</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/redis-set-commands-sadd-smembers-sinter-sunion-sdiff</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/redis-sorted-set-commands-zadd-zrange-zrank-zscore-zrangebys</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/core-commands-and-data-structures/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/cache-aside-pattern-how-to-implement-read-through-caching-in</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/write-through-and-write-behind-caching-when-to-update-redis-</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/cache-invalidation-strategies-ttl-event-based-and-tag-based-</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/redis-cache-eviction-policies-lru-lfu-and-allkeys-explained</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/preventing-cache-stampede-with-redis-locks-and-probabilistic</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/caching-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/redis-pubsub-how-publish-and-subscribe-work</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/redis-streams-introduction-durable-append-only-event-logs</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/redis-stream-consumer-groups-reliable-message-processing-wit</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/keyspace-notifications-subscribe-to-redis-events-like-key-ex</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/when-to-use-pubsub-vs-streams-vs-a-job-queue-in-redis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/pubsub-and-streams/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/redis-transactions-with-multi-and-exec-atomic-command-batche</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/watch-and-optimistic-locking-in-redis-how-to-handle-concurre</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/redis-pipelines-batch-commands-to-reduce-network-round-trips</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/lua-scripting-in-redis-run-server-side-logic-atomically-with</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/rate-limiting-with-redis-sliding-window-and-token-bucket-pat</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/transactions-scripting-and-pipelines/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/redis-replication-primary-replica-setup-and-how-replication-</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/redis-sentinel-automatic-failover-and-high-availability-expl</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/redis-cluster-horizontal-sharding-and-how-data-is-distribute</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/redis-security-authentication-tls-and-acl-user-permissions</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/monitoring-redis-with-info-monitor-slowlog-and-latency-comma</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/redis-complete-course/redis-in-production/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/what-is-a-websocket-and-why-http-falls-short-for-real-time</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/the-websocket-handshake-explained-step-by-step</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/websocket-frames-and-message-types</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/websocket-readystate-and-connection-lifecycle</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/how-to-inspect-websocket-traffic-in-chrome-devtools</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/how-websockets-actually-work/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/how-to-open-a-websocket-connection-from-the-browser</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/how-to-implement-automatic-websocket-reconnection</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/how-to-send-and-receive-structured-messages-with-websocket</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/websocket-heartbeat-and-keep-alive-implementation</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/how-to-close-a-websocket-connection-gracefully</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/browser-websocket-api/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/how-to-set-up-a-websocket-server-with-the-ws-npm-package</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/how-to-broadcast-messages-to-all-connected-websocket-clients</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/how-to-implement-websocket-rooms-for-group-messaging</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/how-to-authenticate-websocket-connections</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/how-to-handle-websocket-server-errors-and-unexpected-disconn</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/building-a-websocket-server-with-nodejs/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/socketio-vs-raw-websockets--when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/how-to-set-up-socketio-server-and-client</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/how-to-use-socketio-rooms-and-namespaces</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/how-socketio-acknowledgments-work-for-reliable-messaging</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/how-to-use-socketio-middleware-for-authentication</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/socketio-for-production-real-time-apps/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/optimistic-ui-updates-with-websockets</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/how-to-handle-missed-messages-during-websocket-reconnection</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/presence-systems--tracking-who-is-online-with-websockets</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/message-ordering-and-deduplication-in-real-time-systems</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/rate-limiting-websocket-connections-and-messages</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/real-time-patterns-and-architecture/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/why-you-cannot-horizontally-scale-a-websocket-server-naively</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/how-to-use-redis-pubsub-to-broadcast-across-websocket-server</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/socketio-redis-adapter-for-horizontal-scaling</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/sticky-sessions-and-load-balancing-for-websocket-servers</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/monitoring-websocket-servers-in-production</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/websockets-real-time-applications/scaling-websocket-servers/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/what-is-a-relational-database-and-why-should-developers-care</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/writing-your-first-select-query--columns-aliases-and-literal</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/filtering-rows-with-where--operators-and-conditions</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/sorting-and-limiting-results-with-order-by-and-limit</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/sql-data-types-every-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/foundations-how-databases-think/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/count-sum-avg-min-max--aggregate-functions-explained</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/group-by--aggregate-data-by-category-or-value</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/having-vs-where--filtering-groups-after-aggregation</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/window-functions--rownumber-rank-and-running-totals</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/lag-and-lead--comparing-rows-to-previous-or-next-values</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/aggregations-and-grouping/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/how-sql-joins-work--the-mental-model-developers-need</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/inner-join-vs-left-join--which-rows-survive</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/right-join-and-full-outer-join--when-and-why-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/joining-three-or-more-tables-without-losing-your-mind</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/self-joins-and-non-equi-joins--advanced-join-patterns</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/joins--combining-tables/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/database-normalization--1nf-2nf-3nf-without-the-textbook-jar</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/primary-keys-foreign-keys-and-referential-integrity</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/unique-not-null-check--enforcing-data-rules-in-the-schema</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/indexes--what-they-are-and-when-to-add-them</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/many-to-many-relationships-and-junction-tables</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/schema-design-and-constraints/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/scalar-subqueries-and-subqueries-in-where--inline-queries-ex</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/correlated-subqueries--what-they-are-and-when-they-are-slow</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/ctes-with-with--making-complex-queries-readable</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/recursive-ctes--querying-hierarchical-data</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/subqueries-in-from--derived-tables-and-their-uses</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/subqueries-and-ctes/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/transactions-and-acid--what-developers-need-to-know</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/reading-explain-output--understanding-query-execution-plans</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/n1-queries-and-how-to-fix-them-with-sql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/common-query-rewrites-that-make-sql-faster</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/upsert-soft-deletes-and-common-application-sql-patterns</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/sql-for-developers-not-dbas/transactions-performance-and-production-sql/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/how-to-install-postgresql-on-windows-mac-and-linux</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/what-is-psql-and-how-to-use-the-psql-command-line-tool</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/how-to-create-a-postgresql-database-and-connect-to-it</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/postgresql-data-types-explained-with-examples</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/how-to-create-your-first-table-in-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/getting-started-with-postgresql/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/how-to-select-data-from-a-postgresql-table</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/insert-update-delete-in-postgresql-with-examples</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/how-sql-aggregate-functions-work-in-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/how-to-join-tables-in-postgresql-inner-left-right-full</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/what-are-subqueries-and-ctes-in-postgresql-and-when-to-use-t</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/core-sql-querying-and-manipulating-data/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/database-normalization-explained-1nf-2nf-3nf-with-examples</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/how-to-use-foreign-keys-and-referential-integrity-in-postgre</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/postgresql-check-unique-and-not-null-constraints-explained</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/how-sequences-and-identity-columns-work-in-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/postgresql-schemas-explained-namespaces-and-searchpath</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/schema-design-and-constraints/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/how-postgresql-b-tree-indexes-work-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/how-to-read-postgresql-explain-analyze-output</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/postgresql-index-types-hash-gin-gist-brin--when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/how-to-optimize-slow-postgresql-queries-in-production</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/what-are-window-functions-in-postgresql-and-how-do-they-work</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/indexes-and-query-performance/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/how-database-transactions-work-in-postgresql-acid-explained</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/postgresql-transaction-isolation-levels-explained-with-examp</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/how-postgresql-row-locking-works-select-for-update-and-advis</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/what-is-mvcc-in-postgresql-and-how-does-it-affect-performanc</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/how-to-detect-and-fix-deadlocks-in-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/transactions-concurrency-and-locking/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/how-to-write-postgresql-functions-and-stored-procedures</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/how-triggers-work-in-postgresql-with-real-examples</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/working-with-jsonb-in-postgresql-operators-and-indexing</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/postgresql-roles-and-permissions-explained-grant-revoke-crea</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/how-row-level-security-rls-works-in-postgresql</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/postgresql-complete-course/advanced-postgresql-functions-json-and-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/what-is-mongodb-and-when-should-you-use-it</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/how-to-install-mongodb-and-connect-with-mongosh</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/how-mongodb-bson-and-objectid-work-under-the-hood</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/mongodb-schema-design-embedding-vs-referencing-documents</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/mongodb-vs-postgresql-which-database-should-you-pick</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongodb-foundations/assessments</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/how-to-insert-documents-into-mongodb-collections</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/how-to-query-mongodb-documents-with-find-and-filters</loc>
<lastmod>2026-06-13T13:52:33.233Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/how-to-update-documents-in-mongodb-with-updateone-and-update</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/how-to-delete-documents-in-mongodb-safely</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/mongodb-query-operators-complete-reference-in-exists-regex-a</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/crud-operations/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/how-mongodb-indexes-work-and-why-queries-slow-down-without-t</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/how-to-create-single-field-and-compound-indexes-in-mongodb</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/mongodb-text-indexes-and-full-text-search-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/how-to-use-explain-to-diagnose-slow-mongodb-queries</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/mongodb-ttl-indexes-auto-expiring-documents-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/indexing-and-query-performance/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/how-the-mongodb-aggregation-pipeline-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/mongodb-group-and-project-stages-explained-with-examples</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/how-to-join-collections-in-mongodb-with-lookup</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/mongodb-unwind-addfields-and-bucket-stages-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/how-to-write-mongodb-aggregation-pipelines-for-real-analytic</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/aggregation-pipeline/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/how-to-set-up-mongoose-and-define-schemas-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/mongoose-validation-built-in-and-custom-validators</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/mongoose-middleware-pre-and-post-hooks-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/mongoose-populate-how-to-handle-document-references</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/mongoose-virtuals-statics-and-instance-methods</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/mongoose-and-nodejs-integration/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/how-mongodb-multi-document-transactions-work</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/how-mongodb-replica-sets-work-and-why-you-need-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/mongodb-security-authentication-authorization-and-tls-setup</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/mongodb-connection-pooling-and-performance-tuning-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/how-to-back-up-and-restore-mongodb-databases-in-production</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/mongodb-complete-course/production-mongodb-transactions-replication-and-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/what-is-a-database-and-why-does-design-matter</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/how-to-identify-entities-and-attributes-from-requirements</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/primary-keys-and-unique-identifiers-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/relationships-between-tables-one-to-many-many-to-many-one-to</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/what-is-an-er-diagram-and-how-to-read-one</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/foundations-of-database-design/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/what-is-database-normalization-and-why-it-matters</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/first-normal-form-1nf-atomic-values-and-repeating-groups</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/second-normal-form-2nf-eliminating-partial-dependencies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/third-normal-form-3nf-eliminating-transitive-dependencies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/denormalization-when-to-break-the-rules-deliberately</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/normalization-removing-redundancy/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/choosing-the-right-sql-data-types-for-every-column</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/not-null-unique-default-and-check-constraints</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/foreign-keys-and-referential-integrity-in-sql</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/indexes-when-to-add-them-and-when-not-to</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/null-values-meaning-risks-and-how-to-handle-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/data-types-and-constraints/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/how-to-model-hierarchical-data-in-a-relational-database</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/polymorphic-associations-one-table-referencing-multiple-tabl</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/soft-deletes-how-to-keep-deleted-records-in-the-database</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/audit-tables-tracking-who-changed-what-and-when</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/many-to-many-with-extra-attributes-on-the-junction-table</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/advanced-schema-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/vertical-vs-horizontal-scaling-for-databases</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/table-partitioning-splitting-large-tables-by-range-or-list</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/archiving-old-data-keeping-production-tables-lean</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/sharding-concepts-designing-a-schema-that-can-shard</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/optimizing-schemas-for-read-heavy-vs-write-heavy-workloads</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/schema-for-scale/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/database-migrations-versioning-schema-changes-safely</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/zero-downtime-schema-changes-adding-columns-and-tables-safel</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/database-roles-and-permissions-least-privilege-for-every-use</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/schema-documentation-writing-a-data-dictionary</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/capstone-designing-a-complete-schema-from-scratch</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/database-design-from-idea-to-schema/from-schema-to-production/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/what-is-authentication-and-why-does-it-matter</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/how-passwords-should-be-stored-in-a-database</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/what-is-https-and-why-auth-requires-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/common-authentication-attack-types-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/setting-up-an-express-project-for-auth-development</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/authentication-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/how-cookie-session-authentication-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/how-to-set-up-express-session-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/storing-sessions-in-a-database-instead-of-memory</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/building-login-and-logout-routes-with-sessions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/how-to-implement-a-remember-me-feature</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/session-based-authentication/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/what-is-a-jwt-and-how-is-it-structured</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/how-to-sign-and-verify-jwts-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/where-to-store-jwts-in-the-browser</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/access-tokens-and-refresh-tokens-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/how-to-invalidate-jwts-before-they-expire</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/jwt-authentication/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/how-oauth-20-authorization-code-flow-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/setting-up-google-oauth-with-passportjs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/how-to-link-social-accounts-to-existing-users</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/adding-github-oauth-login-to-an-express-app</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/oauth-callback-routes-and-session-handling-with-passport</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/oauth-20-and-social-login/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/how-to-add-rate-limiting-to-login-endpoints</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/csrf-protection-for-cookie-based-auth</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/input-validation-and-sanitization-for-auth-routes</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/setting-security-headers-with-helmetjs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/how-to-implement-email-verification-for-new-accounts</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/security-hardening/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/how-to-build-a-secure-password-reset-flow</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/what-is-totp-and-how-two-factor-authentication-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/how-to-set-up-totp-in-nodejs-with-speakeasy</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/how-to-enforce-mfa-during-the-login-flow</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/how-to-use-backup-codes-for-mfa-account-recovery</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/authentication-from-scratch/password-reset-and-mfa/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/authentication-vs-authorization-what-is-the-actual-differenc</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/stateful-vs-stateless-authentication-how-each-approach-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/how-http-cookies-work-for-auth</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/bearer-tokens-and-the-authorization-header-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/password-hashing-with-bcrypt-why-plain-storage-is-catastroph</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/authentication-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/jwt-structure-explained-header-payload-signature-decoded</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/signing-and-verifying-jwts-with-jsonwebtoken-in-nodejs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/jwt-expiry-and-refresh-token-strategy</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/jwt-security-pitfalls-algorithm-confusion-and-none-attack</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/jwt-revocation-strategies-blocklist-and-short-ttl-tradeoffs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/jwt-deep-dive/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/how-server-side-sessions-work-in-express</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/backing-sessions-with-redis-using-connect-redis</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/session-fixation-attacks-and-how-to-prevent-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/secure-session-logout-and-session-destruction</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/session-middleware-for-route-protection-in-express</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/session-based-authentication/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/oauth-20-authorization-code-flow-step-by-step</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/implementing-google-sign-in-with-passportjs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/what-openid-connect-adds-on-top-of-oauth-20</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/handling-oauth-access-tokens-and-scopes-in-your-backend</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/linking-oauth-accounts-to-existing-email-password-accounts</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/oauth-20-and-third-party-auth/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/rbac-design-roles-permissions-and-resource-ownership</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/implementing-permission-middleware-in-express</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/resource-ownership-checks-can-this-user-edit-this-post</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/storing-roles-in-jwt-claims-vs-database-lookups</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/common-rbac-mistakes-that-cause-privilege-escalation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/role-based-access-control/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/csrf-attacks-and-how-samesite-cookies-prevent-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/rate-limiting-login-endpoints-to-prevent-brute-force-attacks</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/https-hsts-and-secure-headers-for-auth-endpoints</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/logging-auth-events-without-leaking-sensitive-data</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/auth-architecture-checklist-what-a-production-system-needs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/jwt-session-auth-deep-dive/security-hardening-and-production-auth/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/how-web-attacks-work-the-attackers-perspective</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/what-are-http-security-headers-and-why-do-they-matter</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/how-https-protects-data-in-transit-and-when-it-does-not</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/cors-explained-what-it-prevents-and-what-it-does-not</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/how-to-read-and-understand-a-security-vulnerability-report-c</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/the-attackers-mindset-and-http-security-basics/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/how-sql-injection-works-and-why-parameterized-queries-preven</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/how-to-prevent-nosql-injection-in-mongodb-queries</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/what-is-os-command-injection-and-how-to-avoid-shell-calls</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/path-traversal-attacks-how-attackers-escape-your-intended-di</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/input-validation-vs-output-encoding-which-to-use-when</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/injection-attacks-sql-command-and-ldap/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/how-stored-xss-works-and-why-output-encoding-stops-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/content-security-policy-how-to-block-xss-at-the-browser-leve</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/how-csrf-attacks-work-forging-requests-with-victims-cookies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/implementing-csrf-tokens-with-the-double-submit-cookie-patte</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/dom-based-xss-how-client-side-javascript-creates-injection-s</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/cross-site-scripting-xss-and-cross-site-request-forgery-csrf/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/how-to-hash-passwords-correctly-bcrypt-argon2-and-why-md5-is</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/how-jwts-work-and-the-security-mistakes-developers-make-with</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/session-fixation-and-session-hijacking-how-to-secure-session</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/rate-limiting-and-account-lockout-to-stop-brute-force-attack</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/oauth-20-and-openid-connect-delegated-authentication-done-ri</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/authentication-and-session-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/what-is-idor-and-how-to-prevent-insecure-direct-object-refer</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/role-based-access-control-rbac-designing-and-implementing-pe</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/mass-assignment-vulnerabilities-how-to-prevent-field-injecti</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/privilege-escalation-how-attackers-gain-higher-permissions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/implementing-middleware-based-authorization-in-express</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/access-control-and-authorization/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/how-secrets-leak-and-how-to-manage-them-with-environment-var</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/how-to-use-a-secrets-manager-vault-aws-secrets-manager-and-d</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/supply-chain-attacks-securing-your-npm-dependencies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/security-scanning-in-cicd-sast-dast-and-secret-scanning</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/docker-and-container-security-basics-for-developers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-security-fundamentals-for-developers/secrets-management-dependencies-and-security-in-cicd/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/what-is-docker-and-why-do-developers-use-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/how-to-install-docker-on-linux-mac-and-windows</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/docker-images-vs-containers-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/essential-docker-cli-commands-every-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/how-docker-volumes-work-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/dockerfile-syntax-and-instructions-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/how-docker-layer-caching-works-and-how-to-exploit-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/multi-stage-docker-builds-for-smaller-production-images</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/how-to-use-dockerignore-to-speed-up-builds</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/pushing-docker-images-to-docker-hub-and-private-registries</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/building-docker-images-with-dockerfile/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/how-docker-networking-works-by-default</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/how-to-create-custom-docker-networks-for-container-communica</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/port-mapping-and-exposing-containers-to-the-host</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/docker-dns-and-service-discovery-between-containers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/docker-network-troubleshooting-and-debugging-techniques</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-networking/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/what-is-docker-compose-and-when-to-use-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/writing-your-first-docker-composeyml-file</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/docker-compose-environment-variables-and-env-files</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/docker-compose-health-checks-and-service-dependencies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/scaling-services-and-overriding-compose-files-for-different-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-compose/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/docker-container-security-best-practices</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/docker-logging-drivers-and-centralized-log-management</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/docker-resource-limits-and-preventing-container-sprawl</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/how-to-use-docker-secrets-for-sensitive-configuration</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/container-restart-policies-and-production-uptime-strategies</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/docker-in-production/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/building-docker-images-in-github-actions-ci-pipelines</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/docker-build-cache-in-ci-pipelines-for-faster-builds</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/docker-image-tagging-strategies-for-ci-and-production</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/running-docker-containers-in-ci-for-integration-testing</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/how-to-scan-docker-images-for-vulnerabilities-in-ci</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/docker-complete-course/cicd-with-docker-and-container-registries/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/what-is-github-actions-and-how-does-cicd-work</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/github-actions-yaml-workflow-file-structure-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/how-github-actions-triggers-and-events-work</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/what-are-github-actions-runners-and-how-to-choose-one</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/how-to-use-pre-built-github-actions-from-the-marketplace</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/github-actions-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/how-to-run-automated-tests-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/how-to-cache-dependencies-in-github-actions-to-speed-up-buil</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/how-to-use-environment-variables-and-secrets-in-github-actio</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/how-to-run-jobs-in-parallel-and-in-sequence-using-needs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/how-to-upload-and-download-build-artifacts-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/building-a-ci-pipeline/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/how-to-build-a-docker-image-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/how-to-push-docker-images-to-github-container-registry</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/how-to-run-service-containers-for-integration-tests-in-githu</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/how-to-use-docker-layer-caching-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/how-to-use-matrix-strategy-to-test-across-multiple-environme</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/docker-and-container-workflows/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/how-to-deploy-to-a-server-using-ssh-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/how-to-deploy-to-github-pages-using-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/how-to-use-github-actions-environments-for-staged-deployment</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/how-to-deploy-to-aws-using-oidc-instead-of-long-lived-creden</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/how-to-implement-rollback-in-a-github-actions-deployment-pip</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/deployment-workflows/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/how-to-create-reusable-workflows-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/how-to-write-a-composite-action-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/how-to-use-conditional-logic-with-if-expressions-in-github-a</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/how-to-pass-data-between-steps-using-outputs-in-github-actio</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/how-to-limit-github-actions-costs-with-concurrency-and-skip-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/advanced-workflow-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/how-to-prevent-script-injection-attacks-in-github-actions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/how-to-pin-github-actions-to-a-commit-sha-for-supply-chain-s</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/how-to-use-minimum-permissions-with-githubtoken</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/how-to-scan-workflows-for-security-issues-with-actionlint</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/how-to-manage-workflow-secrets-rotation-and-audit-in-github-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/cicd-with-github-actions/security-and-best-practices/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/why-kubernetes-exists-the-problem-with-containers-at-scale</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/kubernetes-architecture-control-plane-and-worker-nodes-expla</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/how-to-install-kubectl-and-set-up-a-local-kubernetes-cluster</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/kubernetes-namespaces-what-they-are-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/kubernetes-labels-and-selectors-how-resources-find-each-othe</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/containers-and-the-kubernetes-foundation/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/what-is-a-kubernetes-pod-and-why-you-rarely-create-one-direc</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/kubernetes-deployment-how-to-deploy-and-manage-stateless-app</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/kubernetes-rolling-updates-and-rollbacks-how-to-deploy-witho</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/kubernetes-resource-requests-and-limits-how-to-prevent-noisy</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/kubernetes-liveness-and-readiness-probes-how-to-handle-unhea</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/core-workload-resources-pods-deployments-and-replicasets/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/kubernetes-services-explained-clusterip-nodeport-and-loadbal</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/kubernetes-dns-how-pods-discover-each-other-by-name</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/kubernetes-ingress-how-to-route-http-traffic-to-multiple-ser</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/kubernetes-networkpolicy-how-to-lock-down-pod-to-pod-communi</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/kubernetes-externalname-and-headless-services-advanced-servi</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/networking-services-dns-and-ingress/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/kubernetes-configmaps-how-to-inject-configuration-into-pods</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/kubernetes-secrets-storing-sensitive-data-securely-in-a-clus</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/kubernetes-persistentvolumes-how-pods-get-durable-storage</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/kubernetes-statefulsets-deploying-databases-and-stateful-app</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/kubernetes-emptydir-hostpath-and-configmap-volumes-compared</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/configuration-and-storage/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/horizontal-pod-autoscaler-scaling-kubernetes-workloads-by-cp</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/kubernetes-node-selectors-and-node-affinity-placing-pods-on-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/kubernetes-taints-and-tolerations-reserving-nodes-for-specif</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/kubernetes-daemonsets-running-one-pod-per-node-for-monitorin</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/kubernetes-jobs-and-cronjobs-running-batch-and-scheduled-wor</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/scaling-scheduling-and-resource-management/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/kubernetes-rbac-how-to-control-who-can-do-what-in-your-clust</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/kubernetes-serviceaccounts-how-pods-authenticate-to-the-api-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/kubernetes-security-contexts-running-pods-with-least-privile</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/kubernetes-pod-disruption-budgets-zero-downtime-operations-d</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/kubernetes-resource-quotas-and-limitranges-enforcing-multi-t</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/kubernetes-from-containers-to-clusters/security-rbac-and-production-readiness/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/what-is-linux-and-why-developers-use-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/linux-file-system-hierarchy-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/how-to-navigate-directories-in-linux-terminal</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/creating-copying-moving-and-deleting-files-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/linux-file-permissions-and-chmod-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/linux-fundamentals--file-system/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/how-to-read-and-view-files-in-linux-terminal</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/grep-command-tutorial-for-searching-files</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/how-to-use-pipes-and-redirection-in-bash</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/sed-command-for-find-and-replace-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/awk-command-tutorial-for-text-processing</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/text-processing--searching/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/how-to-write-your-first-bash-script</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/bash-variables-and-how-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/bash-if-else-and-conditional-statements</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/bash-loops-for-while-and-until-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/bash-functions-how-to-write-reusable-code</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/bash-scripting-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/how-linux-processes-work-pid-parent-and-lifecycle</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/killing-and-signaling-processes-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/how-to-monitor-cpu-and-memory-usage-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/background-jobs-and-job-control-in-bash</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/how-to-check-disk-usage-in-linux-with-df-and-du</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/process-management--system-monitoring/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/linux-networking-commands-every-developer-needs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/ssh-tutorial-connect-to-remote-servers-securely</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/transferring-files-with-scp-and-rsync</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/curl-and-wget-for-http-requests-from-terminal</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/how-to-use-firewall-and-iptables-basics-on-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/networking--ssh-essentials/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/bash-arrays-and-associative-arrays-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/bash-error-handling-with-set--e-set--u-and-traps</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/cron-jobs-how-to-schedule-tasks-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/environment-variables-and-env-files-in-linux</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/how-to-write-production-ready-bash-scripts</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/linux-bash-for-developers/advanced-bash--automation/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/what-is-bash-and-why-developers-use-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/bash-variables-and-quoting-rules-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/how-bash-exit-codes-and-error-handling-work</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/bash-input-and-output-redirection-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/command-substitution-and-arithmetic-in-bash</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/shell-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/bash-if-statements-and-test-conditions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/bash-for-loops-and-while-loops-with-examples</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/bash-case-statement-for-multi-branch-logic</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/bash-arrays-and-how-to-iterate-them-correctly</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/bash-select-menu-and-user-input-handling</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/control-flow-and-logic/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/how-to-write-and-call-bash-functions</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/bash-local-variables-and-scope-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/bash-script-structure-and-sourcing-files</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/how-to-write-a-bash-logging-library</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/bash-argument-parsing-with-getopts</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/functions-and-script-architecture/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/grep-sed-and-awk--which-tool-to-use-when</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/bash-string-manipulation-without-external-tools</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/parsing-csv-and-json-in-bash-scripts</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/bash-file-and-directory-operations-at-scale</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/bash-regex-matching-and-string-validation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/text-processing-and-file-operations/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/bash-background-jobs-and-job-control-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/bash-signals-and-trap-for-graceful-shutdown</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/scheduling-bash-scripts-with-cron-and-systemd-timers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/how-to-monitor-and-manage-bash-script-processes</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/bash-parallel-processing-with-xargs-and-gnu-parallel</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/process-management-and-automation/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/bash-script-testing-and-debugging-techniques</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/managing-secrets-and-environment-variables-in-bash</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/building-a-cicd-deployment-script-in-bash</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/bash-scripts-for-docker-and-kubernetes-automation</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/building-a-self-contained-bash-cli-tool</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/bash-scripting-for-developers/devops-scripting-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/what-happens-when-you-type-a-url-and-hit-enter</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/how-dns-resolution-actually-works-step-by-step</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/tcp-vs-udp-which-protocol-and-why-it-matters</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/osi-model-explained-simply-for-web-developers</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/ip-addresses-ports-and-sockets-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/how-the-internet-moves-data/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/http-request-and-response-structure-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/http-methods-get-post-put-patch-delete-when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/http-status-codes-what-every-code-category-means</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/http-headers-which-ones-actually-matter</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/http11-vs-http2-vs-http3-real-differences-developers-should-</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/http-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/how-tls-handshake-works-and-why-https-is-secure</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/ssl-certificates-what-they-are-and-how-the-chain-of-trust-wo</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/common-tls-errors-and-what-they-actually-mean</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/how-hsts-prevents-downgrade-attacks</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/how-to-set-up-https-with-lets-encrypt-for-free</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/https-and-tls-security/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/how-http-caching-works-cache-control-header-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/etags-and-conditional-requests-how-browsers-avoid-re-downloa</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/cache-busting-how-to-force-browsers-to-load-new-files</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/cdn-what-it-is-and-how-it-caches-your-content-at-the-edge</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/why-cache-control-no-cache-doesnt-mean-what-you-think</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/caching-and-performance/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/rest-api-design-principles-every-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/jwt-authentication-how-tokens-work-end-to-end</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/websockets-vs-server-sent-events-vs-polling-when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/cors-explained-why-it-exists-and-how-to-fix-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/api-rate-limiting-and-pagination-how-to-handle-both-correctl</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/rest-apis-and-web-communication-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/cross-site-scripting-xss-how-it-works-and-how-to-prevent-it</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/csrf-attacks-how-attackers-forge-requests-and-how-tokens-sto</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/security-headers-every-web-application-needs</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/sql-injection-and-command-injection-how-they-work-and-how-to</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/cookie-security-httponly-secure-samesite-attributes-explaine</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/http-the-web-how-it-actually-works/web-security-essentials/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/what-is-rest-api-and-how-does-it-work</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/rest-api-versioning-strategies-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/http-status-codes-every-backend-developer-must-know</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/how-to-design-api-error-responses</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/api-authentication-api-keys-vs-jwt-vs-oauth2</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/api-design-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/what-is-caching-and-why-does-it-matter-for-performance</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/cache-eviction-policies-lru-lfu-and-ttl-explained</loc>
<lastmod>2026-06-13T13:52:33.234Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/cache-invalidation-strategies-how-to-handle-stale-data</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/http-caching-with-cache-control-headers</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/redis-as-a-cache-patterns-and-best-practices</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/caching-fundamentals/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/horizontal-vs-vertical-scaling-when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/how-load-balancers-work-algorithms-and-types</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/database-scaling-read-replicas-and-sharding-explained</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/what-is-a-cdn-and-how-does-it-reduce-latency</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/stateless-vs-stateful-services-design-trade-offs</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/scalability-patterns/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/why-apis-need-rate-limiting-and-how-it-works</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/fixed-window-vs-sliding-window-rate-limiting-algorithms</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/token-bucket-and-leaky-bucket-rate-limiting-explained</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/distributed-rate-limiting-with-redis-across-multiple-servers</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/api-gateway-rate-limiting-vs-application-level-rate-limiting</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/rate-limiting-and-throttling/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/why-use-a-message-queue-sync-vs-async-api-patterns</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/message-queue-guarantees-at-least-once-vs-exactly-once-deliv</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/how-bullmq-and-redis-backed-job-queues-work</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/event-driven-architecture-pubsub-pattern-explained</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/job-status-polling-vs-webhook-callbacks-for-async-apis</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/message-queues-and-async-processing/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/how-to-approach-a-system-design-interview-question</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/designing-a-url-shortener-system-end-to-end</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/designing-a-notification-system-that-scales-to-millions</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/cap-theorem-and-consistency-trade-offs-in-distributed-system</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/observability-in-production-metrics-logging-and-tracing</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/system-design-apis-caching-scalability/system-design-end-to-end/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/how-to-name-variables-so-your-code-explains-itself</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/how-to-name-functions-clearly-in-any-language</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/class-and-type-naming-conventions-that-make-architecture-cle</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/common-bad-naming-patterns-and-how-to-fix-them</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/naming-conventions-by-language-javascript-python-and-java</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/why-naming-matters/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/what-does-single-responsibility-mean-for-a-function</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/how-long-should-a-function-be--the-right-answer</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/how-many-parameters-should-a-function-take</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/side-effects-in-functions-and-why-they-cause-bugs</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/how-to-extract-functions-from-long-methods-without-breaking-</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/writing-functions-that-do-one-thing/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/how-to-structure-a-project-folder-so-it-explains-itself</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/what-belongs-in-a-module-and-what-to-export</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/how-to-organize-code-within-a-single-file</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/how-to-avoid-circular-dependencies-between-modules</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/how-to-separate-business-logic-from-infrastructure-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/code-structure-and-organization/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/when-to-write-comments-and-when-to-delete-them</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/how-to-write-jsdoc-and-docstrings-that-developers-actually-r</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/how-to-write-a-readme-that-developers-immediately-understand</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/how-to-write-clear-todo-comments-without-creating-tech-debt-</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/inline-comments-vs-commit-messages-what-goes-where</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/comments-and-documentation-done-right/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/what-is-refactoring-and-what-it-is-not</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/replace-conditionals-with-early-returns-to-flatten-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/replace-magic-values-with-named-constants-and-enums</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/how-to-remove-duplicate-code-with-the-dry-principle</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/how-to-refactor-code-safely-using-small-steps-and-tests</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/refactoring-making-existing-code-readable/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/how-to-set-up-a-linter-to-enforce-clean-code-automatically</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/how-to-conduct-a-clean-code-review-that-actually-improves-co</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/how-to-balance-clean-code-with-deadlines-in-a-real-team</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/how-to-apply-clean-code-principles-in-typescript-specificall</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/how-to-create-a-team-clean-code-standard-document</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/writing-clean-code-naming-functions-structure/clean-code-in-real-projects/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/why-random-debugging-wastes-hours-and-how-to-stop</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/how-to-reproduce-a-bug-reliably-every-time</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/how-to-read-an-error-message-without-panicking</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/what-is-a-hypothesis-in-debugging-and-how-to-form-one</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/how-to-keep-a-debugging-log-that-actually-helps</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/the-debugging-mindset/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/how-to-trace-program-execution-mentally-step-by-step</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/how-boundary-conditions-cause-most-logic-bugs</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/how-to-spot-common-javascript-and-python-bug-patterns</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/how-to-do-a-code-review-to-find-bugs-before-running-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/how-to-use-git-blame-and-git-log-to-find-when-a-bug-was-intr</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/reading-code-to-find-bugs/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/how-breakpoints-work-and-when-to-use-them</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/step-over-step-into-step-out----when-to-use-each</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/how-to-inspect-variables-and-watch-expressions-in-a-debugger</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/how-to-debug-asynchronous-javascript-with-devtools</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/how-to-use-the-network-panel-to-debug-api-and-fetch-issues</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/using-debuggers-and-dev-tools/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/why-consolelog-debugging-fails-at-scale-and-what-replaces-it</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/where-to-place-logs-to-trace-a-bug-through-your-system</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/how-to-use-error-tracking-tools-like-sentry-to-catch-product</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/how-to-debug-performance-issues-using-timing-logs</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/how-to-write-a-log-query-to-diagnose-a-bug-from-log-output</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/strategic-logging-and-observability/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/how-to-write-a-failing-test-that-proves-a-bug-exists</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/how-to-write-regression-tests-so-bugs-never-come-back</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/how-to-use-binary-search-to-isolate-a-bug-in-a-large-codebas</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/how-property-based-testing-finds-bugs-you-never-thought-to-t</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/how-to-debug-flaky-tests----tests-that-pass-and-fail-randoml</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/testing-as-a-debugging-tool/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/how-to-debug-a-production-incident-without-taking-down-the-s</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/how-distributed-tracing-works-and-how-to-use-it-for-debuggin</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/how-to-use-feature-flags-to-safely-test-fixes-in-production</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/how-to-debug-memory-leaks-in-nodejs-applications</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/how-to-write-a-postmortem-that-prevents-the-bug-from-recurri</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/debugging-a-systematic-approach/debugging-in-production-and-distributed-systems/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/how-to-read-a-projects-folder-structure-without-getting-lost</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/what-packagejson-and-dependency-files-tell-you-about-a-proje</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/how-to-find-the-entry-point-of-any-application</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/how-to-use-git-log-and-git-blame-to-understand-code-history</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/how-to-run-an-unfamiliar-project-locally-in-under-10-minutes</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/first-contact-understanding-any-codebase-fast/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/how-to-read-a-function-without-running-it</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/how-to-trace-data-flow-through-a-function-call-chain</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/what-naming-conventions-tell-you-about-a-codebases-intent</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/how-to-read-and-understand-code-comments-and-documentation</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/how-to-annotate-unfamiliar-code-to-understand-it-faster</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/reading-code-you-didnt-write/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/how-to-use-grep-and-ide-search-to-find-code-fast</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/how-to-understand-module-architecture-from-import-statements</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/how-to-read-tests-to-understand-what-code-is-supposed-to-do</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/how-to-map-a-codebase-using-a-call-graph</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/how-to-read-a-design-pattern-you-didnt-write</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/navigating-large-codebases/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/how-to-read-an-error-message-and-find-where-the-bug-actually</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/how-to-use-consolelog-strategically-when-debugging-unfamilia</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/how-to-use-a-debugger-to-step-through-unfamiliar-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/how-to-form-and-test-a-hypothesis-when-debugging-unknown-cod</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/how-to-read-logs-and-identify-patterns-in-production-errors</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/debugging-code-youve-never-seen/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/how-to-assess-the-blast-radius-before-changing-any-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/how-to-match-the-coding-style-of-a-codebase-youre-contributi</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/how-to-write-tests-for-code-you-didnt-write</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/how-to-write-a-good-pull-request-description-for-unfamiliar-</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/how-to-refactor-code-you-didnt-write-without-breaking-it</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/contributing-to-an-existing-codebase/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.7</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/how-to-read-a-git-diff-without-getting-confused</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/what-to-actually-look-for-when-reviewing-someones-code</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/how-to-give-code-review-feedback-that-developers-actually-us</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/how-to-review-code-changes-that-touch-areas-you-dont-know</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/how-to-receive-and-apply-code-review-feedback-effectively</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reading-other-peoples-code/code-review-reading-others-changes/assessments</loc>
<lastmod>2026-06-13T13:52:33.235Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
