harrk / laravel-commonmark
Compile laravel blade templates and strings into markdown
Requires
- php: ^7.2
- illuminate/view: ~6.0
- league/commonmark: ~1.0
Requires (Dev)
- orchestra/testbench: ~4.0
This package is auto-updated.
Last update: 2022-01-25 02:02:08 UTC
README
Laravel Commonmark is a wrapper for league/commonmark which allows for the parsing of regular Markdown as well as CommonMark. The CommonMark spec can be found at http://commonmark.org.
This package can parse Markdown inline or within blade templates using the .md.blade.php file extension.
Why?
I was looking for a Markdown compiler for Laravel and with being unable to find a package compatible with Laravel 5.6 (at the time). I figured I could take a crack at it. This also seemed like a good opportunity to gain some experience with open-source projects.
Installation
This package has been updated to work with Laravel 6.0, just install via composer:
$ composer require "harrk/laravel-commonmark=~v2.0"
Usage
Blade
Simply name a blade view with the .md.blade.php extension and it'll automatically parse Markdown within the view into HTML when rendered.
Any .md.blade.php files can be included into other blade files using @import
as you would a regular view.
Dependency Injection
use \League\CommonMark\CommonMarkConverter; class MyClass { public function myFunction(CommonMarkConverter $converter) { return $converter->convertToHtml('# H1 Header'); } }
Or if you prefer using helper functions instead:
class MyClass { public function myFunction() { return markdown_to_html('# H1 Header'); } }
Unit Testing
To run unit tests:
$ vendor/bin/phpunit
Alternatives
Check out graham-campbell/markdown for a package that offers far greater customisation through the use of CommonMark extensions.