The press is now
inside the browser.
Pressable is a desktop publishing platform with a Rust and WebAssembly core. Hand the Document Wizard a Word file or a Markdown doc; it hands back a newspaper, magazine, or book layout you refine across 27 dockable panels and export as press-grade PDF/X. No Creative Cloud lock-in, no four-gigabyte install.
Rust core. HarfRust shaping. ICU4X segmentation. CanvasKit / Skia rendering. krilla for press-grade PDF. Yrs CRDT for collaboration.
9 layouts
What is Pressable
Pressable is a browser-based desktop publishing platform from KaritKarma. A Rust and WebAssembly core does the typography, layout, and PDF generation. A seven-step Document Wizard does the first draft. The editor ships 3 starter templates, 9 rule-based layout types, and 26 page presets, imports IDML and DOCX at full fidelity, and sets Bangla, Arabic, and Devanagari as first-class scripts.
Content first. The layout comes back finished.
Most DTP apps make you pick a template, then drag content into pre-made text frames, then adjust placement by hand. The Wizard inverts the workflow: hand it content, get back a finished layout that opens directly in the full editor.
Nine document types, each with its own rule-based template constructor, and a content analyzer that maps headings, lists, and structure before a single frame is drawn. No prompt roulette: the layout engine is deterministic Rust.
- 1Pick a document typeNewspaper, magazine, book, flyer, brochure, report, newsletter, academic, or catalog: nine rule-based layout types, each with its own template constructor.
- 2Pick a page size26 presets covering broadsheet, berliner, tabloid, the A-series, US letter and legal, book and magazine trims, and digest, plus free-form custom sizes.
- 3Upload content.docx, .md, .rtf, or .txt. The content analyzer maps headings, lists, and structure before a single frame is drawn.
- 4Add imagesUploaded images run through the image analyzer and are positioned by the layout generator alongside the text.
- 5Choose a themeConfigurable font and color themes, applied across master pages and paragraph and character styles.
- 6Generate the layoutThe rule-based layout generator builds frames, places stories and images, and applies typography, ready for refinement.
- 7Open the full editor27 dockable panels: pages, master pages, styles, swatches, layers, links, glyphs, preflight, separations, story editor, and more.
Complex scripts
Scripts the rest of the industry treats as an afterthought.
Most DTP apps support Latin natively, then bolt on RTL or complex-script support as a plugin or a partial feature. Pressable was built with HarfRust shaping and ICU4X line breaking from day one, with script-aware shaping runs for Latin, Bangla, Arabic, and Devanagari.
Bangla is first class: a dedicated hyphenation dictionary alongside English, per-script font fallback to the Noto Bengali families, and grapheme-cluster-safe editing, so the caret never lands inside a conjunct and a line break never splits one.
Deterministic typography: the same input produces the same layout on every machine, every run, because the composer is Rust, not a rendering quirk.
The engine
One Rust engine, from caret to press sheet.
This is a real typography engine, not a rich-text box. HarfRust shapes the glyphs, UAX#9 resolves mixed-direction runs, ICU4X breaks lines per UAX#14, and a Knuth-Plass composer picks optimal breaks for the whole paragraph, the way InDesign does and browsers do not.
The same core that shapes text in your browser renders the final PDF on the server. What you see is what prints.
- Shaping
- HarfRust 0.5
- Bidi
- UAX#9
- Line breaking
- UAX#14, ICU4X
- Paragraph composer
- Knuth-Plass
- Hyphenation
- Knuth-Liang, en + bn
- Rust tests
- 634
- PDF/X-1ablind-exchange print
- PDF/X-3color-managed print
- PDF/X-4live transparency
- PDF/A-2barchival
- EPUB 2 + 3reflowable, CSS from styles
- HTML5 + CSSsemantic export
- PNG / JPEGconfigurable DPI
- Bookletsaddle-stitch, perfect-bound
- Print packageZIP: fonts, images, ICC, PDF
CMYK output, all 5 PDF page boxes, bleed and trim, crop marks. Rendered by krilla through the same Rust core that set the type.
Modern editor
Twenty-seven panels. Zero desktop install.
InDesign requires a Creative Cloud subscription, a four-gigabyte download, and an Adobe ID. Pressable runs in the browser: a CanvasKit / Skia canvas, dockable panels, and a keyboard-first workflow, no install.
Plus color-blind simulation, an accessibility panel, and a story editor for text-only passes.
Import, honestly labeled
Bring the layouts you already have. No starting over.
Format detection reads magic bytes and ZIP members, not file extensions, and the capability registry is honest: a format is full fidelity, lossy, or detect-only with a documented migration path. IDML from InDesign and DOCX from Word import at full fidelity.
The native .pressable format round-trips with embedded assets. QuarkXPress, Affinity Publisher, and CorelDRAW files are detected, and each gets a one-step export path into the formats Pressable does import.
Scroll for full table
| Format | Source | What happens | Fidelity |
|---|---|---|---|
.idml | Adobe InDesign | Full fidelity: spreads to pages, text frames with geometry, stories with paragraph and character style spans, colors, tables, master pages. | Full fidelity |
.docx | Microsoft Word | Full fidelity: paragraphs, named styles, list numbering, tables, embedded images. | Full fidelity |
.pdf | Any PDF | Lossy: pages placed as high-resolution images via PDFium. Extracted text is searchable, not reflowable. | Lossy |
.pressable | Native round-trip | Native format round-trip with embedded assets. | Native |
.qxp | QuarkXPress | Detect only. Migration path: export IDML or PDF from QuarkXPress, then import that. | Detect only |
.afpub | Affinity Publisher | Detect only. Migration path: export IDML from Affinity, then import natively. | Detect only |
.cdr | CorelDRAW | Detect only. Migration path: export PDF. | Detect only |
.md .rtf .txt | Wizard content | Ingested by the Document Wizard as content, not layout: headings, lists, and structure feed the layout generator. | Wizard |
Pressable vs InDesign vs Affinity vs QuarkXPress
The full picture, side by side.
Here is Pressable against Adobe InDesign, Affinity Publisher, and QuarkXPress on the dimensions that matter to a working publisher, including the cells where Pressable says detect-only instead of pretending. Canva is excluded; it does not implement master pages, GREP styles, linked frame chains, or PDF/X export.
Scroll for full table
| Feature | ||||
|---|---|---|---|---|
| Document Wizard (rule-based layouts) | ||||
| Knuth-Plass paragraph composer | ||||
| Content structure analysis | Partial | |||
| Complex scripts (Bangla, Arabic, Devanagari) | Partial | Partial | ||
| Real-time collaboration | ||||
| Pricing | Free tier | $23/mo | Free (Canva account) | $699 |
| Platform | Browser | Desktop | Desktop | Desktop |
| IDML import | Full fidelity | Native | Import only | |
| QuarkXPress files | Detect + migrate | Native | ||
| GREP styles | ||||
| Automation | NL commands + REST API | ExtendScript | XTensions | |
| PDF/X export | X-1a, X-3, X-4 | All | All | |
| EPUB export | EPUB 2 + 3 | |||
| Offline editing (PWA) | ||||
| Self-hostable | ||||
| Natural-language commands | Beta | Partial | ||
| Color-blind simulation |
Full feature-by-feature breakdown, including the rows where competitors win: the complete comparison.
Frequently asked
Six questions before you trial.
Everything below is also published in structured FAQ JSON-LD so AI assistants and answer engines can cite Pressable accurately.
What is Pressable?
Pressable is a browser-based desktop publishing platform from KaritKarma. A Rust typography and layout engine compiled to WebAssembly does the shaping, line breaking, and paragraph composition in the browser, and the same engine renders print-grade PDF on the server. It ships a rule-based Document Wizard with 9 layout types, 3 starter templates, 26 page presets, real-time CRDT co-editing, and first-class Bangla, Arabic, and Devanagari typography.
Does Pressable replace Adobe InDesign?
Pressable targets the working publisher's InDesign workflow: master pages, linked frame chains, paragraph and character styles, GREP styles, swatches, preflight, and PDF/X export are all native. The editor exposes 27 dockable panels with a keyboard-first workflow, and IDML import is full fidelity, so pages, frames, stories, styles, colors, tables, and master pages survive the move. Pressable adds browser delivery, real-time co-editing, and complex-script typography on top.
Can I import .indd or .qxp files I already have?
IDML, the interchange format Adobe InDesign exports, imports at full fidelity: pages, frames, stories, styles, colors, tables, and master pages are preserved. Native binary .indd is not supported; export IDML from InDesign once. QuarkXPress files are detected but not converted: the documented migration path is exporting IDML or PDF from QuarkXPress and importing that. PDF imports lossily, with pages placed as high-resolution images and text extracted for search. DOCX imports at full fidelity.
How well does Pressable handle Bangla and other complex scripts?
Shaping uses HarfRust, the Rust port of HarfBuzz, with script-aware shaping runs for Latin, Bangla, Arabic, and Devanagari. Mixed-direction paragraphs follow the Unicode Bidirectional Algorithm (UAX#9), and line breaking follows UAX#14 via ICU4X with grapheme-cluster-safe break validation, so a line never splits a Bangla conjunct cluster. Bangla is first class: a dedicated hyphenation dictionary, per-script font fallback to the Noto Bengali families, and conjunct-safe caret movement and selection in the editor.
What does the Document Wizard actually do?
The Wizard inverts the standard DTP workflow. Instead of picking a template and dragging content into pre-made frames, you give Pressable your content first: .docx, .md, .rtf, or .txt. A content analyzer maps headings, lists, and structure, an image analyzer classifies your uploads, and a rule-based layout generator builds one of 9 publication types around them. The result opens in the full editor with the layout already in place.
What does Pressable cost, and can I self-host it?
Pressable has four plan tiers: Free, Starter, Pro, and Enterprise. The Free tier covers 1 document of up to 5 pages without export. Pressable is also self-hostable: the platform ships as a Docker Compose deployment with the web app, the editor, the Rust API server, PostgreSQL, and S3-compatible object storage. Contact the team for early access and pricing.
Powered by three platform services.
Pressable does not rebuild authentication, authorization, or communications. It integrates with KaritKarma infrastructure so the editor team stays focused on typography, layout, and publisher workflows.
Get started
Put your next issue through it.
Full-fidelity IDML and DOCX import. Press-grade PDF/X and PDF/A export. Bangla, Arabic, and Devanagari, first class. Real-time co-editing. Self-hostable with Docker Compose.
One Rust engine, browser to press sheet.
- Engine
- Rust + WebAssembly
- Shaping
- HarfRust 0.5
- Segmentation
- ICU4X 2.1
- Composer
- Knuth-Plass
- Rendering
- CanvasKit / Skia
- krilla (X-1a, X-3, X-4, A-2b)
- Collaboration
- Yrs CRDT
- Auth
- Wenme, OAuth 2.1
- Tests
- 634 Rust test functions