# Demo Test — All System Elements

This module exists to exercise every content and visual element in Socrates. It is intentionally short — one or two examples of each element type — so it can be used for manual walkthroughs or automated regression tests.

## Section 1: Basic Markdown

Plain text with **bold**, *italic*, `inline code`, and [a link](https://example.com).

- Bullet list item one
- Bullet list item two
- Bullet list item three

1. Numbered item one
2. Numbered item two
3. Numbered item three

> A blockquote to test rendering.

## Section 2: Code Blocks

```bash
echo "Hello from a bash code block"
```

```javascript
function greet(name) {
  return `Hello, ${name}!`;
}
```

## Section 3: Tables

| Element | Type | Tested |
|---------|------|--------|
| Mermaid diagram | Visual | Yes |
| Timed-choice quiz | Interactive | Yes |
| Terminal practice | Interactive | Yes |
| Command sprint game | Interactive | Yes |

## Section 4: Mermaid Diagrams

```mermaid
flowchart LR
    A[Content] -->|read| B[Walkthrough]
    B -->|practice| C[Exercises]
    C -->|test| D[Quiz]
    D -->|play| E[Games]
```

```mermaid
sequenceDiagram
    participant U as User
    participant T as Teacher
    participant C as Canvas
    U->>T: Start lesson
    T->>C: Show diagram
    C-->>U: Visual display
    U->>T: Answer question
    T->>U: Socratic feedback
```

## Section 5: Key Concepts

**Progressive Enhancement**: Socrates works in three tiers — full (extension + canvas), canvas-only (SSE + REST), and terminal-only (CLI). Every teaching interaction must work in terminal mode at minimum.

**Socratic Method**: The teacher asks, never tells. Users discover answers through guided questions and hands-on practice.

**Gamification**: XP, belts, and progress tracking keep learners motivated. Belts range from White (0 XP) to Black (3000 XP).
