← Chat features

Canvas

Chat on one side. Ship the file on the other.

Canvas gives just4o.chat a real drafting surface. Open a blank file or an existing text document beside the conversation, review proposed hunks before they land, and save the result back into your library or project without breaking the thread.

Blank drafts open instantlyEditable text and Markdown files save in placePDF and document text opens read-onlyPending hunks can be accepted or rejected
Tighten this brief and keep the approved tone.
I opened the draft in canvas. I can revise section by section and show the hunks before anything sticks.
Keep the header, shorten the middle, and leave the CTA alone.
launch-brief.mdpricing-notes.txtmeeting-notes.pdf
1234567
# Spring launch brief
We are refreshing the homepage, pricing, docs, and feature copy.
Keep the language premium, specific, and true to the shipped product.
Do not bury model choice, scoped memory, or canvas behavior.
Use short paragraphs and remove generic SaaS filler.
Preserve the approved CTA language.
`just4o.chat` should sound deliberate, not overhyped.
3 pending hunksAuto-accept off
Header tightenedLines 1-2
Middle section shortenedLines 3-5
CTA left untouchedConfirmed
Review firstAccept all

What canvas actually does

Built for draft work that needs real control.

Canvas is strongest when a conversation needs to stay attached to an artifact. It is not trying to be a full IDE; it is giving chat a file-aware editing surface with the controls you actually need to move a draft forward.

Editable files

Canvas is a real file surface, not a mock document.

Plain text and Markdown files are editable in place, and blank drafts can be created directly inside the workspace and saved back into your file library or project.

Diff review

Model changes arrive as hunks you can inspect.

Canvas tracks pending hunks, lets you accept or reject them one by one or all at once, and keeps the draft attached to the same conversation.

Editor behavior

Undo, redo, rename, unsaved state, and auto-save are built in.

The file tab shows unsaved work, drafts can be renamed, accepted diffs can auto-save, and the editor keeps its own undo and redo stack.

Mobile included

Canvas still works when chat has to collapse.

On desktop it lives beside the thread; on mobile the app switches between chat and canvas tabs so the artifact stays part of the same workflow.

Format support

The product tells the truth about what opens where.

Canvas supports editable text files and extracted document text today. When a file is read-only, the interface marks it that way. When a file type is not supported, the app says so instead of faking an editor.

Text and Markdown

Text files and Markdown can be opened, edited, renamed, and saved back into storage.

Editable

PDF, DOC, DOCX, ODT, RTF

Documents open as extracted text with a read-only indicator so you can review and work from them inside the same surface.

Extracted text

Images

Canvas does not edit images yet. The app will tell you that directly instead of pretending otherwise.

Not yet

Workflow

How canvas keeps the work attached to the thread.

The core value is continuity: prompt, artifact, proposed edits, and saved result all belong to the same session instead of bouncing between separate tools.

  1. 1

    Open a blank draft or pull in an existing file.

    Canvas can start from a blank text file or from a file already sitting in your library, including project-scoped files.

  2. 2

    Keep the conversation attached while the artifact changes.

    The point is not a separate editor tab. Chat stays adjacent to the file so edits, questions, and output all belong to the same working session.

  3. 3

    Review proposed changes before they land.

    Pending hunks surface in the UI, and you can accept, reject, or accept all depending on how much control the pass requires.

  4. 4

    Save back into the library or the active project.

    Draft files link to a real file on first save, untitled files can be renamed, and existing files persist without leaving the canvas flow.

Open the file without leaving the conversation.

Start a draft in chat, pop it into canvas, and keep the editing pass tied to the same context that created it.