skepticalhippo / php-markdown-parser

Markdown compiler for Laravel 4


Markdown Compiler for Laravel 4


Run composer require vtalbot/markdown:1.5

Run php artisan config:publish vtalbot/markdown

Then edit config.php in app/config/packages/vtalbot/markdown to your needs.

Add 'VTalbot\Markdown\MarkdownServiceProvider', to providers in app/config/app.php
and 'Markdown' => 'VTalbot\Markdown\Facades\Markdown', to aliases in app/config/app.php


If doesn't exists in the public directory, it will search for in app/markdown directory.
If found, compile it if needed and return the result.


Or, you can compile a simple string:


To handle markdown file not found:

Markdown::setNotFoundHandler(function($file) { return 'Markdown file not found'; });
Markdown::setNotFoundHandler('[email protected]');


Key Default value Description
paths array('/markdown') Directory where to find the markdown files.
routes array('',) Routes prefixes.
extensions array('markdown','md') Extensions used to set routes.
add_routes true Enable the creation of routes.
empty_element_suffix ' />' Suffix for empty element (br, hr).
tab_width 4 Tab character width.
no_markup false Prevent HTML tags to be passed to output.
no_entities false Convert entities like < to &.
predef_urls array() Add reference for urls. array('ref' => '//'): [google][ref]
predef_titles array() Same as predef_urls.
use_extra true Use Markdown with extra, eg.: fenced code block.
fn_id_prefix '' Prefix for ID attributes generated by footnotes.
fn_link_title '' Title for footnotes links.
fn_backlink_title '' Same as fn_link_title.
fn_link_class 'footnote-ref' CSS class for footnotes links and backlinks.
fn_backlink_class 'footnote-backref' Same as fn_link_class.
code_class_prefix '' Prepend CSS class to fenced code block.
code_attr_on_pre false Put attributes on pre instead of code.
predef_abbr array() Create predefine abbreviations.

For more information on the Markdown configuration, you may refer to .



  • Change deprecated dependency.
  • Add Markdown file not found handler.
  • Add configurations based on the new dependency.
  • Add some tests.