mmurl://

Playground

Build a destination.

Paste the things that make up one piece of work — a repository, its docs, a dashboard, the folder on your disk, a terminal in it — and get back a manifest that murl-core itself validates, compiled to WebAssembly and running in this tab.

loading murl-core…
Resources
Load example

A URL, an absolute or ~ path, or a kind first: terminal ~/projects/x

Output
One mURL fanning out to each resource
resolution · one name, every resource safe sensitive dangerous

Paste a URL or a path on the left — one per line.

Kinds and risk tiers come from murl-core, not from this page.

Validated against format v0.2 before it is shown. file destination.murl.json

json

Field order is the canonical one: the same bytes murl validate and murl sign see.

Local identity murl://local/destination
1

Install it on this machine

Save the manifest file from the Manifest tab, then:

bash
2

Publish it optional — for other people

Static hosting is the whole server side of mURL. No registry, no account.

bash

Why the extra step: an mURL is a name, not a container. It does not carry your resources — it points at a manifest that lists them. So this page gives you the manifest, plus the one command that makes murl://local/<name> resolve on your machine, and the path to host it at if you want the name to work for other people too. Anything that promised a single self-contained link would be promising something the format deliberately does not do.

Rejections

Why some lines turn red

The rules rejecting them are the same ones that protect a click on a murl:// link from a stranger, so the playground applies them rather than being lenient and letting you find out later.

Plain http:// is refused

Except for loopback hosts. A manifest — and everything it points at on the web — is fetched over TLS or not at all.

Relative paths and .. are refused

There is no answer to “relative to what?” that survives an OS handler. Paths are absolute or start with ~.

Userinfo in a URL is refused

https://github.com@evil.example is a phishing shape, not an address. The host you read must be the host you get.

Executable-adjacent files are dangerous

A .sh, .exe or .desktop file is not sensitive: opening it is running it, so it is classed with terminals.

Nothing you type leaves your browser. The page fetches one .wasm file and does the rest locally — there is no server to send a manifest to, which is also true of mURL itself.