Bake your web site with JBake

Talk

Introduction

What is baking a web site?

Building a static web site from just plain old text files ...

... an alternative to a dynamic web site that uses a database.

So why bake?

Benefits

On to JBake

Background

Features

Features

Templates

Installation

Usage Options

Example sites

How it works

How the "oven" works

Site/Project layout

	├── assets
	│   ├── css
	│   ├── img
	│   └── js
	├── content
	│   ├── changelog.md
	│   ├── news
	│   │   ├── index.md
	│   │   └── jbake-v2-1-released.md
	│   └── sites.md
	├── templates
	│   ├── index.ftl
	│   ├── page.ftl
	│   └── post.ftl
	└── jbake.properties
	

Content file


title=Changelog
date=2013-03-30
type=page
status=published
~~~~~~

### v2.1

*2013-04-30*

* Added unit tests
* Added post baking stats
* Command line arguments are now optional
...

Template file


  <#include "header.ftl">
  
  <#include "menu.ftl">

  <div class="page-header">
    <h1>Blog</h1>
  </div>
  <#list posts as post>
      <#if (post.status == "published")>
        <a href="${post.uri}"><h1>
          <#escape x as x?xml>${post.title}</#escape>
        </h1></a>
        <p>${post.date?string("dd MMMM yyyy")}</p>
        <p>${post.body}</p>
      </#if>
    </#list>

Config file


  site.host=http://jbake.org/
  render.tags=false
  render.sitemap=true

Time for a quick Demonstration

Alternatives

http://jbake.org