Basic Usage

Learn the fundamental concepts and workflows for using EmberDocs.

Creating Documents

Every document is a Markdown file with a YAML frontmatter block at the top:

markdown
---
title: "My Document"
slug: "my-document"
published: true
date: "2026-01-02"
tags: ["example", "documentation"]
---

# Document content goes here

Frontmatter Fields

FieldTypeDescription
titlestringDisplay title for the document
slugstringURL-safe identifier
publishedbooleanWhether to include in navigation
datestringPublication date (ISO format)
tagsarrayDocument tags for categorization
ordernumberSort order in navigation
authorstringDocument author

Writing Markdown

EmberDocs supports standard Markdown with GitHub-flavored extensions:

Headings

markdown
# Heading 1
## Heading 2
### Heading 3
#### Heading 4

Lists

Unordered List:

markdown
- Item 1
- Item 2
  - Nested item
  - Another nested item

Ordered List:

markdown
1. First step
2. Second step
3. Third step

Code Blocks

Inline code: const x = 5;

Code block with syntax highlighting:

typescript
const greet = (name: string): string => {
  return `Hello, ${name}!`;
};
markdown
[Internal link](/docs/guides/basic-usage)
[External link](https://example.com)

Organization

Organize your documents in directories:

text
docs/
ā”œā”€ā”€ index.md
ā”œā”€ā”€ getting-started/
│   ā”œā”€ā”€ introduction.md
│   └── installation.md
└── guides/
    ā”œā”€ā”€ basic-usage.md
    └── advanced-features.md

EmberDocs automatically generates navigation based on this structure.

Metadata

Access document metadata in your components:

typescript
const parsed = parseMarkdown(content);
console.log(parsed.frontmatter.title); // "My Document"
console.log(parsed.toc); // Table of contents
console.log(parsed.body); // Markdown body

Table of Contents

EmberDocs automatically generates a table of contents from headings. Just write natural headings in your content.

Next Steps