[{"data":1,"prerenderedAt":171},["ShallowReactive",2],{"page-\u002Fv1\u002Fcore\u002Fpure-php-psr-skeleton":3},{"id":4,"title":5,"body":6,"description":163,"extension":164,"meta":165,"navigation":166,"path":167,"seo":168,"stem":169,"__hash__":170},"content\u002Fv1\u002Fcore\u002Fpure-php-psr-skeleton.md","Pure PHP + PSR skeleton",{"type":7,"value":8,"toc":156},"minimark",[9,13,26,91,96,99,103,121,125],[10,11,5],"h1",{"id":12},"pure-php-psr-skeleton",[14,15,16,17,25],"p",{},"A minimal sample under ",[18,19,21],"a",{"href":20},"\u002Fsamples\u002Fpure-php-psr\u002FREADME.md",[22,23,24],"code",{},"samples\u002Fpure-php-psr\u002F"," shows how Core maps onto plain PHP with PSR-4 autoloading — no host framework required.",[27,28,29,40],"table",{},[30,31,32],"thead",{},[33,34,35,38],"tr",{},[36,37],"th",{},[36,39],{},[41,42,43,56,73],"tbody",{},[33,44,45,52],{},[46,47,48],"td",{},[49,50,51],"strong",{},"Location",[46,53,54],{},[22,55,24],{},[33,57,58,63],{},[46,59,60],{},[49,61,62],{},"Modules",[46,64,65,68,69,72],{},[22,66,67],{},"Ordering",", ",[22,70,71],{},"Warehouse"," (greenfield)",[33,74,75,80],{},[46,76,77],{},[49,78,79],{},"Includes",[46,81,82,83,86,87,90],{},"Port sketches, ",[22,84,85],{},"PlaceOrderUseCase",", Shared ",[22,88,89],{},"EventDispatcherInterface",", Composer PSR-4",[92,93,95],"h2",{"id":94},"why-this-sample-exists","Why this sample exists",[14,97,98],{},"Adapters explain host mapping. This skeleton proves Core can stand alone: composition root, ports, ACL-shaped availability check, and Entity persistence ports without an ORM.",[92,100,102],{"id":101},"what-it-is-not","What it is not",[104,105,106,110,113],"ul",{},[107,108,109],"li",{},"Not a full HTTP framework",[107,111,112],{},"Not a product catalog",[107,114,115,116,120],{},"Not a substitute for a ",[18,117,119],{"href":118},"\u002Fv1\u002Fadapters","host adapter"," when you ship on a framework",[92,122,124],{"id":123},"start-here","Start here",[126,127,128,136,145],"ol",{},[107,129,130,131],{},"Read ",[18,132,133],{"href":20},[22,134,135],{},"samples\u002Fpure-php-psr\u002FREADME.md",[107,137,138,139,141,142],{},"Open ",[22,140,85],{}," and ",[22,143,144],{},"WarehouseAvailabilityPortInterface",[107,146,147,148,141,152],{},"Compare with ",[18,149,151],{"href":150},"\u002Fv1\u002Fcore\u002Fcross-module-acl","Cross-module ACL",[18,153,155],{"href":154},"\u002Fv1\u002Fcore\u002Fuse-cases-and-dtos","Use cases & DTOs",{"title":157,"searchDepth":158,"depth":158,"links":159},"",2,[160,161,162],{"id":94,"depth":158,"text":95},{"id":101,"depth":158,"text":102},{"id":123,"depth":158,"text":124},"Framework-free Modular Hexagonal DDD folder skeleton with Ordering and Warehouse sketches.","md",{},true,"\u002Fv1\u002Fcore\u002Fpure-php-psr-skeleton",{"title":5,"description":163},"v1\u002Fcore\u002Fpure-php-psr-skeleton","PTMgCAU_It5UIQwXVMjvkaVUGypKLnhUJIwOotfixmE",1786241412882]