Getting started
Build an import map, then render the HTML tags needed by the browser.
<?php
require __DIR__.'/vendor/autoload.php';
use Alto\ImportMap\ImportMap;
use Alto\ImportMap\Renderer\HtmlRenderer;
$map = new ImportMap();
$map
->add('app', '/assets/app.js')
->add('vendor/', '/assets/vendor/');
echo (new HtmlRenderer())->render($map);The renderer produces an import-map script followed by preload links for top-level, non-null imports:
<script type="importmap">{"imports":{"app":"/assets/app.js","vendor/":"/assets/vendor/"}}</script>
<link rel="modulepreload" href="/assets/app.js">
<link rel="modulepreload" href="/assets/vendor/">
ImportMap is mutable: add(), addEntry(), and merge() update the current map and return it for chaining.
Next, define more complete maps, configure rendering, or resolve specifiers in PHP with the resolver.