Book Image

Mastering Adobe Commerce Frontend

By : Jakub Winkler
Book Image

Mastering Adobe Commerce Frontend

By: Jakub Winkler

Overview of this book

Navigating the frontend realm of the Adobe Commerce platform can often feel like a labyrinth, given its multifaceted systems and intricate layering. This book demystifies Adobe Commerce frontend development, guiding you through its paths with clarity and precision. You'll learn how to set up your local environment, paving the way for a smooth development experience and navigate the platform's theming ecosystem, exploring layout XML systems and the power of templates. As you progress through the book, you'll leverage an array of JavaScript libraries and frameworks that Adobe Commerce boasts of, with special emphasis on RequireJS, jQuery, Knockout.JS, and UI Components. Additionally, you'll gain an understanding of the intricacies of Adobe Commerce CMS, explore frontend-related configurations in the admin panel, and unlock the secrets of frontend optimization. Practical exercises provided in the book will enable you to create top-notch Adobe Commerce sites that are functional, optimized, user-centric, and a step ahead in the ever-evolving frontend landscape.
Table of Contents (18 chapters)

The location of JavaScript resources

Understanding the structure and location of JavaScript resources within Adobe Commerce is crucial for developers aiming to customize and enhance their eCommerce platforms. Here are the key paths within the root folder of your project where our resources can be found:

  • lib/web: This directory holds the AC core web libraries, including jQuery, Knockout JS, and RequireJS, among others. It’s a crucial resource for common libraries used across the platform.
  • <module_dir>/view/<areaname>/web: This is a module-related directory that stores all required resources, including JavaScript files. JavaScript files should always be placed in a js folder inside the web directory. <module_dir> is the location of the module within your project, and <area_name> can be frontend (for frontend themes) or adminhtml (for Admin panel themes).
  • <theme_dir>/<VendorName>_<ModuleName>/web: This theme-related module...