# Twine story hosting

Publish your Twine story online: drop the exported HTML file, get a link to share and keep it free. Add images, audio or your own domain when you need them.

On the web at https://lobsite.com/hosting/twine

```sh
npx lobsite ./story
```

Put the published HTML in story/index.html with any images and audio, then run this from the folder above it.

Put your Twine story online so readers can open it from a link. Publish the story to an HTML file, drop it above and get an HTTPS address in seconds. No terminal or account is needed to try it, and keeping the story in a free account removes the initial expiry.

## How it works

1. **Publish the story to a file.** In Twine, use **Publish to File** to create the playable HTML. This is the story readers open, rather than a Twee source file or an editor backup.
2. **Drop the HTML above.** For a story with external images or audio, collect the HTML as `index.html` with its media in a folder and upload the whole folder or ZIP. The first link lasts 6 hours.
3. **Keep your story's link.** Choose **Keep it free →** to move it into a free account. Publish later revisions to that same site so readers don't need a new address.

## One story file, or a folder with media

A text-only Twine story can be one HTML file. Lobsite makes a single uploaded HTML file open at the site's root address. For a media-rich story, give it a folder like this:

```text
story/
  index.html
  images/
    hallway.webp
  audio/
    rain.ogg
```

Reference the image as `images/hallway.webp`, with the exact spelling and case. A path on your own computer won't work for a reader. If files live on another host, use HTTPS URLs. See [Twine's publishing guide](https://twinery.org/reference/en/publishing/publishing.html) for its HTML publishing workflow.

## Story formats and reader saves

Lobsite serves the HTML that Twine generates, including the story format's scripts and your styles. It doesn't convert passages or change the story's format. Test the finished story with the format and browsers your readers use.

Where a story format uses browser storage for progress, saves belong to that browser and origin. A preview URL or a move to a custom domain can have a separate set of saves. Keeping the same live address helps returning readers, but a story revision can still affect old saves depending on its format and your changes.

## Share a draft with readers

For a separate test version, put the story in a folder and deploy it with `npx lobsite ./story --preview` after claiming the site. Your live story stays as it is while readers check the new draft. On Standard, a site password protects both live and preview addresses.

Free allows 5 MB per file, 50 MB total, 100 files and 10 GB of bandwidth a month. Embedded audio can make a single HTML file surprisingly large. The drop box accepts up to 25 MB per upload; the [HTML5 hosting guide](https://lobsite.com/hosting/html5-games#limits) explains larger uploads and Standard's limits. Free also adds a small badge to the bottom-right corner of the page.

## Ways to share a Twine story

| Method | Reader experience | When it helps |
|---|---|---|
| A Lobsite story URL | Open a link and start reading | Publishing and updating a story online |
| An HTML download | Download and open the story file | Distributing an offline copy with suitable assets |
| A Twee source file | Import or compile it with authoring tools | Sharing editable source with another author |

For other single-file projects, see [HTML file hosting](https://lobsite.com/host-html). For games made in an engine, start with [HTML5 game hosting](https://lobsite.com/hosting/html5-games).

## Frequently asked questions

### Do I need to write code to host a Twine story?

No. Use Publish to File in Twine and drop the resulting HTML above. If the story uses separate media files, upload them together in a folder.

### Can I publish a .twee file directly on Lobsite?

It can be stored as a file, but it won't become a playable story. Compile or publish it to HTML with the appropriate authoring tools first.

### Why are the images missing from my published Twine story?

Check that you uploaded the media with the HTML, that paths are relative to the story and that file names match exactly. Paths to files on your computer won't work online.

### Will updating my Twine story preserve every reader's save?

That depends on the story format and your changes. Keeping the same origin avoids moving readers to separate browser storage, but test existing saves before publishing a major revision.

