{
  "prelum": "0.14.0",
  "elements": [
    {
      "id": "paragraph",
      "name": "Paragraph",
      "summary": "Emphasis, strong text, strikethrough and inline code in running prose.",
      "markdown": "A sentence with *emphasis*, **strong text**, ~~a struck word~~ and `inline code`. Prose such as 12:30 and 4.5:1 stays prose.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "headings",
      "name": "Headings",
      "summary": "Second and third level headings, each with an id and an anchor link.",
      "markdown": "## A section heading\n\n### A subsection heading\n\nEach heading gets an id from its text and an anchor to link to it.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "lists",
      "name": "Lists",
      "summary": "Ordered, unordered and nested lists.",
      "markdown": "1. Collect the samples\n2. Extract the RNA\n   - keep it on ice\n   - work quickly\n3. Sequence it",
      "pack": "core",
      "directives": []
    },
    {
      "id": "task-list",
      "name": "Task list",
      "summary": "A checklist with done and open items.",
      "markdown": "- [x] Draft written\n- [ ] Figures checked",
      "pack": "core",
      "directives": []
    },
    {
      "id": "quote",
      "name": "Block quote",
      "summary": "A quotation, with one nested inside it.",
      "markdown": "> A quotation set apart from the prose.\n>\n> > And a reply nested inside it.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "table",
      "name": "Table",
      "summary": "A table with left and right aligned columns, wrapped so a wide one scrolls.",
      "markdown": "| Sample | Reads |\n| :----- | ----: |\n| A1     | 1,204 |\n| B2     | 987   |",
      "pack": "core",
      "directives": []
    },
    {
      "id": "links",
      "name": "Links",
      "summary": "Web, relative, fragment, mail and bare links, and an unsafe link shown as text.",
      "markdown": "A [web link](https://example.com/page \"A title\"), a [relative link](/writing/other), a [fragment](#el-headings), a [mail link](mailto:someone@example.com) and a bare https://example.org/autolink.\n\nAn unsafe [script link](javascript:alert(1)) is not a link: it is shown as text.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "image",
      "name": "Image",
      "summary": "An image with alt text and a title, sized from its file.",
      "markdown": "![A purple square with a lighter circle in it](/images/sample-640x360.svg \"Shown on hover\")",
      "pack": "core",
      "directives": []
    },
    {
      "id": "figure",
      "name": "Figure",
      "summary": "An image with a caption and a credit.",
      "markdown": ":::figure{src=\"/images/sample-640x360.svg\" alt=\"A purple square with a lighter circle in it\" credit=\"Image: Prelum specimen\"}\nA caption with *emphasis*.\n:::",
      "pack": "core",
      "directives": [
        "figure"
      ]
    },
    {
      "id": "figure-themed",
      "name": "Figure with a dark twin",
      "summary": "A drawing with a second file for the dark theme, since an image cannot read the page's theme.",
      "markdown": ":::figure{src=\"/images/sample-light-640x360.svg\" dark=\"/images/sample-dark-640x360.svg\" alt=\"A circle on a square, drawn once for each theme\"}\nThe page shows the drawing that matches its theme.\n:::",
      "pack": "core",
      "directives": [
        "figure"
      ]
    },
    {
      "id": "footnote",
      "name": "Footnote",
      "summary": "A footnote reference and its note.",
      "markdown": "A claim that needs a source.[^source]\n\n[^source]: The source, with a [link](https://example.com/source).",
      "pack": "core",
      "directives": []
    },
    {
      "id": "rule",
      "name": "Rule",
      "summary": "A thematic break between two paragraphs.",
      "markdown": "The end of one part.\n\n---\n\nThe start of the next.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "details",
      "name": "Collapsible section",
      "summary": "A section that opens without script, for methods and long asides.",
      "markdown": ":::details{summary=\"Methods in full\"}\nThe longer text, with a [link](https://example.com/methods). It is in the HTML whether or not the section is open.\n:::",
      "pack": "core",
      "directives": [
        "details"
      ]
    },
    {
      "id": "math-inline",
      "name": "Inline math",
      "summary": "TeX inside a sentence, drawn by KaTeX.",
      "markdown": "The area is $\\pi r^2$ and the ratio is $\\frac{a}{b}$.",
      "pack": "core",
      "directives": []
    },
    {
      "id": "math-display",
      "name": "Display math",
      "summary": "A TeX equation on its own line.",
      "markdown": "$$\n\\sum_{i=1}^{n} i = \\frac{n(n+1)}{2}\n$$",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-plain",
      "name": "Code: plain",
      "summary": "A code block with no language, left unhighlighted.",
      "markdown": "```\nplain text, kept as written\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-lines",
      "name": "Code: highlighted lines",
      "summary": "A code block with one line marked.",
      "markdown": "```bash {2}\necho one\necho two\necho three\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-bash",
      "name": "Code: Bash",
      "summary": "A shell script, highlighted.",
      "markdown": "```bash\nfor f in *.fastq; do\n  gzip \"$f\"\ndone\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-css",
      "name": "Code: CSS",
      "summary": "A stylesheet rule, highlighted.",
      "markdown": "```css\n.note {\n  color: var(--muted);\n}\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-html",
      "name": "Code: HTML",
      "summary": "An HTML fragment, highlighted.",
      "markdown": "```html\n<p class=\"note\">Hello, <em>world</em>.</p>\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-javascript",
      "name": "Code: JavaScript",
      "summary": "JavaScript, highlighted.",
      "markdown": "```javascript\nconst total = [1, 2, 3].reduce((a, b) => a + b, 0); // 6\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-json",
      "name": "Code: JSON",
      "summary": "JSON, highlighted.",
      "markdown": "```json\n{ \"sample\": \"A1\", \"reads\": 1204 }\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-markdown",
      "name": "Code: Markdown",
      "summary": "Markdown source shown as code, highlighted.",
      "markdown": "```markdown\n## A heading\n\nSome *emphasis*.\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-python",
      "name": "Code: Python",
      "summary": "Python, highlighted.",
      "markdown": "```python\ndef double(x):\n    return x * 2\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-sql",
      "name": "Code: SQL",
      "summary": "SQL, highlighted.",
      "markdown": "```sql\nSELECT sample, reads FROM runs WHERE reads > 1000;\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-tsx",
      "name": "Code: TSX",
      "summary": "TSX, highlighted.",
      "markdown": "```tsx\nexport const Hello = ({ name }: { name: string }) => <p>Hello, {name}</p>;\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "code-typescript",
      "name": "Code: TypeScript",
      "summary": "TypeScript, highlighted.",
      "markdown": "```typescript\nconst sum = (xs: number[]): number => xs.reduce((a, b) => a + b, 0);\n```",
      "pack": "core",
      "directives": []
    },
    {
      "id": "sidenote",
      "name": "Sidenote",
      "summary": "A note beside its paragraph, with an optional kind.",
      "markdown": ":::sidenote{kind=\"Aside\"}\nA note that sits in the margin on a wide screen.\n:::",
      "pack": "editorial",
      "directives": [
        "sidenote"
      ]
    },
    {
      "id": "pullquote",
      "name": "Pull quote",
      "summary": "A sentence in the prose, raised and repeated for emphasis.",
      "markdown": "The result held in every sample, and :pullquote[the effect was larger than expected] by a wide margin.",
      "pack": "editorial",
      "directives": [
        "pullquote"
      ]
    },
    {
      "id": "swatch",
      "name": "Color swatch",
      "summary": "A color chip beside its hex value or a label.",
      "markdown": "The accent is :swatch[#8C5FD2] and the page is :swatch[the ground color]{color=#FBF9FF}.",
      "pack": "editorial",
      "directives": [
        "swatch"
      ]
    },
    {
      "id": "chart-bar",
      "name": "Bar chart",
      "summary": "A bar chart from CSV, drawn by Enarratio, with its data table.",
      "markdown": ":::chart{type=\"bar\" x=\"sample\" y=\"reads\" alt=\"Reads per sample: A1 1,204, B2 987, C3 1,530\" title=\"Reads per sample\"}\n```csv\nsample,reads\nA1,1204\nB2,987\nC3,1530\n```\n:::",
      "pack": "editorial",
      "directives": [
        "chart"
      ]
    },
    {
      "id": "chart-line",
      "name": "Line chart",
      "summary": "A line chart with two labeled series.",
      "markdown": ":::chart{type=\"line\" x=\"year\" y=\"a,b\" labels=\"Alpha,Beta\" alt=\"Two lines rising from 2020 to 2023, Beta above Alpha\" title=\"Two series\"}\n```csv\nyear,a,b\n2020,1,2\n2021,2,3\n2022,3,5\n2023,4,6\n```\n:::",
      "pack": "editorial",
      "directives": [
        "chart"
      ]
    },
    {
      "id": "chart-area",
      "name": "Area chart",
      "summary": "An area chart of one series.",
      "markdown": ":::chart{type=\"area\" x=\"year\" y=\"total\" alt=\"Total rising from 3 in 2020 to 9 in 2023\" title=\"Total over time\"}\n```csv\nyear,total\n2020,3\n2021,5\n2022,6\n2023,9\n```\n:::",
      "pack": "editorial",
      "directives": [
        "chart"
      ]
    },
    {
      "id": "chart-dot",
      "name": "Dot plot",
      "summary": "A scatter of points.",
      "markdown": ":::chart{type=\"dot\" x=\"dose\" y=\"response\" alt=\"Response rises with dose across five points\" title=\"Dose and response\"}\n```csv\ndose,response\n1,2\n2,3\n3,5\n4,4\n5,7\n```\n:::",
      "pack": "editorial",
      "directives": [
        "chart"
      ]
    },
    {
      "id": "diagram",
      "name": "Diagram",
      "summary": "A Mermaid diagram, drawn ahead of time in both themes.",
      "markdown": ":::diagram{title=\"From draft to page\" alt=\"Three boxes in a row: Draft points to Prelum, which points to Page\"}\n```mermaid\ngraph LR\n  Draft --> Prelum --> Page\n```\n:::",
      "pack": "editorial",
      "directives": [
        "diagram"
      ]
    }
  ]
}
