skizu/gitdown

Markdown parser for PHP based on the CommonMark spec with integration into git

V1.0 2015-09-14 13:34 UTC

This package is not auto-updated.

Last update: 2024-04-27 15:42:25 UTC


README

skizu/gitdown combines git repos with a Markdown parser for PHP which supports the full CommonMark spec

Goals

  • Fully support the CommonMark spec (100% compliance)
  • Provide an extensible git library integration component
  • To be able to load, compare and parse versions of MarkDown files within a git repo

Installation

This project can be installed via Composer:

$ composer require skizu/gitdown

Basic Usage

The GitDownConverter class provides a simple wrapper for converting CommonMark files within a git repo to HTML:

use Skizu\GitDown\GitDownConverter;

$gitDownConverter = new GitDownConverter('/path/to/repo');
echo $gitDownConverter->convertToHtml('path/to/file.md');

// <h1>Hello World!</h1>

The GitDownDiff class provides a simple wrapper for performing diffs on CommonMark files within a git repo:

use Skizu\GitDown\GitDownDiff
 
$gitDownDiff = new GitDownDiff('/path/to/repo');
$diff = $gitDownDiff->getDiff('master@{2 days ago}..master');
 
foreach($diff as $file => $data) {
   echo '<h1>'.$file.'<h1>';
   foreach($data['lines'] as $line) {
      echo $line;
   }
}
 
// <h1>README.md</h1>
// -* Fully support the CommonMark spec (100% compliance)\n
// +* Fully support the [CommonMark spec] (100% compliance)\n