Coil is a minimalistic static content engine written in elixir.
You must have the latest stable version of elixir installed, v0.12.5 as of the writing of this.
Clone the repo, fetch dependencies and compile:
git clone https://github.com/badosu/coil
cd coil && mix do deps.get, compileBootstrap a sample coil blog:
mix coil ../blog
cd ../blog && mix deps.getApply your configuration:
$EDITOR config.ymlAdd an article: mix post.
Run (on port 8080): PORT=8080 mix run --no-halt.
Deploy to Heroku:
heroku create --buildpack "https://github.com/goshakkk/heroku-buildpack-elixir.git"
git push heroku masterIf you have a mix.exs file requiring the coil lib properly, like
this one, you have only to follow the structure
below to get it working:
.
|-- articles
| `-- YYYY-mm-dd-article-title.md
|-- assets
| `-- example.css
|-- config.yml
|-- mix.exs
|-- pages
| `-- title.md
`-- templates
|-- archives.html.eex
|-- article.html.eex
|-- index.html.eex
|-- index.xml.eex
|-- layout.html.eex
`-- page.html.eex
- Index:
/ - Page:
/title - Resource:
/assets/example.css - Article:
/articles/YYYY-mm-dd-article-title - RSS feed:
/feed - Archives:
/archives
Templates are embedded elixir files (see the EEx docs), and can be customized to suit your design:
layout.html.eexThe template in which all other templates are embeddedindex.html.eexRenders the home pagearticle.html.eexRenders the article pagepage.html.eexRenders the page pagearchives.html.eexRenders the archives pageindex.xml.eexRenders the rss feed
The MIT License, see LICENSE