Host a site and content from this browser
Claim a name and your site will be reachable at .
Your files stay in this browser. The FMRL server only records your name.
By claiming a name you agree to the terms of use.
Restore an existing name with its host token
Move a site here from a backup
Choose a backup .zip downloaded from the studio with its host token included.
Unlisted sites stay out of the directory but still work for anyone who has the address.
Live
Off air
While you're on air, the directory shows your site as live and links to ,
a player page every FMRL site has, whatever its own pages contain. Visitors also see the stream on any page with a live
player: the content listing and the starter site have one. To add one to your own pages, include <script src="/_fmrl/live.js"></script> and put
<fmrl-live></fmrl-live> where the video should go. Each viewer gets their own copy
straight from this browser, roughly 1 to 2.5 Mbps each, so your upload speed limits how many people can watch.
My hosted site
Your website, served at . The index.html at the
top is its entry point; folders serve their own index.html, and a top-level 404.html
is shown for missing pages. Links like /css/style.css work as usual. Uploading a folder that has an
index.html to the top adds what's inside it. /_fmrl/ and /shared/ are
reserved.
Cookies: every FMRL site shares the parent domain, and browsers let one site set cookies
that the others receive. Don't use cookies on your site for sign-ins or anything private. Browser storage
such as localStorage is not affected; it stays separate for each site.
There's no index.html at the top yet, so your site's front page shows your shared content.
| Name | Type | Size |
|---|
No files yet.
Backend
Experimental
Answer requests to /api/… on your site with your own code instead of files, like a small web
server running in this tab. Put a _worker.js at the top of My hosted site that exports
default { async fetch(request, env) { … } } and returns a Response.
env.store keeps JSON values in this browser with get(key), put(key, value),
delete(key) and list(prefix), and backups include it.
It runs in a separate worker on your site's own address, so it can't see your host token or files. Each
request gets 30 seconds. While it runs, _worker.js is hidden from visitors and files under
/api/ aren't served. This feature is new: it may change, and it may have rough edges.
Backend log
Output from console.log() in your backend shows up here.
Recent requests
| Time | Method | Path | Status | ms | Sent |
|---|
Backup
Download everything as a .zip, with your hosted site in site/ and shared content in
shared/. Import it in any browser to restore or move your site; that replaces both sections.
You can also import a plain .zip of a website folder, which replaces only My hosted site.
Identity
Your host token proves you own this name. Save it to move your site to another browser. Anyone with it can serve content under your name.
Delete
Delete this site removes it from FMRL: it leaves the directory, the name becomes free for anyone to claim, and its files are removed from this browser. Download a backup first if you might want it back. Remove from this browser only is for after you've moved the site to another browser: the site and its name stay as they are.