Appearance
Front matter
Front matter is the block of key: value lines between two --- lines at the top of a Markdown note. Obsidian calls it properties. Leathercase reads it where it exists and never requires it: a note with no front matter is a note, and a story with no front matter anywhere works. Leathercase also never writes front matter into your notes; when you change a setting in the app, it goes into Leathercase's own files.
This page lists every key Leathercase reads, what it does, and how Leathercase differs from the Creative Writer plugin and the Creative Templates, which use the same keys.
markdown
---
type: character
aliases: [Nora]
pronouns: she/her
color: "#1f5f7a"
accent: [tower, lamp, watch]
accent-never: [salvage]
---
# Nora Vidal
**Role.** Protagonist. The keeper's daughter...The front matter of Characters/Nora Vidal.md in The Lamp at Ferrol, with a pronouns: line added.
How Leathercase reads the block
- Where. Only at the very top of the note, between a
---line and the next---line. A note that opens with---as a scene break followed by prose has no front matter. - Values. Plain words and numbers (
writing-target: 60000),trueandfalse, quoted strings ("2026-12-31"), inline lists ([Nora, the keeper's girl]) and lists with one- itemper line. Nested maps are kept as text and ignored. - Comments. A
# commentafter a quoted string or an inline list is dropped. A plain value keeps its#, sotitle: Chapter #3reads as written. Quote values that hold a#, such as a colour, so Obsidian and other apps read them the same way. - Case. Write keys in lower case, as this page shows them; only the pronoun and gender keys are matched in any case. The values of
type:and the folder names are read in any case. - Word files and Scrivener texts have no front matter. Type them by their folder, or say what a folder holds when you declare the story. A Fountain script's title page (
Title:,Credit:,Author:) is read as its properties.
The story's note
A story may have one note that is about the story rather than a scene of it: the project note the Obsidian plugin used, such as The Lamp at Ferrol.md. A note is the story's note when its front matter says story: true or carries a writing-target above 0. It is never read as a scene; How this story is read lists it under Notes left out as "the story's note, read for its settings".
When you declare the story, Leathercase takes its name and settings from this note, so nothing is typed twice. From then on they live in Story settings and in the story's Story.json, and the note is no longer consulted for them: change them in the app. Leathercase never writes them back into the note.
markdown
---
story: true
writing-target: 60000
writing-daily: 500
writing-deadline: "2026-12-31"
writing-days: weekdays
dialogue: double
thoughts: italic-paragraph
speakers: ["Nora Vidal #1f5f7a", "Inés Roca #3e7a56", "Bastian Kell #b23a3a"]
plot-pov: POV
plot-time: Time
plot-theme: "Theme: What do we owe the drowned?"
story-ignore: [Michaelmas, Pai]
---| Key | Values | Becomes, in Story settings |
|---|---|---|
story | true | Marks the story's note. Means nothing else. |
writing-name | text | The story's name, suggested when you declare it |
writing-target | words, 60000 | The target. Also marks the note as the story's note. |
writing-deadline | "YYYY-MM-DD" | The deadline |
writing-daily (or writing-goal) | words a day | The daily goal |
writing-days | [mon, tue, wed], weekdays, weekends or daily | The days you write on; the pace counts only these |
story-ignore | list | Capitalised words the Graph must not take for names |
plot-pov | a heading of the threads note | The plot grid's POV column |
plot-time | a heading of the threads note | The plot grid's Time column |
plot-theme | a heading of the threads note | The main theme, drawn by the gauge |
plot-beats | a heading of the threads note | The plot point column |
plot-order | list of headings | The grid's block order, left to right |
dialogue | double, single, dash (or travessão), none | How speech is marked, for the dialogue lens |
thoughts | italic-paragraph, italic-any, single-quotes, none, or a pattern of your own | How thought is marked |
speakers | list, each name with an optional colour: "Nora Vidal #1f5f7a" | The cast the dialogue lens attributes speech to, in order; a colour given here is the one the accents lens marks that character's words in |
See Story settings for each setting as the app shows it.
The Writer Board's story card
The Writer Board reads four keys from any note of a story, the story's note included, every time it draws the story's card. They are never copied into Story settings.
| Key | Values | Shows |
|---|---|---|
writing-stage | development, drafting, revising, finished, shelved | Where the story is. Without it, the card says drafting once there is prose, finished once the target is met, and development before either. idea is the state of a card with no story and cannot be written here. |
writing-premise | one sentence | The story question, on the card |
writing-idea | "[[Idea note]]" | The premise card the story grew from |
writing-voice | "[[Voice note]]" | The narrator voice the story adopts |
Any note
| Key | Values | Effect |
|---|---|---|
creative-writer | false (or no, off) | Leaves the note out of every view: the Graph, the grid, the threads, the manuscript and the word count. How this story is read lists it as "its properties say creative-writer: false". Kept from the Obsidian plugin, so a note you excluded there stays excluded. |
manuscript | true or false (or yes, no) | false keeps the note off the manuscript page and out of an export; true puts a note on it that would otherwise stay off, such as a typed note |
story-order | a number | Orders notes in the manuscript and the story: notes with a number come first, by number; the rest follow by path, numbers in names read as numbers, so Chapter 2 comes before Chapter 10 |
tags (or tag) | a list, or words separated by commas or spaces | The note's tags, with or without #, for the Tags view. Inline #tags in the text count too, outside code. |
type (or kind, entity) | a word: see below | What the note is |
Any key that starts with creative-writer- marks a note the Obsidian plugin wrote for itself (its story map, writing log, grid snapshots); such a note is left out like one with creative-writer: false.
type: what a note is
A note's type: says what it is, and wins over the folder it sits in. Without one, the nearest folder says, then what you said a folder holds when you declared the story. A type: the story does not know never makes a note prose: it waits as unsorted, and Leathercase asks you about it once for every note that says the same word. See How a story is read.
| Kind | type: words read in English |
|---|---|
| Character | character, person, people, npc, protagonist, antagonist |
| Place | location, place, setting, world, region, city |
| Item | item, object, artifact, artefact |
| Faction | faction, organisation, organization, house, group |
| Event | event |
| Prose | scene, chapter, prose, manuscript |
| Plan | outline, synopsis, plan, premise, thesis, logline, treatment, beats, beat sheet |
| Record | chronology, style sheet, stylesheet, reverse outline, continuity |
| Work note | journal, diary, feedback, critique, revision, todo, to-do |
| Research | research, source, clipping |
| Scrap | cut, scrap, outtake, deleted |
| A kind of the story's own | its name, or a word you told Leathercase it goes by |
The same words are read in Portuguese, Spanish, French, German and Italian: personagem, lugar, facção, evento, cena, capítulo, sinopse, pesquisa; personaje, ubicación; personnage, lieu, événement; Figur, Ort, Ereignis; personaggio, luogo, and the rest. See Languages.
A typed note is part of the cast or the world and is never read as a scene.
Characters and other typed notes
| Key | Values | Effect |
|---|---|---|
aliases (or alias) | a list, or one name | Other names the prose uses for this character or place: aliases: [Nora] lets "Nora" find Nora Vidal. The note's file name is always its name. |
name | text | One more other name |
pronouns (or pronoun) | she/her, he/him | The character's pronoun, so Leathercase reads "she" and "he" back to them. they, or anything else, is read as saying nothing, and Leathercase goes by a title in the name ("Father Amaro") and by the prose. |
gender (or sex) | female, f, woman, male, m, man | The same, said another way, when there is no pronouns: |
color (or colour) | "#1f5f7a", six hex digits | The character's colour: the accents lens marks this character's words in it. The dialogue lens does not colour lines by speaker; it tints speech and thought and names the speaker in the side column. See Lenses and style checks |
accent | a list, or words separated by commas | Words this character uses; the accents lens marks them in their speech |
accent-never | a list, or words separated by commas | Words this character never says; marked as slips |
The pronoun and gender keys are read in the six languages Leathercase recognises in your files: pronomes: ela/dela, gênero: feminino, pronombres, pronoms, Pronomen, Geschlecht: männlich, pronomi. A pronoun you set in the Graph wins over the note.
Other names and pronouns you confirm in the Graph, and accents you add in the app, are kept in Story settings and in Leathercase's Accents.md. They are never written into your note.
Notes Leathercase writes
Leathercase's own Markdown files carry front matter of their own. You can read and change it; these keys are Leathercase's.
| Key | Where | Meaning |
|---|---|---|
leathercase | Suite.md and every note Leathercase starts | What the file is: home, plot-grid, story-threads, comments, relationships, ties, graph tab, graph template, facts, accents, template. Notes written before 0.30 say creative-suite instead; Leathercase still reads them, and a home's Suite.md takes the new key the next time its list of stories is rewritten |
id | Suite.md | The home's id |
story | PlotGrid.md, StoryThreads.md, Comments.md, Relationships.md, Graph/Ties.md, Accents.md | The story the file belongs to, by name |
tags | Writer cards, beat cards | A card's list on the Writer Board, as writer/<list> (writer/idea, writer/theme), and the tags you gave it |
kind | Writer cards | The card's kind: idea, premise, theme, character, place, event, reference |
created | Writer cards, beat cards, notes Leathercase made | The day it was made, 2026-09-29 |
reading | Writer cards in a reading list | to-read, reading or read |
writer-story | an idea card that became a story | "[[Story note]]": the story it grew into |
beat | beat cards | The beat the card sits in, such as beat: Midpoint; none for a loose card |
outline | beat cards | A link to the scene the card became on the grid |
type | notes Leathercase made | character, place, event or note |
plot-time, plot-pov, plot-theme, plot-beats | grid templates | The columns the template fills those jobs with |
A note of yours in the Writer/ folder becomes a card when its front matter carries a tag under writer/, and stays yours: the board reads it and never rewrites it.
Compared with Creative Writer and the Creative Templates
Leathercase reads the keys the Obsidian plugin and the Creative Templates write, so a vault arrives with nothing to retype. The differences:
| Key or note | Plugin and templates | Leathercase |
|---|---|---|
story: true, writing-target | Make a folder a project | Leathercase declares stories itself, so neither is needed. Either marks the story's note, which is left out of the scenes and lends its settings once, when you declare. |
writing-deadline, writing-daily, writing-name, dialogue, thoughts, speakers, story-ignore, plot-pov, plot-time, plot-theme | Read from the project note every time; Not a name and Use as… write them back | Read once, at declaration, then kept in Story settings. Leathercase never writes them into the note. |
writing-goal, writing-days, plot-beats, plot-order | Not in the contract | Read at declaration as well |
writing-scope | Counts only one note | Not read |
bad-words and the Bad words note | The words lens's lists | Not read. Leathercase keeps your lists in WordLists.md in the story's suite/ folder. |
writing-stage, writing-premise, writing-idea, writing-voice | Writer board story card | The same, read every time |
creative-writer: false | Removes a note from the plugin's features | The same: the note is left out of every view |
creative-writer: true | Editor features on | No meaning; Leathercase has no editor |
manuscript, story-order | Manuscript page and order | The same |
type, kind, entity and the folder names | English words; "there is no scene"; every other note is story | The same English words plus five more languages, role words (scene, outline, research), and kinds of the story's own. A note nothing claims is unsorted and asked about, not taken for prose. |
aliases, alias, name, colour, color, accent, accent-never | Read | The same |
pronouns, gender | Not in the contract | Read, in the six languages Leathercase recognises |
writer/ tags, reading, writer-story | Writer board cards | The same. Cards Leathercase makes also carry kind and created. |
Writer.writer | The board's layout | Replaced by suite/Writer.json in the home |
Story threads.md in the project folder | The threads note, kept from being read as a chapter with creative-writer: false | Read until Leathercase's own suite/StoryThreads.md exists, which needs no flag, since a suite/ folder is never prose |
Story map.md, Writing log.md, (manuscript) notes, Plot grid.md snapshots | Written by the plugin, each with creative-writer: false | Left out. Leathercase keeps its own records in suite/. |
%% REF: [[Card]] %%, tagged %% TODO: %% comments, %% Name %% speaker pins | Read | The same |
Keys the contract lists as absent, such as date, pov, location, characters, title, author, genre or status on a scene, are absent here too. Such keys in a note are harmless and read by nothing. A scene's cast comes from its prose; a POV or time column is a thread named in Story settings.