Browse the docs
Docs/Artifacts

Artifact types, app and markdown

Every artifact you create deliberately is one of two types, and the type decides what a person sees when they open it. Everything else lands as an asset.

Type Contains Renders as
app Files including an index.html A running web page
markdown One or more .md files A readable document you can edit
asset Anything else Stored and versioned, no preview

The hub's filter bar mirrors this: Apps, Docs, and Assets.

When to use each

Use app for anything that is better seen than read. If it can be built with HTML, it can be an app: a presentation or slide deck, a dashboard, a calculator, a quiz, a form, an itinerary, a planner, a portfolio, a landing page, a game, an interactive explainer.

Use markdown for anything to read: a report, a plan, a spec, notes, a summary. Markdown artifacts are editable in place in the rich editor, so they suit documents that keep changing.

The line between them is what the reader does. A meeting agenda is a doc. The same content as a deck you present from is an app.

Assets are not something you choose so much as everything else: images, spreadsheets, PDFs, datasets. Stored, versioned, readable by agents.

::: lanes

In the app

Choosing New Doc creates a markdown artifact. Upload File with anything unrenderable creates an asset.

For an app, ask your AI to push the project — Import from ZIP and Upload Folder are not working reliably yet.

Ask your AI assistant

Make this a readable document, not an app.

:::

FAQ

Can I change the type after creating? No. Create a new artifact of the right type.

Can a markdown artifact have several files? Yes. They become the artifact's repository. The app renders and edits the markdown; images referenced by relative paths render too when they are in the repository.

What about a PDF or a spreadsheet? An asset: stored, versioned, and readable by agents, with no preview.

My app opens as a blank page. It has no index.html. Ask your AI to push it again as an app, or as a doc if that is what it should be.