postext.dev
Try the Postext typesetting engine live: edit markdown, manage figures and tables, tune Knuth-Plass justification, and export print-ready PDF and EPUB — in the browser.
First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com
Answer 8 · Act 48 · Transact 5 · Score: Not yet scored
Tool inspector
sandbox_save_book
Make a project — the reader's own book, kept in this browser — or tend the list of books: new_blank starts an empty book; copy_current keeps the book on screen as a new project (how a sample becomes the reader's own); duplicate copies a sample or a project without opening the original (a sample the reader edited is copied with their edits, unless from says original); rename changes a project's name or description (on a book in several languages the name is the book's in every language, unless thisLanguageOnly); add_language adds a language to a project: the edition on screen is copied into a new edition whose document language is the one in the language field, and that edition is opened, still in the old language's words until translated; set_cover gives a project a cover picture and remove_cover takes it away; hide_sample and show_sample take a sample off the list and put it back. A new book is opened at once.
Page: /en/sandbox
Input schema
| Property | Type | Required | Description |
|---|---|---|---|
action |
string | yes | — |
kind |
string | no | duplicate: what the id names. |
id |
string | no | duplicate, rename, hide_sample, show_sample: the book. add_language, set_cover, remove_cover: the project (the one on screen when left out). |
thisLanguageOnly |
boolean | no | rename a project in several languages: give the name and description to the language on screen only; the others keep the title they show. |
language |
string | no | add_language: the tag of the new language (en, es, fr, zh-Hant, ar…), one the book does not have. duplicate a sample: the language to copy. Left out, the one a click on the sample would open: the one on screen, else the interface language, else the language the reader last edited. |
from |
string | no | duplicate a sample: copy the reader's edited version in that language (edited; refused when there is none) or the sample as it ships (original). Left out, the edited version when there is one, as the Books panel does. |
name |
string | no | new_blank, copy_current, rename: the name. |
description |
string | no | rename: the description (empty clears it). |
file |
object | no | set_cover: the picture (PNG, JPEG, WebP, GIF or SVG): where to fetch it (url) or its bytes (base64). |
Raw JSON schema
{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"new_blank",
"copy_current",
"duplicate",
"rename",
"add_language",
"set_cover",
"remove_cover",
"hide_sample",
"show_sample"
]
},
"kind": {
"type": "string",
"enum": [
"sample",
"project"
],
"description": "duplicate: what the id names."
},
"id": {
"type": "string",
"description": "duplicate, rename, hide_sample, show_sample: the book. add_language, set_cover, remove_cover: the project (the one on screen when left out)."
},
"thisLanguageOnly": {
"type": "boolean",
"description": "rename a project in several languages: give the name and description to the language on screen only; the others keep the title they show."
},
"language": {
"type": "string",
"description": "add_language: the tag of the new language (en, es, fr, zh-Hant, ar…), one the book does not have. duplicate a sample: the language to copy. Left out, the one a click on the sample would open: the one on screen, else the interface language, else the language the reader last edited."
},
"from": {
"type": "string",
"enum": [
"edited",
"original"
],
"description": "duplicate a sample: copy the reader's edited version in that language (edited; refused when there is none) or the sample as it ships (original). Left out, the edited version when there is one, as the Books panel does."
},
"name": {
"type": "string",
"description": "new_blank, copy_current, rename: the name."
},
"description": {
"type": "string",
"description": "rename: the description (empty clears it)."
},
"file": {
"type": "object",
"description": "set_cover: the picture (PNG, JPEG, WebP, GIF or SVG): where to fetch it (url) or its bytes (base64).",
"properties": {
"url": {
"type": "string",
"description": "An http(s) or data: URL the page can fetch."
},
"base64": {
"type": "string",
"description": "The bytes, base64-encoded."
},
"mimeType": {
"type": "string",
"description": "Its media type. Read from the response or the file name when left out."
},
"fileName": {
"type": "string",
"description": "Its file name, with its extension."
}
},
"additionalProperties": false
}
},
"required": [
"action"
],
"additionalProperties": false
}
Similar websites
morphus.myles4miles.chatgpt.site
Morphus is an AI-native workspace for designing worlds and generating playable game experiences.
damnpdfs.com
Install the DamnPDFs Codex plugin, pair a browser workspace and use PDF, image and file tools from your coding agent. Includes setup and privacy limits.
insignifi4nt.github.io
broCAD/M: local-first CAD and CAM for parametric design, wire EDM planning, simulation and controller export.
cabinet.varera.studio
The Cartographer's Cabinet