dragonmantank/fillet

A CMS to Sculpin converter suite


License
ISC

Documentation

Fillet - A CMS to Sculpin Converter

Code Climate

Scrutinizer Code Quality

Many people coming to Sculpin are coming from other CMSes out there in the wild. While almost all of these are database-backed, Sculpin isn't. Fillet will help convert exports from different CMSes into the HTML/Markdown format that Sculpin expects.

What this will /not/ do is create a Sculpin site from scratch from your existing blog. Fillet will simply parse a known format and create pages and posts for you, and convert as much stuff over as possible. You still need to create an index.html file, views, and configure Sculpin. We're just going to make it easier to get your content in.

If you have a favorite CMS and would like to help expand Fillet, help us write a parser!

Currently supported CMSes:

  • Wordpress, via the XML Export

Sample Usage

Use with Sculpin

There is a bundle version of this that integrates with Sculpin directly. You can find it at dragonmantank/fillet-sculpin-bundle

Manual installation with Composer for development

Add Fillet to your site with Composer

composer require "dragonmantank/fillet:dev-master"

You can use the following sample code to run Fillet.

<?php

require_once 'vendor/autoload.php';

$config = [
    'destinationFolders' => [
        'page' => __DIR__ . '/source/',
        'post' => __DIR__ . '/source/_posts/',
    ]
];

$fillet = new \Fillet\Fillet(new \Fillet\Parser\WordpressExport(), __DIR__ . '/mysite.xml', $config);
$fillet->parse();

Generating markdown with pandoc

If you have Pandoc installed, you can use it to generate markdown output instead of HTML by adding a pandoc key to $config:

$config = [
    'destinationFolders' => [
        'page' => __DIR__ . '/source/',
        'post' => __DIR__ . '/source/_posts/',
    ],
    'pandoc' => [
        'to_markdown' => true,
        'bin' => '/usr/local/bin/pandoc',
    ]
];