@aemvite - Migrate an AEM ui.frontend from Webpack to Vite
A from-scratch guide to @aemvite, an open-source npm toolchain that replaces webpack, Babel, PostCSS, ESLint, and aem-clientlib-generator in an AEM Maven archetype ui.frontend with Vite, esbuild, and Sass - with a byte-identical clientlib output guarantee.
Arrays
Learn JavaScript arrays - creating, accessing, mutating, iterating with map/filter/reduce, destructuring, and the spread operator.
Async/Await in JavaScript: Practical Patterns and Pitfalls
Learn async/await with TypeScript examples. Understand sequential vs parallel work, error handling, timeouts, and best practices.
Build a Simple Blog Page
A super-beginner, start-to-finish tutorial for building a simple blog page using only HTML, CSS, and vanilla JavaScript - with an optional section on adding Vite later.
Client Libraries
Client libraries (clientlibs) are AEM's mechanism for managing CSS and JavaScript delivery. They provide
Control Flow
Learn how to make decisions and repeat actions in JavaScript with if/else, switch, ternary operators, and loops.
Deploying to a VPS with Nginx
Deploy your website to a Virtual Private Server - server setup, SSH, nginx configuration, HTTPS with Let's Encrypt, and basic security hardening.
Error Handling
Handle errors gracefully in JavaScript - try/catch/finally, error types, custom errors, async error handling, and common patterns.
Events & Interactivity
Learn how to handle user interactions in JavaScript - event listeners, the event object, bubbling, delegation, forms, and keyboard/mouse events.
Functions
Learn JavaScript functions - declarations, expressions, arrow functions, parameters, scope, closures, and callbacks.
HTML & CSS Essentials
Learn enough HTML and CSS to build web pages - document structure, semantic elements, forms, CSS selectors, the box model, flexbox, and responsive design.
Introduction & Environment Setup
What JavaScript is, where it runs, how to set up your development environment, and writing your first program.
JavaScript Error Handling: Patterns, Types, and Best Practices
Learn practical JavaScript error handling with TypeScript examples. Cover try/catch, async errors, custom error types, and safe logging.
JavaScript Intl API: Currency, Date, and Number Formatting (TypeScript)
Learn currency formatting, date formatting, number formatting, list formatting, and more with the JavaScript Intl API. Practical TypeScript examples and best practices.
JavaScript Performance Basics: Measure, Optimize, and Scale
Practical JavaScript performance tips with TypeScript examples. Learn measurement, algorithmic complexity, caching, and avoiding common bottlenecks.
JSON Parsing in JavaScript: Safe Patterns and Practical Tips
Learn safe JSON parsing and serialization in JavaScript with TypeScript examples. Cover JSON.parse, JSON.stringify, revivers, validation, and common pitfalls.
LocalStorage and SessionStorage in JavaScript: Save, Load, and Remove Data
Learn how to store, load, update, and remove data using localStorage and sessionStorage. Includes JSON parse/stringify patterns and safe helpers.
Mocking in JavaScript & TypeScript
jest.fn(), jest.spyOn(), jest.mock() for modules, clearing and resetting mocks, mocking fetch and axios, and testing async code.
Objects
Learn JavaScript objects - literals, properties, methods, this, destructuring, spread, Object methods, and JSON.
Project: Build a Complete Website
Build a multi-page vanilla JavaScript website from scratch - navigation, theme toggle, form validation, dynamic content, and local storage.
Regular Expressions
Master JavaScript regular expressions - patterns, character classes, quantifiers, groups, lookaheads, and practical validation examples.
RSS Feed Generierung für Podcasts
Wie man eine RSS-Feed-XML-Datei für einen Podcast automatisch aus einer YAML-Konfigurationsdatei generiert - gebaut für den M10Z-Podcast mit Docusaurus und Node.js.
The DOM
Learn how JavaScript interacts with web pages through the DOM - selecting elements, modifying content, creating and removing elements, and traversing the tree.
TypeScript
TypeScript adds static types to JavaScript - learn type annotations, interfaces, generics, union types, and how to set up a TypeScript project.
Unit Testing in JavaScript & TypeScript
Setting up Jest and Vitest, writing describe/it/test blocks, using expect matchers, lifecycle hooks, and running your test suite.
User Input Sanitization in JavaScript: Practical and Safe Patterns
Learn how to sanitize and validate user input in JavaScript with TypeScript examples. Covers frontend and backend basics, XSS prevention, and safe outputs.
Variables, Types & Operators
Learn about JavaScript variables (let, const, var), primitive data types, type coercion, operators, and template literals.
Working with Data
Learn how to fetch data from APIs, handle JSON responses, use async/await, and store data with localStorage and sessionStorage.