Calavera helps to create a full-Javascript webapp from Markdown files.
Basically, it converts Markdown files stored in a Git repository to JSON-LD files using the Schema.org vocabulary. Those files include metadata extracted from the Git repository (author name, last modification date...).
JSON-LD files are easily consumed by JavaScript libraries and framework such as React, Angular or jQuery.
Websites generated with Calavera can be freely and easily hosted on GitHub Pages.
The easiest way to use Calavera is through Docker. Just go to the usage section below.
Alternatively, you can compile Calavera from sources.
The Go programming language is the only required dependency to compile Calavera.
If you don't already have a Go workspace, create it:
$ mkdir -p ~/workspace/go
$ export GOPATH=~/workspace/go
Then, download govendor to manage the dependencies of the project:
$ go get -u github.com/kardianos/govendor
Create the appropriate directory structure and download the source code:
$ mkdir -p ~/workspace/go/src/github.com/dunglas
$ cd ~/workspace/go/src/github.com/dunglas
$ git clone git@github.com:dunglas/calavera.git
Go to the source code directory, download external libraries and compile the program:
$ cd calavera
$ ~/workspace/go/bin/govendor sync # Download dependencies
$ ~/workspace/go/bin/govendor install # Install the app
Using Docker:
$ docker run -v /my/src/directory:/in -v /my/output/directory:/out dunglas/calavera /in /out
If you installed it from source:
$ ~/workspace/go/bin/calavera input_directory output_directory
Markdown files from the input_directory
will be converted to JSON-LD files in output_directory
.
- -prettify: Prettify generated JSON-LD files
Calavera is distributed under the MIT license.
Written in Go (golang) by Kévin Dunglas and sponsored by Les-Tilleuls.coop.