File format
The .cora package
A Cora project is saved as a .cora file. It is not a binary file — it is a macOS file package (a folder that Finder shows as a single file). You can right-click it in Finder and choose Show Package Contents to see what’s inside.
Everything is either plain text (.txt) or JSON (.json). There are no proprietary formats, no compression, and no encryption.
Package structure
MyNovel.cora/
├── meta.json
├── characters.json
├── places.json
└── parts/
└── {part-uuid}/
├── meta.json
└── chapters/
└── {chapter-uuid}/
├── meta.json
├── scenes/
│ └── {scene-uuid}.txt
├── drafts/
│ └── {draft-uuid}.txt
└── notes/
└── {note-uuid}.txt
Top-level files
meta.json
Stores the project title, format version, and the ordered list of Part UUIDs:
{
"version": 1,
"title": "My Novel",
"partsOrder": ["uuid-1", "uuid-2"]
}
characters.json
An array of character records used across the project’s scene metadata.
places.json
An array of place records used across the project’s scene metadata.
Part folder
Each Part is a folder named by its UUID under parts/.
Its meta.json stores the part title and the ordered list of Chapter UUIDs.
Chapter folder
Each Chapter is a folder named by its UUID under its Part’s chapters/ directory.
Its meta.json stores the chapter title and arrays for scenes, drafts, and notes — including scene metadata (title, synopsis, character IDs, place IDs):
{
"title": "Chapter One",
"scenes": [
{
"id": "uuid",
"title": "The station",
"desc": "Anna arrives at the station in the rain.",
"characterIDs": ["char-uuid"],
"placeIDs": ["place-uuid"]
}
],
"drafts": [ ... ],
"notes": [ ... ]
}
Text files
Scene, draft, and note text are each stored in their own .txt file, named by UUID. The text is plain UTF-8. There is no additional encoding or escaping.
Why this format
- Plain text — your writing is never locked in a proprietary format
- Readable without Cora — open any
.txtfile in any text editor - iCloud-friendly — separate files for each piece of content means iCloud only syncs the file that changed, not the entire novel
- Version-control friendly — the package can be tracked with Git; each scene is a diff-able text file
Backups
Because .cora is a regular file package, it works with all standard macOS backup methods: Time Machine, iCloud Drive version history, and any cloud sync service that supports files.
Cora also keeps up to 20 recent, local-only recoverable versions while you work. Choose File → Browse Recoverable Versions… to restore one. These copies are a short-term safety net, not a replacement for Time Machine or another independent backup.