<?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-07T20:28:50.051Z</lastmod>
<changefreq>weekly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses</loc>
<lastmod>2026-06-07T20:28:50.051Z</lastmod>
<changefreq>daily</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/javascript-the-complete-language</loc>
<lastmod>2026-06-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.230Z</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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/python-complete-language-course</loc>
<lastmod>2026-06-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/java-complete-language-course</loc>
<lastmod>2026-06-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/reactjs-complete-course</loc>
<lastmod>2026-06-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-middleware-works-in-nextjs-and-when-to-use-it</loc>
<lastmod>2026-06-07T20:28:50.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/assessments</loc>
<lastmod>2026-06-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/tailwind-css-complete-course</loc>
<lastmod>2026-06-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals</loc>
<lastmod>2026-06-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/web-performance-fundamentals/javascript-performance</loc>
<lastmod>2026-06-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.231Z</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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
<url>
<loc>https://scriptvalley.com/courses/nodejs-the-complete-runtime</loc>
<lastmod>2026-06-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.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-07T20:28:50.232Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.5</priority>
</url>
</urlset>
