We made a folder called card, put card.html inside it, and a Card appeared on the page. Nobody told AEM where that file was.
We made a node called cq:dialog in the same folder. We clicked Configure and it opened. We never connected the two.
Our page component had no page.html at all. Two small files — and every page still rendered a full HTML document.
Sling takes the path and finds a node in the repository. That node is the resource.
one ruleNow a different question: which file renders this node? Resource types, super types, selectors, search paths.
several rules — this is where people get stuck.content.xml sling:resourceSuperType = core/wcm/components/page/v3/page customheaderlibs.html injected into <head> customfooterlibs.html injected before </body> // that's the whole component. There is no page.html.
How CSS and JavaScript actually reach an AEM page. Categories, dependencies, embedding — and why the URL has that long hash in it.