# Quick Start - Markdown Viewer
## Installation rapide
Les composants sont déjà intégrés dans ObsiViewer. Aucune installation supplémentaire n'est nécessaire.
---
## Utilisation en 3 étapes
### 1. Importer le composant
```typescript
import { MarkdownViewerComponent } from './components/markdown-viewer/markdown-viewer.component';
@Component({
selector: 'app-my-component',
standalone: true,
imports: [MarkdownViewerComponent]
})
export class MyComponent {}
```
### 2. Ajouter dans le template
```html
```
### 3. Définir le contenu
```typescript
export class MyComponent {
markdownContent = `
# Mon Document
Ceci est un **document Markdown** avec du contenu *formaté*.
## Liste de tâches
- [x] Tâche complétée
- [ ] Tâche en cours
## Code
\`\`\`typescript
console.log('Hello World!');
\`\`\`
`;
notes: Note[] = [];
}
```
---
## Exemples rapides
### Exemple 1 : Viewer simple
```typescript
@Component({
template: `
`
})
export class SimpleViewerComponent {
content = '# Hello World\n\nCeci est un test.';
}
```
### Exemple 2 : Avec fichier Excalidraw
```typescript
@Component({
template: `
`
})
export class ExcalidrawViewerComponent {
content = ''; // Contenu chargé depuis le fichier
}
```
### Exemple 3 : Smart File Viewer (détection automatique)
```typescript
import { SmartFileViewerComponent } from './components/smart-file-viewer/smart-file-viewer.component';
@Component({
imports: [SmartFileViewerComponent],
template: `
`
})
export class AutoViewerComponent {
file = {
path: 'document.md', // ou .excalidraw.md, .png, .pdf, etc.
content: '# Auto-detected content'
};
}
```
---
## Fonctionnalités essentielles
### Callouts
```markdown
> [!NOTE]
> Information importante
> [!WARNING]
> Attention à ceci
```
### Math
```markdown
Inline: $E = mc^2$
Block:
$$
\int_{0}^{\infty} e^{-x^2} dx
$$
```
### Mermaid
```markdown
\`\`\`mermaid
graph LR
A --> B
B --> C
\`\`\`
```
### WikiLinks
```markdown
[[Note Example]]
[[Note Example#Section]]
[[Note Example|Custom Alias]]
```
---
## Tester rapidement
### Page de test intégrée
Accédez à `/markdown-playground` dans votre application pour tester toutes les fonctionnalités en temps réel.
### Exemple de contenu de test
Copiez ce contenu dans le playground :
```markdown
# Test Markdown
## Formatage de base
**Gras**, *italique*, ~~barré~~, `code inline`
## Callout
> [!TIP]
> Ceci est un conseil utile
## Code
\`\`\`typescript
function test() {
console.log('Hello!');
}
\`\`\`
## Math
La formule $E = mc^2$ est célèbre.
## Tâches
- [x] Tâche 1
- [ ] Tâche 2
## Mermaid
\`\`\`mermaid
graph TD
A[Start] --> B[End]
\`\`\`
```
---
## Démarrage serveur de développement
```bash
# Installer les dépendances
npm install
# Démarrer le serveur
npm run dev
# Ouvrir http://localhost:4200/markdown-playground
```
---
## Prochaines étapes
1. ✅ Lire le [Guide complet](./MARKDOWN_VIEWER_GUIDE.md)
2. ✅ Explorer les [exemples avancés](./MARKDOWN_VIEWER_GUIDE.md#exemples-avancés)
3. ✅ Consulter l'[API Reference](./MARKDOWN_VIEWER_GUIDE.md#utilisation)
4. ✅ Tester avec vos propres fichiers
---
## Support rapide
**Problème courant :** Le Markdown ne s'affiche pas
- ✅ Vérifier que `content` n'est pas vide
- ✅ Vérifier la console pour les erreurs
- ✅ Vérifier que le composant est bien importé
**Problème courant :** Excalidraw ne s'affiche pas
- ✅ Vérifier que `filePath` se termine par `.excalidraw.md`
- ✅ Vérifier que le contenu contient un bloc `compressed-json`
---
**Besoin d'aide ?** Consultez la [documentation complète](./MARKDOWN_VIEWER_GUIDE.md)