By · Founder, Stacktree · Last updated
slack app

The HTML file in your Slack thread, openable.

Slack renders HTML files as code blocks nobody can read. One click on the message turns the file into a private link, posted back into the conversation. No account, no dashboard, no copy-pasting.

Add to Slack

How do you open an HTML file someone posted in Slack?

You host it. Slack shows uploaded HTML as a code preview, not a rendered page. The Stacktree Slack app adds a message shortcut: click ⋮ → Host on Stacktree on any message carrying an .html or .md file, and it publishes to a private, unguessable URL and replies with the link, visible to everyone in the conversation. Installing takes one OAuth approval and no Stacktree account: the workspace gets its own free identity automatically.

The moment this exists for

A colleague asks for the architecture diagram. You have it as a self-contained HTML file, because that is what your agent produced, so you drag it into Slack, and Slack displays line 1 through 5 of the markup with syntax highlighting. Nobody is reading a diagram out of a code block. The information is right there and completely unreadable.

We built this app after being caught by exactly that moment ourselves, in our own Slack, by a colleague who knew what we build. The lesson we took: the file-into-Slack reflex is unbeatable, so stop fighting it. Drop the file the way you always do; the shortcut makes the drop the publish.

How it works

  • Install once. One OAuth approval. The workspace gets its own free Stacktree identity at that moment, so there is no signup, no API key, no configuration. Anyone in the workspace can use the shortcut immediately.
  • ⋮ → Host on Stacktree. On any message with an HTML or Markdown file, in any channel or DM. The bot needs no invite, because it is a shortcut, not a member.
  • The link comes back into the conversation. Private, unguessable, viewable with no account. The person who asked clicks it and sees the rendered page, not the markup.
  • Outgrow it, then link. When the workspace's free 5 sites are used, the reply itself offers to link a Stacktree account, which migrates the workspace's existing sites into your dashboard and applies your plan's limits. Friction arrives after value, not before.

What it deliberately does not do

No event subscriptions, no channel presence, no passive scanning of files or messages. The app acts only when a person runs the shortcut on a specific message, and touches only that message's files. Hosted pages carry a strict Content-Security-Policy, are excluded from search indexing, and can be gated further (password, email-domain verification, expiry) from the dashboard. The privacy bar for putting something at a URL should be higher than for a file in a channel, and here it is.

FAQ

Frequent questions

How do I share an HTML file in Slack so people can actually open it? +
Slack renders uploaded HTML as a syntax-highlighted code block, not a page, so nobody can view it. With the Stacktree app installed, click the three-dot menu on the message and pick Host on Stacktree: the file is published to a private, unguessable URL and the link is posted back into the conversation. Viewers open it in a browser with no account or login.
Does the app read my messages or files? +
No. It is a message shortcut, not a listener: it has no event subscriptions, is never present in your channels, and only acts when someone explicitly runs Host on Stacktree on a specific message. It then reads only that message's attached HTML or Markdown file. The click is the consent.
Do I need a Stacktree account to use it? +
No. Installing the app gives the workspace its own free Stacktree identity automatically, with the free tier's limits (5 active sites, 25 MB each). Linking a Stacktree account later is optional: it moves the workspace's sites into your dashboard and applies your plan's limits.
Does it work in DMs? +
Yes. Message shortcuts work in direct messages and in channels the bot has never been invited to. One current caveat: for files in DMs, the download runs with the installing user's permissions, so if someone else runs the shortcut on a DM the installer cannot see, the reply explains who should run it instead.
How private is the hosted link? +
The URL is unguessable and acts as the credential: no directory listing, no search indexing, and a strict Content-Security-Policy on every served page. From the dashboard you can add a password, an email-domain gate (viewers verify a work address by magic link), or expiry. Compared to the file sitting in Slack, the hosted copy is both readable and more access-controlled.
What file types does it handle? +
HTML (.html, .htm) and Markdown (.md, rendered to a styled page). Up to three files per message. Anything else on the message is ignored.
Keep reading

Related guides

References

Sources and further reading

Stop screenshotting HTML into Slack.

Install once, no account needed. The next HTML file anyone drops is one click from a private, openable link.

Sign up free →