Skip to content
Developer Codex
Integration

Attachments

Attachments let you embed files in your workspace pages — maps of the Verdant Undercity, PDFs of research notes, images of Thornwall Keep’s floor plan. Files are stored locally alongside your workspace database and can be referenced from any page.

Attachments can be added to a page in two ways:

  • Drag and drop a file onto the page editor
  • Paste an image from your clipboard directly into the editor

The file is processed, stored, and inserted into the page. You don’t need to manage file paths or folders — Inklings handles storage automatically.

The attachment system accepts these file types:

CategoryExtensions
ImagesPNG, JPG/JPEG, GIF, WebP, SVG
DocumentsPDF, DOCX, DOC
DataCSV

Files with unsupported extensions are rejected at upload time with a clear error message. No file is written to disk when a validation error occurs.

LimitValue
Per file10 MB
Maximum paste/bytes upload16 MB

Files exceeding these limits are rejected before storage. The error message indicates which limit was exceeded.

Inklings uses SHA-256 content hashing to deduplicate attachments. If you upload the same file twice — even with different filenames — only one copy is stored on disk. Both uploads return the same attachment ID. This keeps your workspace storage efficient as your world grows.

Open the Attachments panel from the sidebar footer to see all files uploaded to the workspace. The panel lists every attachment with its filename, file type, size, and upload date.

Attachments can also be filtered by page — only files referenced by a specific page appear when you view that page’s attachment list.

To delete an attachment:

  1. Open the Attachments panel or navigate to the attachment in question.
  2. Select the attachment and choose Delete.

Deletion removes both the metadata record and the on-disk file, including any cached image variants. If the attachment is still referenced by a page, the delete is blocked — remove the reference from the page first, then delete the attachment.

Every attachment includes:

FieldDescription
IDUnique UUID identifier
FilenameOriginal filename at upload
ExtensionFile type extension
Content typeMIME type
SizeFile size in bytes
Content hashSHA-256 hex digest (64 characters)
Created atUpload timestamp
Sync statuslocal_only until cloud sync is configured

Image attachments are stored in their original format and processed into display and thumbnail variants for rendering in the editor. These cached variants are cleaned up automatically when the original attachment is deleted.

Magic-byte validation applies to image uploads — if an uploaded file claims to be a PNG but contains JPEG data, the upload is rejected.

Was this page helpful?