# How I moved to GitHub & JBake

First: It’s not my invention! Many did it before, there are lots of description out there. It still took me some time ;)

This and this was the most inspiring source and easiest explanation (that gives confidence ;) ).

# Setup

So this is the overall setup I have:

• A directory on my Mac that holds the content. I use the basic structure that Jbake uses.
• A git-cloned directory on my Mac with the output of the jBake-process
• A little script that I run every time I modified something. The script does the baking and the git-publishing
• And of course the settings in the DNS to point my Domain name to the Github IPs

## JBake

Why do I use JBake? I like the principle and I feel more comfortable in Java than in other programming languages. I haven’t touched the JBake internal code, but I feel confident that I could. The principle way that JBake operates is similar to the famous Jekyll: It parses content files and creates (static) HTML files out of it. The content files can contain Markdown or some other formats; I just use Markdown.

My directory structure looks like this:

.
|-- assets
|   |-- favicon.gif
|   |-- robots.txt
|   |-- img
|   |   |-- logo.png
|   |-- js
|   |   |-- custom.js
|   |-- css
|       |-- style.css
|
|-- content
|   |-- 2013
|       |-- 01
|       |   |-- hello-world.html
|       |-- 02
|
|-- templates
|   |-- index.ftl
|   |-- page.ftl
|   |-- post.ftl
|   |-- feed.ftl
|
|-- jbake.properties


By default JBake produces the output directory into this tree. In my case I bake my stuff into a directory that is git-synced.

# Next up

There are a couple of things I plan to change.