Markdown and plain text imports

How pasted and uploaded text is interpreted during import.

Plain text

Plain text import is the simplest path. Paste or upload a .txt file and the system preserves paragraph breaks. Each block of text separated by blank lines becomes a structural unit in the reader.

Markdown

Markdown files (.md, .markdown) are imported as plain text. The import pipeline strips Markdown syntax — heading markers, list markers, bold/italic delimiters, link URLs, code fences, and other formatting — and produces a linear text stream.

Paragraph breaks (blank lines in the source) are preserved. Everything else is simplified: headings lose their # markers but remain as text, lists become plain lines, and inline formatting is removed.

If your source material relies on structure that would be lost — such as nested lists, tables, or code blocks you want visually distinguished — consider whether a linear rendering is sufficient for your study, or whether you need to restructure the content after import.

Large stories

Very large texts may hit practical limits during import. The system enforces reasonable size boundaries to keep processing time and memory usage predictable. If your text exceeds these limits, consider:

  • Splitting the content into multiple shorter stories
  • Removing very large embedded images or base64-encoded data
  • Checking whether your file uses excessive whitespace or repeated formatting that inflates the size

See Import formats, size limits, and fidelity for the current limits and a detailed breakdown of what each import path supports.

The Create Story page

From the Library, use the Create Story button to open the story creation page. You can:

  • Paste plain text or Markdown directly into the text area
  • Upload a .txt or .md file from your device
  • Name your story and pick a language (or let the system infer it from your study language setting)

After submission, the story appears in your library with a processing indicator. The system prepares your text for reading — tokenizing words, building sentence boundaries, and setting up study tools. This usually takes a few seconds but can take longer for large texts. If the indicator seems stuck, see Troubleshooting imports.