← All tools Application Drafter

Application Drafter

Draft a funding application question by question in a YAML file on your disk, with live two-way editing alongside Claude.

Overview

Application Drafter is a single HTML page for working on an application, such as a fellowship resubmission. All the content lives in one YAML file on your own disk. The page opens that file, lets you read and edit it, and writes your edits straight back to it. Because the file is the source of truth, Claude (or any editor) can change it at the same time: the page notices changes on disk within a couple of seconds and reloads them.

For each question the file holds:

Field What it's for
question The question as the funder asks it
guidance The funder's guidance for the question
previous_answer The answer you submitted last time
assessor_feedback What the assessors said about it
feedback_response Your response to that feedback
suggestions Proposed changes, each with a source, a decision (accept, reject or decide), whether it's implemented, and notes
new_draft The new answer

The first five are reference material, shown collapsed as rendered Markdown (each has an Edit button). Suggestions sit between the reference material and the new draft: Accept or Reject each one, then tick Implemented once the new draft reflects it. A suggestion counts as resolved when it's implemented or rejected. Expand a suggestion to edit its text, source or notes. New draft is always open for editing, with a Preview toggle, Copy Markdown, and Copy formatted for pasting into the funder's form (see Pasting into the form).

Features

Pasting into the form

Funders' online forms often accept only a little formatting. This tool assumes the form takes bold, italic, bulleted lists and numbered lists, and nothing else: no headings, links or tables.

Use a bold line, with a blank line above and below, in place of a heading, and number them for structure:

**1. Main heading**

Content goes here

**1.1 Secondary heading**

More content

To treat another field the same way, set form: true on it in meta.fields.

Usage

  1. Run npm start from the repo root (or open the page on the site) in Chrome or Edge.
  2. Click Open YAML file… and choose your file, or New file… to start from a template. Allow the browser to edit the file when asked.
  3. Pick a question from the sidebar and draft away.

Live, two-way editing uses the File System Access API, which only Chromium browsers support. In Safari and Firefox the page still works, but it opens a copy of the file and Save downloads the result, so outside changes won't appear.

File format

meta:
  title: My application
  deadline: "4 November 2026"
  notes: |
    Notes for the whole application (shown on the overview).

glossary:
  - term: workstream
    decision: update        # keep | update | decide
    use_instead: workstream
    definition: One of the three strands of the project.
    variants: [work stream, work-stream]
    notes: Round 10 mixed three spellings.

questions:
  - id: q12                 # stable id
    number: "12"
    title: Vision
    section: Application questions   # sidebar grouping
    scored: true
    word_limit: 1500
    previous_score: "8"
    status: drafting        # not-started | drafting | review | done
    question: |
      What are your plans for the fellowship?
    guidance: |
      …
    previous_answer: |
      …
    assessor_feedback: |
      …
    feedback_response: |
      …
    suggestions:
      - text: Add measurable targets for each workstream
        source: A3          # who or what proposed it
        decision: accept    # accept | reject | decide
        implemented: false  # true once new_draft reflects it
        notes: ""
    new_draft: |
      …

Any other text field on a question is shown as an extra editable field. To change the field list, labels or which are reference material, add meta.fields:

meta:
  fields:
    - { key: question, label: Question, kind: reference }
    - { key: new_draft, label: New draft, kind: working, count: true, limit: true, form: true }

count shows a word count; limit compares it with the question's word_limit; form marks text that's pasted into the funder's form (Copy formatted, form preview and warnings).

Working with Claude

Point Claude at the same YAML file and ask it to edit fields directly — for example, "draft new_draft for q12 using the accepted suggestions". Keep the page open while it works: each change appears as soon as the file is written. Leave autosave on so your own edits reach the file before Claude reads it.