Mounted at the package's mount path by
DemoDirector.Router.demo_director/1. Routes:
GET demo_director.css/GET demo_director.js— static assets, served frompriv/static/.GET demos— HTML listing of saved demos with a Play button per row (delegates toDemoDirector.Plug.Index).GET demos/<name>.js— JSON wrapper around a demo's emitted JS, used by the listing page's Play buttons.POST play— broadcasts the request body as a playback JS payload (delegates toDemoDirector.Plug.Play).
Anything else returns 404.