Adobe Commerce Front-End Dev Expert study plan
Adobe Commerce Front-End Dev Expert · Give each week a clear focus.
8 weeks · About 6 hours per week
Theme development and layout
Map the full Magento layout file hierarchy (page layouts, page_layouts.xml, layout handles, and module layout overrides) and explain load order in your own notes
Trace how a layout handle is resolved for a given URL and record the resolution sequence step by step
Create a custom page layout XML and register it so it appears as an option for a CMS page
Build a child theme extending a parent theme and verify layout XML from the parent still applies
Your checkpoint
A one-page diagram plus written load-order notes showing the layout hierarchy and handle resolution, committed to a scratch Magento theme repo
Theme development and layout & Templates, blocks, and view models
Override a core layout block via a layout XML file without editing vendor code and confirm the override renders
Add, remove, and reorder container/block children using layout XML arguments and referenceBlock/referenceContainer
Convert a hard-coded template assignment into a block defined in layout XML with arguments passed through
Explain the difference between block types, container types, and template files in written notes
Your checkpoint
A theme with three documented layout overrides (one add, one remove, one reorder) each with a before/after screenshot and the XML diff
Templates, blocks, and view models
Write a custom block class with public getter methods and call them from its template
Build a view model (argument-based, no block inheritance) and inject it into a template via layout XML
Replace an existing block method call in a template with an equivalent view model call
Describe when to prefer a view model over a block and record the tradeoffs
Your checkpoint
A working view-model-backed template rendering dynamic data, plus a short written comparison of block vs. view model approaches
JavaScript and Knockout.js components
Define a custom UI component and register it in a module's ui_component XML so it renders on a front-end page
Write a Knockout.js component (JS, HTML template, and registration) and mount it on a page
Use observable, observableArray, and computed to drive a live-updating UI element
Trace the data flow from a UI component's data provider through Knockout to the rendered DOM
Your checkpoint
A custom Knockout component with at least one computed observable and one observableArray, plus a written data-flow trace
JavaScript and Knockout.js components & Checkout and cart customization
Extend the checkout/cart UI component via a mixin or JS layout override without modifying core files
Add a custom field to the cart or checkout step and persist its value through the quote
Explain how the checkout JS component registry and layout provider resolve components at runtime
Write a JS override that modifies cart item rendering and verify it survives a full page reload
Your checkpoint
A checkout/cart customization (custom field or item-render override) with a written explanation of the JS layout resolution path
CSS, LESS, and static asset management
Set up a child theme LESS file structure with variables and mixins and compile it via the standard front-end build
Override a core LESS variable and verify the compiled CSS output changes as expected
Explain the static asset deployment modes and how source maps and file merging are controlled
Demonstrate how CSS critical path and bundling settings affect the generated asset set
Your checkpoint
A themed LESS override with a documented variable change and a before/after compiled CSS comparison
Front-end performance and caching
Enable and verify full-page cache for a CMS and category page, then confirm a block is correctly hole-punched
Configure a private-content block and prove it bypasses full-page cache while the rest of the page is cached
Identify three front-end performance bottlenecks (render-blocking assets, unoptimized images, JS payload) and fix at least two
Explain cache invalidation triggers for layout, block, and full-page cache in written notes
Your checkpoint
A performance report showing cache hit behavior for a hole-punched block and measurable before/after improvements for two optimizations
Front-end performance and caching & Checkout and cart customization & Theme development and layout & Templates, blocks, and view models & JavaScript and Knockout.js components & CSS, LESS, and static asset management
Build a timed practice set spanning all six domains and score it against the domain weights
Re-implement the weakest two domain tasks from scratch without notes
Review every missed item and write a one-line root cause for each
Consolidate all prior deliverables into a single reference repo with a README index
Your checkpoint
A scored practice exam with a root-cause log and a consolidated reference repo indexed by domain
Milestones
Week 2: Can explain layout handle resolution and demonstrate three working layout overrides without touching vendor code
Week 4: Custom Knockout component renders and updates live from observables, and the data-flow trace is accurate
Week 6: LESS override compiles cleanly and the compiled CSS diff matches the intended variable change
Week 8: Practice score meets or exceeds 75% overall with no single domain below 60%