https://github.com/donatj/mddom
A Basic Markdown "DOM" for building Markdown out of Objects
https://github.com/donatj/mddom
markdown markdown-generator
Last synced: 10 months ago
JSON representation
A Basic Markdown "DOM" for building Markdown out of Objects
- Host: GitHub
- URL: https://github.com/donatj/mddom
- Owner: donatj
- License: mit
- Created: 2014-08-14T17:31:02.000Z (almost 12 years ago)
- Default Branch: master
- Last Pushed: 2025-04-10T04:18:02.000Z (about 1 year ago)
- Last Synced: 2025-04-15T03:48:24.756Z (about 1 year ago)
- Topics: markdown, markdown-generator
- Language: PHP
- Homepage:
- Size: 96.7 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# MDDom - Markdown DOM
[](https://packagist.org/packages/donatj/mddom)
[](https://packagist.org/packages/donatj/mddom)
[](https://github.com/donatj/mddom/actions/workflows/ci.yml)
A Simple Easy To Use Way to Generate Markdown Using a "DOM" Like Interface
[See: docs/docs.md](docs/docs.md)
## Requirements
- **php**: >=7.2
## Installing
Install the latest version with:
```bash
composer require 'donatj/mddom'
```
## Example
```php
appendChild(new MDDom\Header("Hello World!"));
$doc->appendChild(new MDDom\Paragraph("This text is in a paragraph"));
$doc->appendChild(new MDDom\Paragraph("This text is in a separate paragraph"));
$sub = new MDDom\DocumentDepth;
$doc->appendChild($sub);
// Header Level, e.g.
is determined by the depth.
$sub->appendChild(new MDDom\Header("Sub-Header!"));
$sub->appendChild(new MDDom\CodeBlock("echo 'Hello World';", 'php'));
echo $doc->exportMarkdown();
```
Outputs:
````markdown
# Hello World!
This text is in a paragraph
This text is in a separate paragraph
## Sub-Header!
```php
echo 'Hello World';
```
````