diff --git a/_config.yml b/_config.yml
index a059049d9..633e7b0df 100644
--- a/_config.yml
+++ b/_config.yml
@@ -19,6 +19,8 @@ collections:
output: true
recipes:
output: true
+ books:
+ output: true
exclude: ['Gemfile', 'Gemfile.lock', 'Rakefile', 'README.md']
diff --git a/_data/people.yml b/_data/people.yml
new file mode 100644
index 000000000..baf2b9b1b
--- /dev/null
+++ b/_data/people.yml
@@ -0,0 +1,8 @@
+# Store your people here
+# eg:
+#
+# clarklab:
+# name: Clark Wimberly
+# twitter: @clarklab
+# web: http://clarklab.com
+#
diff --git a/_includes/book-preview.html b/_includes/book-preview.html
new file mode 100644
index 000000000..c3e2c32da
--- /dev/null
+++ b/_includes/book-preview.html
@@ -0,0 +1,32 @@
+{% assign thisbook = include.book %}
+
+
+
+
+
+
+

+
+
+
+
+
{{ thisbook.title }}
+ {% if thisbook.author %}
+ {% assign author = site.data.people[thisbook.author] %}
+
by {{ author.name }}
+ {% endif %}
+
{{ thisbook.description }}
+
+ {{ thisbook.covernotes }}
+
+
+ {% unless page.url == thisbook.url %}
+
Read on...
+ {% endunless %}
+
+
+
+
+
+{% assign author = nil %}
+{% assign thisbook = nil %}
diff --git a/_includes/recipe-preview.html b/_includes/recipe-preview.html
new file mode 100644
index 000000000..acf5a993b
--- /dev/null
+++ b/_includes/recipe-preview.html
@@ -0,0 +1,7 @@
+{% assign thisrecipe = include.recipe %}
+
+
+ {{ thisrecipe.title }}
+
+
+{% assign thisrecipe = nil %}
diff --git a/_includes/related-books.html b/_includes/related-books.html
new file mode 100644
index 000000000..18ba65d34
--- /dev/null
+++ b/_includes/related-books.html
@@ -0,0 +1,20 @@
+{% assign thisRecipe = include.recipe %}
+{% assign bookIds = thisRecipe.books %}
+
+{% if thisRecipe.books %}
+
+{% endif %}
+
+{% assign booklist = nil %}
diff --git a/_layouts/book.html b/_layouts/book.html
new file mode 100644
index 000000000..838c1e8cf
--- /dev/null
+++ b/_layouts/book.html
@@ -0,0 +1,40 @@
+---
+layout: default
+---
+{% assign pageAuthor = site.data.people[page.author] %}
+
+
+
+ {{ content }}
+
+
+
+
+
+
diff --git a/_layouts/recipe.html b/_layouts/recipe.html
index 33426a7e0..3a193ae95 100644
--- a/_layouts/recipe.html
+++ b/_layouts/recipe.html
@@ -127,6 +127,7 @@ {{ site.translation[site.language].directions
{{ site.translation[site.language].category }}: {{ category }}
{% endfor %}
+ {% include related-books.html recipe=page %}
diff --git a/books.html b/books.html
new file mode 100644
index 000000000..828a6d048
--- /dev/null
+++ b/books.html
@@ -0,0 +1,16 @@
+---
+layout: default
+---
+
+
+
+
Books
+
Here's all the lovely books we have.
+
+
+ {% for book in site.books %}
+ {% include book-preview.html book=book %}
+ {% endfor %}
+
+
+