[WEBSITE] Added Jekyll Bootstrapper etc

Project: http://git-wip-us.apache.org/repos/asf/mahout/repo
Commit: http://git-wip-us.apache.org/repos/asf/mahout/commit/a60c79e7
Tree: http://git-wip-us.apache.org/repos/asf/mahout/tree/a60c79e7
Diff: http://git-wip-us.apache.org/repos/asf/mahout/diff/a60c79e7

Branch: refs/heads/website
Commit: a60c79e7a2f32aa3e3c78d184e4219360f24869e
Parents: 2a8139d
Author: rawkintrevo <[email protected]>
Authored: Sun Apr 23 12:06:02 2017 -0500
Committer: rawkintrevo <[email protected]>
Committed: Sun Apr 23 12:06:02 2017 -0500

----------------------------------------------------------------------
 .gitignore                                      |   2 +
 website/404.html                                |   1 +
 website/Gemfile                                 |   5 +
 website/README.md                               |   8 +-
 website/Rakefile                                | 306 +++++++
 website/_config.yml                             | 172 ++--
 website/_config.yml.bu                          |  72 ++
 website/_includes/JB/analytics                  |  20 +
 website/_includes/JB/analytics-providers/gauges |  13 +
 .../_includes/JB/analytics-providers/getclicky  |  12 +
 website/_includes/JB/analytics-providers/google |  11 +
 .../JB/analytics-providers/google-universal     |   9 +
 .../_includes/JB/analytics-providers/mixpanel   |  11 +
 website/_includes/JB/analytics-providers/piwik  |  10 +
 website/_includes/JB/categories_list            |  37 +
 website/_includes/JB/comments                   |  18 +
 website/_includes/JB/comments-providers/disqus  |  15 +
 website/_includes/JB/comments-providers/duoshuo |  14 +
 .../_includes/JB/comments-providers/facebook    |   9 +
 .../JB/comments-providers/intensedebate         |   6 +
 .../_includes/JB/comments-providers/livefyre    |   6 +
 website/_includes/JB/feedburner                 |   3 +
 website/_includes/JB/file_exists                |  26 +
 website/_includes/JB/gist                       |  19 +
 website/_includes/JB/is_production              |  39 +
 website/_includes/JB/liquid_raw                 |  32 +
 website/_includes/JB/pages_list                 |  39 +
 website/_includes/JB/posts_collate              |  55 ++
 website/_includes/JB/setup                      |  27 +
 website/_includes/JB/sharing                    |   9 +
 website/_includes/JB/sort_collection            |  81 ++
 website/_includes/JB/tags_list                  |  33 +
 website/_includes/body-old.html                 |  22 -
 website/_includes/footer.html                   |  13 -
 website/_includes/header.html                   |  75 --
 website/_includes/homepage.html                 | 160 ----
 website/_includes/navbar_main.html              |  69 --
 website/_includes/pagination.html               |  35 -
 website/_includes/themes/mahout/body-old.html   |  22 +
 website/_includes/themes/mahout/default.html    |  71 ++
 website/_includes/themes/mahout/footer.html     |  13 +
 website/_includes/themes/mahout/header.html     |  75 ++
 website/_includes/themes/mahout/homepage.html   | 161 ++++
 .../_includes/themes/mahout/navbar_main.html    |  69 ++
 website/_includes/themes/mahout/page.html       |   9 +
 website/_includes/themes/mahout/pagination.html |  35 +
 website/_includes/themes/mahout/post.html       |  47 +
 website/_includes/themes/mahout/settings.yml    |   2 +
 website/_includes/themes/mahout/tile.html       |  36 +
 .../_includes/themes/mahout/title-group.html    |  43 +
 website/_includes/tile.html                     |  36 -
 website/_includes/title-group.html              |  43 -
 website/_layouts/default.html                   |  10 +-
 website/_layouts/inner.html                     |   4 +-
 website/_layouts/mahout.html                    |   6 +-
 website/_layouts/mahoutdoc.html                 |  21 +-
 website/_pages/developer-resources.md           |  50 --
 website/_pages/docs/0.13.0/algorithms/d-als.md  |  57 --
 website/_pages/docs/0.13.0/algorithms/d-qr.md   |  57 --
 website/_pages/docs/0.13.0/algorithms/d-spca.md | 174 ----
 website/_pages/docs/0.13.0/algorithms/d-ssvd.md | 141 ---
 .../_pages/docs/0.13.0/mahout-samsara/faq.md    |  50 --
 .../0.13.0/mahout-samsara/flink-bindings.md     |  48 -
 .../docs/0.13.0/mahout-samsara/h2o-internals.md |  49 --
 .../0.13.0/mahout-samsara/in-core-reference.md  | 302 -------
 .../mahout-samsara/out-of-core-reference.md     | 316 -------
 .../0.13.0/mahout-samsara/spark-bindings.md     | 100 ---
 website/_pages/docs/0.13.0/quickstart.md        |  62 --
 .../tutorials/classify-a-doc-from-the-shell.md  | 257 ------
 .../0.13.0/tutorials/how-to-build-an-app.md     | 255 ------
 .../docs/0.13.0/tutorials/play-with-shell.md    | 198 -----
 website/_pages/dustin.html                      |  20 -
 website/_pages/how-to-contribute.md             | 153 ----
 website/_pages/how-to-contribute.mdtext         | 149 ----
 website/_pages/mailing-lists.md                 |   2 +-
 website/_pages/reference.md                     |   5 +-
 website/_pages/version-control.mdtext           |  33 -
 website/_sass/_bootstrap.scss                   |  56 --
 website/_sass/_syntax-highlighting.scss         |  67 --
 website/_sass/bootstrap/_alerts.scss            |  73 --
 website/_sass/bootstrap/_badges.scss            |  68 --
 website/_sass/bootstrap/_breadcrumbs.scss       |  28 -
 website/_sass/bootstrap/_button-groups.scss     | 244 ------
 website/_sass/bootstrap/_buttons.scss           | 168 ----
 website/_sass/bootstrap/_carousel.scss          | 269 ------
 website/_sass/bootstrap/_close.scss             |  36 -
 website/_sass/bootstrap/_code.scss              |  69 --
 .../_sass/bootstrap/_component-animations.scss  |  37 -
 website/_sass/bootstrap/_dropdowns.scss         | 216 -----
 website/_sass/bootstrap/_forms.scss             | 611 -------------
 website/_sass/bootstrap/_glyphicons.scss        | 307 -------
 website/_sass/bootstrap/_grid.scss              |  84 --
 website/_sass/bootstrap/_input-groups.scss      | 167 ----
 website/_sass/bootstrap/_jumbotron.scss         |  52 --
 website/_sass/bootstrap/_labels.scss            |  66 --
 website/_sass/bootstrap/_list-group.scss        | 130 ---
 website/_sass/bootstrap/_media.scss             |  66 --
 website/_sass/bootstrap/_mixins.scss            |  40 -
 website/_sass/bootstrap/_modals.scss            | 150 ----
 website/_sass/bootstrap/_navbar.scss            | 662 --------------
 website/_sass/bootstrap/_navs.scss              | 242 -----
 website/_sass/bootstrap/_normalize.scss         | 424 ---------
 website/_sass/bootstrap/_pager.scss             |  54 --
 website/_sass/bootstrap/_pagination.scss        |  89 --
 website/_sass/bootstrap/_panels.scss            | 271 ------
 website/_sass/bootstrap/_popovers.scss          | 131 ---
 website/_sass/bootstrap/_print.scss             | 101 ---
 website/_sass/bootstrap/_progress-bars.scss     |  87 --
 website/_sass/bootstrap/_responsive-embed.scss  |  35 -
 .../_sass/bootstrap/_responsive-utilities.scss  | 179 ----
 website/_sass/bootstrap/_scaffolding.scss       | 161 ----
 website/_sass/bootstrap/_tables.scss            | 234 -----
 website/_sass/bootstrap/_theme.scss             | 291 -------
 website/_sass/bootstrap/_thumbnails.scss        |  38 -
 website/_sass/bootstrap/_tooltip.scss           | 101 ---
 website/_sass/bootstrap/_type.scss              | 298 -------
 website/_sass/bootstrap/_utilities.scss         |  55 --
 website/_sass/bootstrap/_variables.scss         | 872 -------------------
 website/_sass/bootstrap/_wells.scss             |  29 -
 website/_sass/bootstrap/mixins/_alerts.scss     |  14 -
 .../bootstrap/mixins/_background-variant.scss   |  12 -
 .../_sass/bootstrap/mixins/_border-radius.scss  |  18 -
 website/_sass/bootstrap/mixins/_buttons.scss    |  68 --
 .../_sass/bootstrap/mixins/_center-block.scss   |   7 -
 website/_sass/bootstrap/mixins/_clearfix.scss   |  22 -
 website/_sass/bootstrap/mixins/_forms.scss      |  88 --
 website/_sass/bootstrap/mixins/_gradients.scss  |  58 --
 .../_sass/bootstrap/mixins/_grid-framework.scss |  81 --
 website/_sass/bootstrap/mixins/_grid.scss       | 122 ---
 website/_sass/bootstrap/mixins/_hide-text.scss  |  21 -
 website/_sass/bootstrap/mixins/_image.scss      |  33 -
 website/_sass/bootstrap/mixins/_labels.scss     |  12 -
 website/_sass/bootstrap/mixins/_list-group.scss |  32 -
 .../_sass/bootstrap/mixins/_nav-divider.scss    |  10 -
 .../bootstrap/mixins/_nav-vertical-align.scss   |   9 -
 website/_sass/bootstrap/mixins/_opacity.scss    |   8 -
 website/_sass/bootstrap/mixins/_pagination.scss |  24 -
 website/_sass/bootstrap/mixins/_panels.scss     |  24 -
 .../_sass/bootstrap/mixins/_progress-bar.scss   |  10 -
 .../_sass/bootstrap/mixins/_reset-filter.scss   |   8 -
 website/_sass/bootstrap/mixins/_reset-text.scss |  18 -
 website/_sass/bootstrap/mixins/_resize.scss     |   6 -
 .../mixins/_responsive-visibility.scss          |  21 -
 website/_sass/bootstrap/mixins/_size.scss       |  10 -
 website/_sass/bootstrap/mixins/_tab-focus.scss  |   9 -
 website/_sass/bootstrap/mixins/_table-row.scss  |  28 -
 .../_sass/bootstrap/mixins/_text-emphasis.scss  |  12 -
 .../_sass/bootstrap/mixins/_text-overflow.scss  |   8 -
 .../bootstrap/mixins/_vendor-prefixes.scss      | 222 -----
 website/developers/how-to-become-a-committer.md |  27 +
 website/developers/how-to-contribute.md         | 153 ++++
 website/developers/index.md                     |  50 ++
 website/developers/version-control.md           |  37 +
 website/docs/0.13.0/algorithms/d-als.md         |  57 ++
 website/docs/0.13.0/algorithms/d-qr.md          |  57 ++
 website/docs/0.13.0/algorithms/d-spca.md        | 174 ++++
 website/docs/0.13.0/algorithms/d-ssvd.md        | 141 +++
 website/docs/0.13.0/mahout-samsara/faq.md       |  50 ++
 .../0.13.0/mahout-samsara/flink-bindings.md     |  48 +
 .../docs/0.13.0/mahout-samsara/h2o-internals.md |  49 ++
 .../0.13.0/mahout-samsara/in-core-reference.md  | 302 +++++++
 .../mahout-samsara/out-of-core-reference.md     | 316 +++++++
 .../0.13.0/mahout-samsara/spark-bindings.md     | 100 +++
 website/docs/0.13.0/quickstart.md               |  62 ++
 .../tutorials/classify-a-doc-from-the-shell.md  | 257 ++++++
 .../0.13.0/tutorials/how-to-build-an-app.md     | 255 ++++++
 .../docs/0.13.0/tutorials/play-with-shell.md    | 198 +++++
 website/index.html                              |   5 -
 website/index.md                                | 164 ++++
 169 files changed, 4151 insertions(+), 11399 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index ed62c84..bc2c464 100644
--- a/.gitignore
+++ b/.gitignore
@@ -25,3 +25,5 @@ bin/derby.log
 bin/metastore_db
 *jar
 *log
+website/_site/
+website/Gemfile.lock
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/404.html
----------------------------------------------------------------------
diff --git a/website/404.html b/website/404.html
new file mode 100644
index 0000000..6904bcd
--- /dev/null
+++ b/website/404.html
@@ -0,0 +1 @@
+Sorry this page does not exist =(

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/Gemfile
----------------------------------------------------------------------
diff --git a/website/Gemfile b/website/Gemfile
new file mode 100644
index 0000000..301d29c
--- /dev/null
+++ b/website/Gemfile
@@ -0,0 +1,5 @@
+source "https://rubygems.org";
+
+gem "jekyll", "~> 3.1"
+gem "jekyll-sitemap"
+gem "pygments.rb"

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/README.md
----------------------------------------------------------------------
diff --git a/website/README.md b/website/README.md
index a1961c8..f2a2535 100644
--- a/website/README.md
+++ b/website/README.md
@@ -17,16 +17,12 @@ cd website
 
 To start editing the website first you need to open two terminals.  One 
terminal will run a continuous build of the mahout website locally, and the 
other will serve the website on localhost:4000
 
-Terminal 1
-```
-jekyll serve
-```
 
-Terminal 2
 ```
-jekyll build --watch
+bundle exec jekyll build --safe
 ```
 
+
 Browser
 ```
 localhost:4000

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/Rakefile
----------------------------------------------------------------------
diff --git a/website/Rakefile b/website/Rakefile
new file mode 100644
index 0000000..183ca1e
--- /dev/null
+++ b/website/Rakefile
@@ -0,0 +1,306 @@
+require "rubygems"
+require 'rake'
+require 'yaml'
+require 'time'
+
+SOURCE = "."
+CONFIG = {
+  'version' => "0.3.0",
+  'themes' => File.join(SOURCE, "_includes", "themes"),
+  'layouts' => File.join(SOURCE, "_layouts"),
+  'posts' => File.join(SOURCE, "_posts"),
+  'post_ext' => "md",
+  'theme_package_version' => "0.1.0"
+}
+
+# Path configuration helper
+module JB
+  class Path
+    SOURCE = "."
+    Paths = {
+      :layouts => "_layouts",
+      :themes => "_includes/themes",
+      :theme_assets => "assets/themes",
+      :theme_packages => "_theme_packages",
+      :posts => "_posts"
+    }
+    
+    def self.base
+      SOURCE
+    end
+
+    # build a path relative to configured path settings.
+    def self.build(path, opts = {})
+      opts[:root] ||= SOURCE
+      path = "#{opts[:root]}/#{Paths[path.to_sym]}/#{opts[:node]}".split("/")
+      path.compact!
+      File.__send__ :join, path
+    end
+  
+  end #Path
+end #JB
+
+# Usage: rake post title="A Title" [date="2012-02-09"] [tags=[tag1,tag2]] 
[category="category"]
+desc "Begin a new post in #{CONFIG['posts']}"
+task :post do
+  abort("rake aborted: '#{CONFIG['posts']}' directory not found.") unless 
FileTest.directory?(CONFIG['posts'])
+  title = ENV["title"] || "new-post"
+  tags = ENV["tags"] || "[]"
+  category = ENV["category"] || ""
+  category = "\"#{category.gsub(/-/,' ')}\"" if !category.empty?
+  slug = title.downcase.strip.gsub(' ', '-').gsub(/[^\w-]/, '')
+  begin
+    date = (ENV['date'] ? Time.parse(ENV['date']) : 
Time.now).strftime('%Y-%m-%d')
+  rescue => e
+    puts "Error - date format must be YYYY-MM-DD, please check you typed it 
correctly!"
+    exit -1
+  end
+  filename = File.join(CONFIG['posts'], 
"#{date}-#{slug}.#{CONFIG['post_ext']}")
+  if File.exist?(filename)
+    abort("rake aborted!") if ask("#{filename} already exists. Do you want to 
overwrite?", ['y', 'n']) == 'n'
+  end
+  
+  puts "Creating new post: #{filename}"
+  open(filename, 'w') do |post|
+    post.puts "---"
+    post.puts "layout: post"
+    post.puts "title: \"#{title.gsub(/-/,' ')}\""
+    post.puts 'description: ""'
+    post.puts "category: #{category}"
+    post.puts "tags: #{tags}"
+    post.puts "---"
+    post.puts "{% include JB/setup %}"
+  end
+end # task :post
+
+# Usage: rake page name="about.html"
+# You can also specify a sub-directory path.
+# If you don't specify a file extention we create an index.html at the path 
specified
+desc "Create a new page."
+task :page do
+  name = ENV["name"] || "new-page.md"
+  filename = File.join(SOURCE, "#{name}")
+  filename = File.join(filename, "index.html") if File.extname(filename) == ""
+  title = File.basename(filename, File.extname(filename)).gsub(/[\W\_]/, " 
").gsub(/\b\w/){$&.upcase}
+  if File.exist?(filename)
+    abort("rake aborted!") if ask("#{filename} already exists. Do you want to 
overwrite?", ['y', 'n']) == 'n'
+  end
+  
+  mkdir_p File.dirname(filename)
+  puts "Creating new page: #{filename}"
+  open(filename, 'w') do |post|
+    post.puts "---"
+    post.puts "layout: page"
+    post.puts "title: \"#{title}\""
+    post.puts 'description: ""'
+    post.puts "---"
+    post.puts "{% include JB/setup %}"
+  end
+end # task :page
+
+desc "Launch preview environment"
+task :preview do
+  system "jekyll serve -w"
+end # task :preview
+
+# Public: Alias - Maintains backwards compatability for theme switching.
+task :switch_theme => "theme:switch"
+
+namespace :theme do
+  
+  # Public: Switch from one theme to another for your blog.
+  #
+  # name - String, Required. name of the theme you want to switch to.
+  #        The theme must be installed into your JB framework.
+  #
+  # Examples
+  #
+  #   rake theme:switch name="the-program"
+  #
+  # Returns Success/failure messages.
+  desc "Switch between Jekyll-bootstrap themes."
+  task :switch do
+    theme_name = ENV["name"].to_s
+    theme_path = File.join(CONFIG['themes'], theme_name)
+    settings_file = File.join(theme_path, "settings.yml")
+    non_layout_files = ["settings.yml"]
+
+    abort("rake aborted: name cannot be blank") if theme_name.empty?
+    abort("rake aborted: '#{theme_path}' directory not found.") unless 
FileTest.directory?(theme_path)
+    abort("rake aborted: '#{CONFIG['layouts']}' directory not found.") unless 
FileTest.directory?(CONFIG['layouts'])
+
+    Dir.glob("#{theme_path}/*") do |filename|
+      next if non_layout_files.include?(File.basename(filename).downcase)
+      puts "Generating '#{theme_name}' layout: #{File.basename(filename)}"
+
+      open(File.join(CONFIG['layouts'], File.basename(filename)), 'w') do 
|page|
+        page.puts "---"
+        page.puts File.read(settings_file) if File.exist?(settings_file)
+        page.puts "layout: default" unless File.basename(filename, 
".html").downcase == "default"
+        page.puts "---"
+        page.puts "{% include JB/setup %}"
+        page.puts "{% include themes/#{theme_name}/#{File.basename(filename)} 
%}" 
+      end
+    end
+    
+    puts "=> Theme successfully switched!"
+    puts "=> Reload your web-page to check it out =)"
+  end # task :switch
+  
+  # Public: Install a theme using the theme packager.
+  # Version 0.1.0 simple 1:1 file matching.
+  #
+  # git  - String, Optional path to the git repository of the theme to be 
installed.
+  # name - String, Optional name of the theme you want to install.
+  #        Passing name requires that the theme package already exist.
+  #
+  # Examples
+  #
+  #   rake theme:install 
git="https://github.com/jekyllbootstrap/theme-twitter.git";
+  #   rake theme:install name="cool-theme"
+  #
+  # Returns Success/failure messages.
+  desc "Install theme"
+  task :install do
+    if ENV["git"]
+      manifest = theme_from_git_url(ENV["git"])
+      name = manifest["name"]
+    else
+      name = ENV["name"].to_s.downcase
+    end
+
+    packaged_theme_path = JB::Path.build(:theme_packages, :node => name)
+    
+    abort("rake aborted!
+      => ERROR: 'name' cannot be blank") if name.empty?
+    abort("rake aborted! 
+      => ERROR: '#{packaged_theme_path}' directory not found.
+      => Installable themes can be added via git. You can find some here: 
http://github.com/jekyllbootstrap
+      => To download+install run: `rake theme:install git='[PUBLIC-CLONE-URL]'`
+      => example : rake theme:install 
git='[email protected]:jekyllbootstrap/theme-the-program.git'
+    ") unless FileTest.directory?(packaged_theme_path)
+    
+    manifest = verify_manifest(packaged_theme_path)
+    
+    # Get relative paths to packaged theme files
+    # Exclude directories as they'll be recursively created. Exclude meta-data 
files.
+    packaged_theme_files = []
+    FileUtils.cd(packaged_theme_path) {
+      Dir.glob("**/*.*") { |f| 
+        next if ( FileTest.directory?(f) || f =~ 
/^(manifest|readme|packager)/i )
+        packaged_theme_files << f 
+      }
+    }
+    
+    # Mirror each file into the framework making sure to prompt if already 
exists.
+    packaged_theme_files.each do |filename|
+      file_install_path = File.join(JB::Path.base, filename)
+      if File.exist? file_install_path and ask("#{file_install_path} already 
exists. Do you want to overwrite?", ['y', 'n']) == 'n'
+        next
+      else
+        mkdir_p File.dirname(file_install_path)
+        cp_r File.join(packaged_theme_path, filename), file_install_path
+      end
+    end
+    
+    puts "=> #{name} theme has been installed!"
+    puts "=> ---"
+    if ask("=> Want to switch themes now?", ['y', 'n']) == 'y'
+      system("rake switch_theme name='#{name}'")
+    end
+  end
+
+  # Public: Package a theme using the theme packager.
+  # The theme must be structured using valid JB API.
+  # In other words packaging is essentially the reverse of installing.
+  #
+  # name - String, Required name of the theme you want to package.
+  #        
+  # Examples
+  #
+  #   rake theme:package name="twitter"
+  #
+  # Returns Success/failure messages.
+  desc "Package theme"
+  task :package do
+    name = ENV["name"].to_s.downcase
+    theme_path = JB::Path.build(:themes, :node => name)
+    asset_path = JB::Path.build(:theme_assets, :node => name)
+
+    abort("rake aborted: name cannot be blank") if name.empty?
+    abort("rake aborted: '#{theme_path}' directory not found.") unless 
FileTest.directory?(theme_path)
+    abort("rake aborted: '#{asset_path}' directory not found.") unless 
FileTest.directory?(asset_path)
+    
+    ## Mirror theme's template directory (_includes)
+    packaged_theme_path = JB::Path.build(:themes, :root => 
JB::Path.build(:theme_packages, :node => name))
+    mkdir_p packaged_theme_path
+    cp_r theme_path, packaged_theme_path
+    
+    ## Mirror theme's asset directory
+    packaged_theme_assets_path = JB::Path.build(:theme_assets, :root => 
JB::Path.build(:theme_packages, :node => name))
+    mkdir_p packaged_theme_assets_path
+    cp_r asset_path, packaged_theme_assets_path
+
+    ## Log packager version
+    packager = {"packager" => {"version" => 
CONFIG["theme_package_version"].to_s } }
+    open(JB::Path.build(:theme_packages, :node => "#{name}/packager.yml"), 
"w") do |page|
+      page.puts packager.to_yaml
+    end
+    
+    puts "=> '#{name}' theme is packaged and available at: 
#{JB::Path.build(:theme_packages, :node => name)}"
+  end
+  
+end # end namespace :theme
+
+# Internal: Download and process a theme from a git url.
+# Notice we don't know the name of the theme until we look it up in the 
manifest.
+# So we'll have to change the folder name once we get the name.
+#
+# url - String, Required url to git repository.
+#        
+# Returns theme manifest hash
+def theme_from_git_url(url)
+  tmp_path = JB::Path.build(:theme_packages, :node => "_tmp")
+  abort("rake aborted: system call to git clone failed") if !system("git clone 
#{url} #{tmp_path}")
+  manifest = verify_manifest(tmp_path)
+  new_path = JB::Path.build(:theme_packages, :node => manifest["name"])
+  if File.exist?(new_path) && ask("=> #{new_path} theme package already 
exists. Override?", ['y', 'n']) == 'n'
+    remove_dir(tmp_path)
+    abort("rake aborted: '#{manifest["name"]}' already exists as theme 
package.")
+  end
+
+  remove_dir(new_path) if File.exist?(new_path)
+  mv(tmp_path, new_path)
+  manifest
+end
+
+# Internal: Process theme package manifest file.
+#
+# theme_path - String, Required. File path to theme package.
+#        
+# Returns theme manifest hash
+def verify_manifest(theme_path)
+  manifest_path = File.join(theme_path, "manifest.yml")
+  manifest_file = File.open( manifest_path )
+  abort("rake aborted: repo must contain valid manifest.yml") unless 
File.exist? manifest_file
+  manifest = YAML.load( manifest_file )
+  manifest_file.close
+  manifest
+end
+
+def ask(message, valid_options)
+  if valid_options
+    answer = get_stdin("#{message} #{valid_options.to_s.gsub(/"/, '').gsub(/, 
/,'/')} ") while !valid_options.include?(answer)
+  else
+    answer = get_stdin(message)
+  end
+  answer
+end
+
+def get_stdin(message)
+  print message
+  STDIN.gets.chomp
+end
+
+#Load custom rake scripts
+Dir['_rake/*.rake'].each { |r| load r }

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_config.yml
----------------------------------------------------------------------
diff --git a/website/_config.yml b/website/_config.yml
index d5fb7ee..fa0a40e 100644
--- a/website/_config.yml
+++ b/website/_config.yml
@@ -1,72 +1,122 @@
-# Where things are
-source:      .
-destination: ./_site
-plugins_dir:     ./_plugins
-layouts_dir:     ./_layouts
-data_dir: ./_data
-# collections: null
+# This is the default format.
+# For more see: http://jekyllrb.com/docs/permalinks/
+permalink: /:categories/:year/:month/:day/:title
 
-# Handling Reading
-safe:         false
-include:      [".htaccess"]
-exclude:      []
-keep_files:   [".git", ".svn"]
-encoding:     "utf-8"
-markdown_ext: "markdown,mkdown,mkdn,mkd,md"
-
-# Filtering Content
-show_drafts: null
-limit_posts: 0
-future:      true
-unpublished: false
-
-# Plugins
-whitelist: []
-gems:      [jekyll-paginate]
+exclude: [".rvmrc", ".rbenv-version", "README.md", "Rakefile", "changelog.md", 
"vendor", "node_modules", "scss"]
+#pygments: true
+highlighter: rouge
+markdown: kramdown
+redcarpet:
+  extensions: ["tables"]
+encoding: utf-8
 
-# Conversion
-markdown:    kramdown
-highlighter: pygments
-lsi:         false
-excerpt_separator: "\n\n"
+# Themes are encouraged to use these universal variables
+# so be sure to set them if your theme uses them.
+#
+title : Apache Mahout
+tagline: Distributed Linear Algebra
+author :
+  name : The Apache Software Foundation
+  email : [email protected]
+  github : apache
+  twitter : ASF
+  feedburner : feedname
 
-# Serving
-detach:  false
-port:    4000
-host:    127.0.0.1
-baseurl: "" # does not include hostname
+STREAMS_VERSION : 0.13.1-SNAPSHOT
 
-# Outputting
-permalink:     /:title.html
-paginate: 10
-paginate_path: /page:num
-timezone:      null
+# The production_url is only used when full-domain names are needed
+# such as sitemap.txt
+# Most places will/should use BASE_PATH to make the urls
+#
+# If you have set a CNAME (pages.github.com) set your custom domain here.
+# Else if you are pushing to username.github.io, replace with your username.
+# Finally if you are pushing to a GitHub project page, include the project 
name at the end.
+#
+production_url : http://mahout.apache.org/
+# All Jekyll-Bootstrap specific configurations are namespaced into this hash
+#
+JB :
+  version : 0.3.0
 
-quiet:    false
-defaults: []
+  # All links will be namespaced by BASE_PATH if defined.
+  # Links in your website should always be prefixed with {{BASE_PATH}}
+  # however this value will be dynamically changed depending on your 
deployment situation.
+  #
+  # CNAME (http://yourcustomdomain.com)
+  #   DO NOT SET BASE_PATH
+  #   (urls will be prefixed with "/" and work relatively)
+  #
+  # GitHub Pages (http://username.github.io)
+  #   DO NOT SET BASE_PATH
+  #   (urls will be prefixed with "/" and work relatively)
+  #
+  # GitHub Project Pages (http://username.github.io/project-name)
+  #
+  #   A GitHub Project site exists in the `gh-pages` branch of one of your 
repositories.
+  #  REQUIRED! Set BASE_PATH to: http://username.github.io/project-name
+  #
+  # CAUTION:
+  #   - When in Localhost, your site will run from root "/" regardless of 
BASE_PATH
+  #   - Only the following values are falsy: ["", null, false]
+  #   - When setting BASE_PATH it must be a valid url.
+  #     This means always setting the protocol (http|https) or prefixing with 
"/"
+  BASE_PATH : /website
 
-# Markdown Processors
-rdiscount:
-  extensions: []
+  # By default, the asset_path is automatically defined relative to BASE_PATH 
plus the enabled theme.
+  # ex: [BASE_PATH]/assets/themes/[THEME-NAME]
+  #
+  # Override this by defining an absolute path to assets here.
+  # ex:
+  #   http://s3.amazonaws.com/yoursite/themes/watermelon
+  #   /assets
+  #
+  ASSET_PATH : false
 
-redcarpet:
-  extensions: []
+  # These paths are to the main pages Jekyll-Bootstrap ships with.
+  # Some JB helpers refer to these paths; change them here if needed.
+  #
+  archive_path: /archive.html
+  categories_path : /categories.html
+  tags_path : /tags.html
+  atom_path : /atom.xml
+  rss_path : /rss.xml
 
-kramdown:
-  auto_ids:       true
-  footnote_nr:    1
-  entity_output:  as_char
-  toc_levels:     1..6
-  smart_quotes:   lsquo,rsquo,ldquo,rdquo
-  enable_coderay: false
+  # Settings for comments helper
+  # Set 'provider' to the comment provider you want to use.
+  # Set 'provider' to false to turn commenting off globally.
+  #
+  comments :
+    provider : disqus
+    disqus :
+      short_name : jekyllbootstrap
+    livefyre :
+      site_id : 123
+    intensedebate :
+      account : 123abc
+    facebook :
+      appid : 123
+      num_posts: 5
+      width: 580
+      colorscheme: light
 
-  coderay:
-    coderay_wrap:              div
-    coderay_line_numbers:      inline
-    coderay_line_number_start: 1
-    coderay_tab_width:         4
-    coderay_bold_every:        10
-    coderay_css:               style
+  # Settings for analytics helper
+  # Set 'provider' to the analytics provider you want to use.
+  # Set 'provider' to false to turn analytics off globally.
 
+  # Settings for sharing helper.
+  # Sharing is for things like tweet, plusone, like, reddit buttons etc.
+  # Set 'provider' to the sharing provider you want to use.
+  # Set 'provider' to false to turn sharing off globally.
+  #
+  sharing :
+    provider : false
 
-include: ['_pages', '_pages/docs/0.13.0']
+  # Settings for all other include helpers can be defined by creating
+  # a hash with key named for the given helper. ex:
+  #
+  #   pages_list :
+  #     provider : "custom"
+  #
+  # Setting any helper's provider to 'custom' will bypass the helper code
+  # and include your custom code. Your custom file must be defined at:
+  #   ./_includes/custom/[HELPER]
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_config.yml.bu
----------------------------------------------------------------------
diff --git a/website/_config.yml.bu b/website/_config.yml.bu
new file mode 100644
index 0000000..0272bdd
--- /dev/null
+++ b/website/_config.yml.bu
@@ -0,0 +1,72 @@
+# Where things are
+source:      .
+destination: ./_site
+plugins_dir:     ./_plugins
+layouts_dir:     ./_layouts
+data_dir: ./_data
+# collections: null
+
+# Handling Reading
+safe:         false
+include:      [".htaccess"]
+exclude:      []
+keep_files:   [".git", ".svn"]
+encoding:     "utf-8"
+markdown_ext: "markdown,mkdown,mkdn,mkd,md"
+
+# Filtering Content
+show_drafts: null
+limit_posts: 0
+future:      true
+unpublished: false
+
+# Plugins
+whitelist: []
+gems:      [jekyll-paginate]
+
+# Conversion
+markdown:    kramdown
+highlighter: pygments
+lsi:         false
+excerpt_separator: "\n\n"
+
+# Serving
+detach:  false
+port:    4000
+host:    127.0.0.1
+baseurl: "" # does not include hostname
+
+# Outputting
+permalink:     /:title.html
+paginate: 10
+paginate_path: /page:num
+timezone:      null
+
+quiet:    false
+defaults: []
+
+# Markdown Processors
+rdiscount:
+  extensions: []
+
+redcarpet:
+  extensions: []
+
+kramdown:
+  auto_ids:       true
+  footnote_nr:    1
+  entity_output:  as_char
+  toc_levels:     1..6
+  smart_quotes:   lsquo,rsquo,ldquo,rdquo
+  enable_coderay: false
+
+  syntax_highlighter_opts:
+    wrap:              div
+    line_numbers:      inline
+    line_number_start: 1
+    tab_width:         4
+    bold_every:        10
+    css:               style
+
+
+include: ['_pages', '_pages/docs/0.13.0']

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics b/website/_includes/JB/analytics
new file mode 100644
index 0000000..2bb4c80
--- /dev/null
+++ b/website/_includes/JB/analytics
@@ -0,0 +1,20 @@
+{% include JB/is_production %}
+
+{% if is_production and site.JB.analytics.provider and page.JB.analytics != 
false %}
+
+{% case site.JB.analytics.provider %}
+{% when "gauges" %}
+  {% include JB/analytics-providers/gauges %}
+{% when "google" %}
+  {% include JB/analytics-providers/google %}
+{% when "getclicky" %}
+  {% include JB/analytics-providers/getclicky %}
+{% when "mixpanel" %}
+  {% include JB/analytics-providers/mixpanel %}
+{% when "piwik" %}
+  {% include JB/analytics-providers/piwik %}
+{% when "custom" %}
+  {% include custom/analytics %}
+{% endcase %}
+
+{% endif %}

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/gauges
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/gauges 
b/website/_includes/JB/analytics-providers/gauges
new file mode 100644
index 0000000..b793ff1
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/gauges
@@ -0,0 +1,13 @@
+<script type="text/javascript">
+  var _gauges = _gauges || [];
+  (function() {
+    var t   = document.createElement('script');
+    t.type  = 'text/javascript';
+    t.async = true;
+    t.id    = 'gauges-tracker';
+    t.setAttribute('data-site-id', '{{ site.JB.analytics.gauges.site_id }}');
+    t.src = '//secure.gaug.es/track.js';
+    var s = document.getElementsByTagName('script')[0];
+    s.parentNode.insertBefore(t, s);
+  })();
+</script>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/getclicky
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/getclicky 
b/website/_includes/JB/analytics-providers/getclicky
new file mode 100644
index 0000000..e9462f4
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/getclicky
@@ -0,0 +1,12 @@
+<script type="text/javascript">
+var clicky_site_ids = clicky_site_ids || [];
+clicky_site_ids.push({{ site.JB.analytics.getclicky.site_id }});
+(function() {
+  var s = document.createElement('script');
+  s.type = 'text/javascript';
+  s.async = true;
+  s.src = '//static.getclicky.com/js';
+  ( document.getElementsByTagName('head')[0] || 
document.getElementsByTagName('body')[0] ).appendChild( s );
+})();
+</script>
+<noscript><p><img alt="Clicky" width="1" height="1" src="//in.getclicky.com/{{ 
site.JB.analytics.getclicky.site_id }}ns.gif" /></p></noscript>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/google
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/google 
b/website/_includes/JB/analytics-providers/google
new file mode 100644
index 0000000..9014866
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/google
@@ -0,0 +1,11 @@
+<script type="text/javascript">
+  var _gaq = _gaq || [];
+  _gaq.push(['_setAccount', '{{ site.JB.analytics.google.tracking_id }}']);
+  _gaq.push(['_trackPageview']);
+
+  (function() {
+    var ga = document.createElement('script'); ga.type = 'text/javascript'; 
ga.async = true;
+    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 
'http://www') + '.google-analytics.com/ga.js';
+    var s = document.getElementsByTagName('script')[0]; 
s.parentNode.insertBefore(ga, s);
+  })();
+</script>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/google-universal
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/google-universal 
b/website/_includes/JB/analytics-providers/google-universal
new file mode 100644
index 0000000..834f2ee
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/google-universal
@@ -0,0 +1,9 @@
+<script>
+  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new 
Date();a=s.createElement(o),
+  
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+  ga('create', {{ site.JB.analytics.googleUA.tracking_id }}', {% if 
site.JB.analytics.googleUA.property_name %}{{ 
site.JB.analytics.googleUA.property_name }}{% else %}'auto'{% endif %});
+  ga('send', 'pageview');
+</script>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/mixpanel
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/mixpanel 
b/website/_includes/JB/analytics-providers/mixpanel
new file mode 100644
index 0000000..4406eb0
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/mixpanel
@@ -0,0 +1,11 @@
+<script type="text/javascript">
+    var mpq = [];
+    mpq.push(["init", "{{ site.JB.analytics.mixpanel.token}}"]);
+    (function(){var 
b,a,e,d,c;b=document.createElement("script");b.type="text/javascript";
+    
b.async=true;b.src=(document.location.protocol==="https:"?"https:":"http:")+
+    
"//api.mixpanel.com/site_media/js/api/mixpanel.js";a=document.getElementsByTagName("script")[0];
+    a.parentNode.insertBefore(b,a);e=function(f){return function(){mpq.push(
+    
[f].concat(Array.prototype.slice.call(arguments,0)))}};d=["init","track","track_links",
+    
"track_forms","register","register_once","identify","name_tag","set_config"];for(c=0;c<
+    d.length;c++){mpq[d[c]]=e(d[c])}})();
+</script>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/analytics-providers/piwik
----------------------------------------------------------------------
diff --git a/website/_includes/JB/analytics-providers/piwik 
b/website/_includes/JB/analytics-providers/piwik
new file mode 100755
index 0000000..077a373
--- /dev/null
+++ b/website/_includes/JB/analytics-providers/piwik
@@ -0,0 +1,10 @@
+<script type="text/javascript">
+  var pkBaseURL = (("https:" == document.location.protocol) ? "https://{{ 
site.JB.analytics.piwik.baseURL }}/" : "http://{{ 
site.JB.analytics.piwik.baseURL }}/");
+  document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' 
type='text/javascript'%3E%3C/script%3E"));
+</script><script type="text/javascript">
+  try {
+    var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", {{ 
site.JB.analytics.piwik.idsite }});
+    piwikTracker.trackPageView();
+    piwikTracker.enableLinkTracking();
+  } catch( err ) {}
+</script><noscript><p><img src="http://{{ site.JB.analytics.piwik.baseURL 
}}/piwik.php?idsite={{ site.JB.analytics.piwik.idsite }}" style="border:0" 
alt="" /></p></noscript>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/categories_list
----------------------------------------------------------------------
diff --git a/website/_includes/JB/categories_list 
b/website/_includes/JB/categories_list
new file mode 100644
index 0000000..83be2e2
--- /dev/null
+++ b/website/_includes/JB/categories_list
@@ -0,0 +1,37 @@
+{% comment %}<!--
+The categories_list include is a listing helper for categories.
+Usage:
+  1) assign the 'categories_list' variable to a valid array of tags.
+  2) include JB/categories_list
+  example:
+    <ul>
+         {% assign categories_list = site.categories %}  
+         {% include JB/categories_list %}
+       </ul>
+  
+  Notes: 
+    Categories can be either a Hash of Category objects (hashes) or an Array 
of category-names (strings).
+    The encapsulating 'if' statement checks whether categories_list is a Hash 
or Array.
+    site.categories is a Hash while page.categories is an array.
+    
+  This helper can be seen in use at: ../_layouts/default.html
+-->{% endcomment %}
+
+{% if site.JB.categories_list.provider == "custom" %}
+  {% include custom/categories_list %}
+{% else %}
+  {% if categories_list.first[0] == null %}
+    {% for category in categories_list %} 
+       <li><a href="{{ BASE_PATH }}{{ site.JB.categories_path }}#{{ category 
}}-ref">
+               {{ category | join: "/" }} <span>{{ 
site.categories[category].size }}</span>
+       </a></li>
+    {% endfor %}
+  {% else %}
+    {% for category in categories_list %} 
+       <li><a href="{{ BASE_PATH }}{{ site.JB.categories_path }}#{{ 
category[0] }}-ref">
+               {{ category[0] | join: "/" }} <span>{{ category[1].size 
}}</span>
+       </a></li>
+    {% endfor %}
+  {% endif %}
+{% endif %}
+{% assign categories_list = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments b/website/_includes/JB/comments
new file mode 100644
index 0000000..eec2e1e
--- /dev/null
+++ b/website/_includes/JB/comments
@@ -0,0 +1,18 @@
+{% if site.JB.comments.provider and page.comments != false %}
+
+{% case site.JB.comments.provider %}
+{% when "disqus" %}
+  {% include JB/comments-providers/disqus %}
+{% when "livefyre" %}
+  {% include JB/comments-providers/livefyre %}
+{% when "intensedebate" %}
+  {% include JB/comments-providers/intensedebate %}
+{% when "facebook" %}
+  {% include JB/comments-providers/facebook %}
+{% when "duoshuo" %}
+  {% include JB/comments-providers/duoshuo %}
+{% when "custom" %}
+  {% include custom/comments %}
+{% endcase %}
+
+{% endif %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments-providers/disqus
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments-providers/disqus 
b/website/_includes/JB/comments-providers/disqus
new file mode 100644
index 0000000..6343100
--- /dev/null
+++ b/website/_includes/JB/comments-providers/disqus
@@ -0,0 +1,15 @@
+<div id="disqus_thread"></div>
+<script type="text/javascript">
+    {% include JB/is_production %}
+    {% if is_production == false %}var disqus_developer = 1;{% endif %}
+    var disqus_shortname = '{{ site.JB.comments.disqus.short_name }}'; // 
required: replace example with your forum shortname
+    {% if page.wordpress_id %}var disqus_identifier = '{{page.wordpress_id}} 
{{site.production_url}}/?p={{page.wordpress_id}}';{% endif %}
+    /* * * DON'T EDIT BELOW THIS LINE * * */
+    (function() {
+        var dsq = document.createElement('script'); dsq.type = 
'text/javascript'; dsq.async = true;
+        dsq.src = 'http://' + disqus_shortname + '.disqus.com/embed.js';
+        (document.getElementsByTagName('head')[0] || 
document.getElementsByTagName('body')[0]).appendChild(dsq);
+    })();
+</script>
+<noscript>Please enable JavaScript to view the <a 
href="http://disqus.com/?ref_noscript";>comments powered by 
Disqus.</a></noscript>
+<a href="http://disqus.com"; class="dsq-brlink">blog comments powered by <span 
class="logo-disqus">Disqus</span></a>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments-providers/duoshuo
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments-providers/duoshuo 
b/website/_includes/JB/comments-providers/duoshuo
new file mode 100644
index 0000000..90865a0
--- /dev/null
+++ b/website/_includes/JB/comments-providers/duoshuo
@@ -0,0 +1,14 @@
+<!-- Duoshuo Comment BEGIN -->
+  <div class="ds-thread"{% if page.wordpress_id %} 
data-thread-key="{{page.wordpress_id}}"{% endif %}></div>
+<script type="text/javascript">
+var duoshuoQuery = {short_name:'{{ site.JB.comments.duoshuo.short_name }}'};
+  (function() {
+    var ds = document.createElement('script');
+    ds.type = 'text/javascript';ds.async = true;
+    ds.src = 'http://static.duoshuo.com/embed.js';
+    ds.charset = 'UTF-8';
+    (document.getElementsByTagName('head')[0] 
+    || document.getElementsByTagName('body')[0]).appendChild(ds);
+  })();
+  </script>
+<!-- Duoshuo Comment END -->

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments-providers/facebook
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments-providers/facebook 
b/website/_includes/JB/comments-providers/facebook
new file mode 100644
index 0000000..e1d3deb
--- /dev/null
+++ b/website/_includes/JB/comments-providers/facebook
@@ -0,0 +1,9 @@
+<div id="fb-root"></div>
+<script>(function(d, s, id) {
+  var js, fjs = d.getElementsByTagName(s)[0];
+  if (d.getElementById(id)) return;
+  js = d.createElement(s); js.id = id;
+  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId={{ 
site.JB.comments.facebook.appid }}";
+  fjs.parentNode.insertBefore(js, fjs);
+}(document, 'script', 'facebook-jssdk'));</script>
+<div class="fb-comments" data-href="{{ site.production_url }}{{ page.url }}" 
data-num-posts="{{ site.JB.comments.facebook.num_posts }}" data-width="{{ 
site.JB.comments.facebook.width }}" data-colorscheme="{{ 
site.JB.comments.facebook.colorscheme }}"></div>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments-providers/intensedebate
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments-providers/intensedebate 
b/website/_includes/JB/comments-providers/intensedebate
new file mode 100644
index 0000000..233ce34
--- /dev/null
+++ b/website/_includes/JB/comments-providers/intensedebate
@@ -0,0 +1,6 @@
+<script>
+var idcomments_acct = '{{ site.JB.comments.intensedebate.account }}';
+var idcomments_post_id;
+var idcomments_post_url;
+</script>
+<script type="text/javascript" 
src="http://www.intensedebate.com/js/genericCommentWrapperV2.js";></script>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/comments-providers/livefyre
----------------------------------------------------------------------
diff --git a/website/_includes/JB/comments-providers/livefyre 
b/website/_includes/JB/comments-providers/livefyre
new file mode 100644
index 0000000..704b803
--- /dev/null
+++ b/website/_includes/JB/comments-providers/livefyre
@@ -0,0 +1,6 @@
+<script type='text/javascript' 
src='http://zor.livefyre.com/wjs/v1.0/javascripts/livefyre_init.js'></script>
+<script type='text/javascript'>
+    var fyre = LF({
+        site_id: {{ site.JB.comments.livefyre.site_id }}
+    });
+</script>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/feedburner
----------------------------------------------------------------------
diff --git a/website/_includes/JB/feedburner b/website/_includes/JB/feedburner
new file mode 100644
index 0000000..6dba603
--- /dev/null
+++ b/website/_includes/JB/feedburner
@@ -0,0 +1,3 @@
+{% if site.author.feedburner != null %}
+<link href="http://feeds.feedburner.com/{{ site.author.feedburner }}" 
rel="alternate" title="{{ site.title }}" type="application/atom+xml" />
+{% endif %}

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/file_exists
----------------------------------------------------------------------
diff --git a/website/_includes/JB/file_exists b/website/_includes/JB/file_exists
new file mode 100644
index 0000000..f40080f
--- /dev/null
+++ b/website/_includes/JB/file_exists
@@ -0,0 +1,26 @@
+{% comment %}<!--
+  param:  file = "/example/file.png"
+  return: file_exists_result = true
+  
+  examples:
+    {% include JB/file_exists file="/404.html" %}
+    {% if file_exists_result %}Found "/404.html"!{% else %}Did not find 
"/404.html".{% endif %}
+
+    {% assign filename = "/405.html" %}
+    {% include JB/file_exists file=filename %}
+    {% if file_exists_result %}Found "{{ filename }}"!{% else %}Did not find 
"{{ filename }}".{% endif %}
+
+  NOTE: the BREAK statement in the FOR loop assumes Liquid >= 2.5.0
+  
+-->{% endcomment %}
+
+{% assign file_exists_result = false %}
+
+{% if include.file %}
+       {% for static_file in site.static_files %}
+               {% if static_file.path == include.file %}
+                       {% assign file_exists_result = true %}
+                       {% break %}
+               {% endif %}
+       {% endfor %}
+{% endif %}

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/gist
----------------------------------------------------------------------
diff --git a/website/_includes/JB/gist b/website/_includes/JB/gist
new file mode 100644
index 0000000..38a5b1c
--- /dev/null
+++ b/website/_includes/JB/gist
@@ -0,0 +1,19 @@
+{% comment %}<!--
+The gist include allows you to embed GitHub Gist snippets in your content.
+Usage:
+  1) include JB/gist
+  2) specify the gist_id parameter (REQUIRED)
+  3) specify the gist_file parameter (OPTIONAL)
+  example:
+    <ul>
+         {% include JB/gist gist_id="fdcfeaba4f33c172828d" %}
+         {% include JB/gist gist_id="fdcfeaba4f33c172828d" 
gist_file="jekyll-bootstrap.js" %}
+       </ul>
+-->{% endcomment %}
+
+<div id="gist">
+<script src="https://gist.github.com/{{ include.gist_id }}.js{% if 
include.gist_file %}?file={{ include.gist_file }}{% endif %}"></script>
+<noscript>
+<pre>https://gist.github.com/{{include.gist_id}}.js{% if include.gist_file 
%}?file={{include.gist_file}}{% endif %}</pre>
+</noscript>
+</div>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/is_production
----------------------------------------------------------------------
diff --git a/website/_includes/JB/is_production 
b/website/_includes/JB/is_production
new file mode 100644
index 0000000..3548f8c
--- /dev/null
+++ b/website/_includes/JB/is_production
@@ -0,0 +1,39 @@
+{% capture jbcache %}{% comment %}
+
+  Determine whether or not the site is being built in a production environment.
+  
+  Parameters:
+    None.
+
+  Returns:
+    is_production: [true|false]
+    jb_prod_env: [development|github|other]
+
+  Examples:
+  
+    {% include JB/is_production %}
+    
+    {% if is_production != true %}
+      <h3>This is Private</h3>
+      <p>I love to watch television in my undies. Don't tell anyone!</p>
+    {% endif %}
+    
+    <h3>This is Public</h3>
+    <p>I have no unusual quirks.</p>
+
+{% endcomment %}
+
+{% assign is_production = false %}
+{% assign jb_prod_env = "development" %}
+
+{% if jekyll.environment != "development" %}
+  {% assign is_production = true %}
+  {% assign jb_prod_env = jekyll.environment %}
+{% endif %}
+
+{% if site.github %}
+  {% assign is_production = true %}
+  {% assign jb_prod_env = "github" %}
+{% endif %}
+
+{% endcapture %}{% assign jbcache = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/liquid_raw
----------------------------------------------------------------------
diff --git a/website/_includes/JB/liquid_raw b/website/_includes/JB/liquid_raw
new file mode 100644
index 0000000..da2d359
--- /dev/null
+++ b/website/_includes/JB/liquid_raw
@@ -0,0 +1,32 @@
+{% comment%}<!--
+The liquid_raw helper is a way to display raw liquid code, as opposed to 
parsing it.
+Normally you'd use Liquid's built in 'raw' tag. 
+The problem is GitHub Jekyll does not support the current Liquid release.
+GitHub Jekyll supports the deprecated 'literal' tag.
+Using one will break the other if you plan to deploy to GitHub pages.
+  see: https://github.com/mojombo/jekyll/issues/425
+
+Since I don't want to mess with Liquid versions, I'll just rewrite the way I 
+intend to give liquid examples. It's not an elegant solution by any means:
+
+Usage: 
+  1) Define a 'text' variable with the block of liquid code you intend to 
display.
+  2) Pass the text variable to include JB/liquid_raw
+
+  example:
+  {% capture text %}|.% for tag in tags_list %.|
+    <li><a href="|.{ site.var.tags_path }.||.{ tag[0] }.|-ref">|.{ tag[0] }.| 
<span>|.{tag[1].size}.|</span></a></li>
+  |.% endfor %.|
+
+  |.% assign tags_list = null %.|{% endcapture %}    
+  {% include JB/liquid_raw %}
+  
+  As seen here, you must use "|." and ".|" as opening and closing brackets.
+-->{% endcomment%}
+
+{% if site.JB.liquid_raw.provider == "custom" %}
+  {% include custom/liquid_raw %}
+{% else %}
+  <pre><code>{{text | replace:"|.", "&#123;" | replace:".|", "&#125;" | 
replace:">", "&gt;" | replace:"<", "&lt;" }}</code></pre>
+{% endif %}
+{% assign text = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/pages_list
----------------------------------------------------------------------
diff --git a/website/_includes/JB/pages_list b/website/_includes/JB/pages_list
new file mode 100644
index 0000000..42f827a
--- /dev/null
+++ b/website/_includes/JB/pages_list
@@ -0,0 +1,39 @@
+{% comment %}<!--
+The pages_list include is a listing helper.
+Usage:
+  1) assign the 'pages_list' variable to a valid array of pages or posts.
+  2) include JB/pages_list
+  example:
+    <ul>
+         {% assign pages_list = site.pages %}  
+         {% include JB/pages_list %}
+       </ul>
+       
+  Grouping: (optional): 
+       assign the 'group' variable to constrain the list to only pages/posts
+       in the given group. Note you must define the group manually in the 
page/post
+       meta-data to use this feature.
+       Grouping is mainly helpful for non-post pages.
+       If you want to group posts, it's easier/better to tag them, then pass 
the tagged posts array.
+       i.e. site.tags.cool_tag (this returns an array of posts tagged: 
cool_tag)
+       
+  This helper can be seen in use at: ../_layouts/default.html
+-->{% endcomment %}
+
+{% if site.JB.pages_list.provider == "custom" %}
+  {% include custom/pages_list %}
+{% else %}
+  {% for node in pages_list %}
+    {% if node.title != null %}
+      {% if group == null or group == node.group %}
+       {% if page.url == node.url %}
+       <li class="active"><a href="{{ BASE_PATH }}{{node.url}}" 
class="active">{{node.title}}</a></li>
+       {% else %}
+       <li><a href="{{ BASE_PATH }}{{node.url}}">{{node.title}}</a></li>
+       {% endif %}
+      {% endif %}
+    {% endif %}
+  {% endfor %}
+{% endif %}
+{% assign pages_list = nil %}
+{% assign group = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/posts_collate
----------------------------------------------------------------------
diff --git a/website/_includes/JB/posts_collate 
b/website/_includes/JB/posts_collate
new file mode 100644
index 0000000..f612ade
--- /dev/null
+++ b/website/_includes/JB/posts_collate
@@ -0,0 +1,55 @@
+{% comment %}<!--
+Collate_posts helper. Collated posts by year and month.
+Usage:
+  1) assign the 'posts_collate' variable to a valid array of posts.
+  2) include JB/posts_collate
+  example:
+    {% assign posts_collate = site.posts %}
+    {% include JB/posts_collate %}
+
+  Ordering:
+    Posts are displayed in reverse chronological order.
+    For normal chronological order:
+      1) Change the for loop to this:
+        => 'for post in site.posts reversed'
+      2) Next make sure to change 'post.previous.date' to:
+        => 'post.next.date'
+        
+-->{% endcomment %}
+
+{% if site.JB.posts_collate.provider == "custom" %}
+  {% include custom/posts_collate %}
+{% else %}
+  {% for post in posts_collate  %}
+    {% capture this_year %}{{ post.date | date: "%Y" }}{% endcapture %}
+    {% capture this_month %}{{ post.date | date: "%B" }}{% endcapture %}
+    {% capture next_year %}{{ post.previous.date | date: "%Y" }}{% endcapture 
%}
+    {% capture next_month %}{{ post.previous.date | date: "%B" }}{% endcapture 
%}
+  
+    {% if forloop.first %}
+      <h2>{{this_year}}</h2>
+      <h3>{{this_month}}</h3>
+      <ul>
+    {% endif %}
+  
+    <li><span>{{ post.date | date: "%B %e, %Y" }}</span> &raquo; <a href="{{ 
BASE_PATH }}{{ post.url }}">{{ post.title }}</a></li>
+  
+    {% if forloop.last %}
+      </ul>
+    {% else %}
+      {% if this_year != next_year %}
+        </ul>
+        <h2>{{next_year}}</h2>
+        <h3>{{next_month}}</h3>
+        <ul>
+      {% else %}    
+        {% if this_month != next_month %}
+          </ul>
+          <h3>{{next_month}}</h3>
+          <ul>
+        {% endif %}
+      {% endif %}
+    {% endif %}
+  {% endfor %}
+{% endif %}
+{% assign posts_collate = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/setup
----------------------------------------------------------------------
diff --git a/website/_includes/JB/setup b/website/_includes/JB/setup
new file mode 100644
index 0000000..b15f595
--- /dev/null
+++ b/website/_includes/JB/setup
@@ -0,0 +1,27 @@
+{% capture jbcache %}
+  <!--
+  - Dynamically set liquid variables for working with URLs/paths
+  -->
+  {% include JB/is_production %}
+  {% if site.JB.setup.provider == "custom" %}
+    {% include custom/setup %}
+  {% else %}
+    {% if is_production and site.JB.BASE_PATH and site.JB.BASE_PATH != '' %}
+      {% assign BASE_PATH = site.JB.BASE_PATH %}
+      {% assign HOME_PATH = site.JB.BASE_PATH %}
+    {% else %}
+      {% assign BASE_PATH = nil %}
+      {% assign HOME_PATH = "/" %}
+    {% endif %}
+
+    {% if site.JB.ASSET_PATH %}
+      {% assign ASSET_PATH = site.JB.ASSET_PATH %}
+    {% else %}
+      {% if layout.theme.name %}
+      {% capture ASSET_PATH %}{{ BASE_PATH }}/assets/themes/{{ 
layout.theme.name }}{% endcapture %}
+      {% else %}
+      {% capture ASSET_PATH %}{{ BASE_PATH }}/assets/themes/{{ page.theme.name 
}}{% endcapture %}
+      {% endif %}
+    {% endif %}  
+  {% endif %}
+{% endcapture %}{% assign jbcache = nil %}

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/sharing
----------------------------------------------------------------------
diff --git a/website/_includes/JB/sharing b/website/_includes/JB/sharing
new file mode 100644
index 0000000..175a001
--- /dev/null
+++ b/website/_includes/JB/sharing
@@ -0,0 +1,9 @@
+{% include JB/is_production %}
+{% if is_production and site.JB.sharing.provider and page.JB.sharing != false 
%}
+
+{% case site.JB.sharing.provider %}
+{% when "custom" %}
+  {% include custom/sharing %}
+{% endcase %}
+
+{% endif %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/sort_collection
----------------------------------------------------------------------
diff --git a/website/_includes/JB/sort_collection 
b/website/_includes/JB/sort_collection
new file mode 100644
index 0000000..1e32015
--- /dev/null
+++ b/website/_includes/JB/sort_collection
@@ -0,0 +1,81 @@
+{% capture jbcache %}{% comment %}
+
+  Sort the given array or map.
+  
+  Parameters:
+    collection: the array or map to sort [REQUIRED]
+    sort_by: the property to sort by [OPTIONAL]
+    sort_descending: reverse the collection [OPTIONAL]
+
+  Returns:
+    sort_result: the sorted collection
+
+  Examples:
+    <h3>Pages</h3>
+    <ol>
+      {% include JB/sort_collection collection=site.pages sort_by="title" %}
+      {% assign pages_list = sort_result %}
+      {% include JB/pages_list %}
+    </ol>
+
+    <h3>Pages [Reversed]</h3>
+    <ol>
+      {% include JB/sort_collection collection=site.pages sort_by="title" 
sort_descending=true %}
+      {% assign pages_list = sort_result %}
+      {% include JB/pages_list %}
+    </ol>
+
+    <h3>Array</h3>
+    <ol>
+      {% assign test_array = "one,two,three,four" | split: "," %}
+      {% include JB/sort_collection collection=test_array %}
+      {% for test in sort_result %}
+        <li>{{test}}</li>
+      {% endfor %}
+    </ol>
+
+    <h3>Array [Reversed]</h3>
+    <ol>
+      {% assign test_array = "one,two,three,four" | split: "," %}
+      {% include JB/sort_collection collection=test_array sort_descending=true 
%}
+      {% for test in sort_result %}
+        <li>{{test}}</li>
+      {% endfor %}
+    </ol>
+
+{% endcomment %}
+
+{% assign is_array = true %}
+{% assign sort_result = "," | split: "," %}
+{% assign collection = include.collection %}
+{% if include.sort_by %}
+  {% assign sort_by = include.sort_by %}
+{% else %}
+  {% assign sort_by = "title" %}
+{% endif %}
+
+{% if collection and collection.size > 0 %}
+  {% for x in collection.first %}
+    {% if x[1].size > 0 %}
+      {% assign is_array = false %}
+    {% endif %}
+    {% break %}
+  {% endfor %}
+
+  {% if is_array == false %}
+    {% assign sort_result = collection | sort: sort_by %}
+  {% else %}
+    {% assign sort_result = collection | sort %}
+  {% endif %}
+  
+  {% if include.sort_descending %}
+    {% assign reversed = "," | split: "," %}
+    {% for index in (1..sort_result.size) %}
+      {% assign i = sort_result.size | minus: index %}
+      {% assign reversed = reversed | push: sort_result[i] %}
+    {% endfor %}
+    {% assign sort_result = reversed %}
+    {% assign reversed = nil %}
+  {% endif %}
+
+{% endif %}{% endcapture %}{% assign jbcache = nil %}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/JB/tags_list
----------------------------------------------------------------------
diff --git a/website/_includes/JB/tags_list b/website/_includes/JB/tags_list
new file mode 100644
index 0000000..8eb62a7
--- /dev/null
+++ b/website/_includes/JB/tags_list
@@ -0,0 +1,33 @@
+{% comment %}<!--
+The tags_list include is a listing helper for tags.
+Usage:
+  1) assign the 'tags_list' variable to a valid array of tags.
+  2) include JB/tags_list
+  example:
+    <ul>
+         {% assign tags_list = site.tags %}  
+         {% include JB/tags_list %}
+       </ul>
+  
+  Notes: 
+    Tags can be either a Hash of tag objects (hashes) or an Array of tag-names 
(strings).
+    The encapsulating 'if' statement checks whether tags_list is a Hash or 
Array.
+    site.tags is a Hash while page.tags is an array.
+    
+  This helper can be seen in use at: ../_layouts/default.html
+-->{% endcomment %}
+
+{% if site.JB.tags_list.provider == "custom" %}
+  {% include custom/tags_list %}
+{% else %}
+  {% if tags_list.first[0] == null %}
+    {% for tag in tags_list %} 
+       <li><a href="{{ BASE_PATH }}{{ site.JB.tags_path }}#{{ tag }}-ref">{{ 
tag }} <span>{{ site.tags[tag].size }}</span></a></li>
+    {% endfor %}
+  {% else %}
+    {% for tag in tags_list %} 
+       <li><a href="{{ BASE_PATH }}{{ site.JB.tags_path }}#{{ tag[0] 
}}-ref">{{ tag[0] }} <span>{{ tag[1].size }}</span></a></li>
+    {% endfor %}
+  {% endif %}
+{% endif %}
+{% assign tags_list = nil %}

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/body-old.html
----------------------------------------------------------------------
diff --git a/website/_includes/body-old.html b/website/_includes/body-old.html
deleted file mode 100644
index 272e483..0000000
--- a/website/_includes/body-old.html
+++ /dev/null
@@ -1,22 +0,0 @@
-    <nav class="navbar navbar-inverse navbar-fixed-top">
-        <div class="container-fluid">
-            <div class="navbar-header">
-                <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#navbar" aria-expanded="false" 
aria-controls="navbar">
-                    <span class="sr-only">Toggle navigation</span>
-                    <span class="icon-bar"></span>
-                    <span class="icon-bar"></span>
-                    <span class="icon-bar"></span>
-                </button>
-                <a class="navbar-brand" href="/"><i class="fa fa-heart"></i> 
{{ site.data.global.title }}</a>
-            </div>
-            <div id="navbar" class="navbar-collapse collapse">
-                <ul class="nav navbar-nav navbar-right">
-                    {% for item in site.data.nav.main %}
-                        <li>
-                            <a href="{{ item.url }}">{{ item.text }}</a>
-                        </li>
-                    {% endfor %}
-                </ul>
-            </div>
-        </div>
-    </nav>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/footer.html
----------------------------------------------------------------------
diff --git a/website/_includes/footer.html b/website/_includes/footer.html
deleted file mode 100644
index 1d1c904..0000000
--- a/website/_includes/footer.html
+++ /dev/null
@@ -1,13 +0,0 @@
-
-    <footer class="site-footer">
-        <div class="container">
-            <div class="row">
-                <div class="col-md-12">
-                    <p class="text-muted">{{ site.data.global.footer_text 
}}</p>
-                </div>
-            </div>
-        </div>
-    </footer>
-
-    </body>
-</html>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/header.html
----------------------------------------------------------------------
diff --git a/website/_includes/header.html b/website/_includes/header.html
deleted file mode 100644
index 0c29215..0000000
--- a/website/_includes/header.html
+++ /dev/null
@@ -1,75 +0,0 @@
-<!doctype html>
-<!--[if lt IE 7 ]><html itemscope itemtype="http://schema.org/{% if page.id or 
post.id %}Article{% else %}Organization{% endif %}" id="ie6" class="ie ie-old" 
lang="en-US"><![endif]-->
-<!--[if IE 7 ]>   <html itemscope itemtype="http://schema.org/{% if page.id or 
post.id %}Article{% else %}Organization{% endif %}" id="ie7" class="ie ie-old" 
lang="en-US"><![endif]-->
-<!--[if IE 8 ]>   <html itemscope itemtype="http://schema.org/{% if page.id or 
post.id %}Article{% else %}Organization{% endif %}" id="ie8" class="ie ie-old" 
lang="en-US"><![endif]-->
-<!--[if IE 9 ]>   <html itemscope itemtype="http://schema.org/{% if page.id or 
post.id %}Article{% else %}Organization{% endif %}" id="ie9" class="ie" 
lang="en-US"><![endif]-->
-<!--[if gt IE 9]><!--><html itemscope itemtype="http://schema.org/{% if 
page.id or post.id %}Article{% else %}Organization{% endif %}" 
lang="en-US"><!--<![endif]-->
-<head>
-    <meta name="author" content="The Apache Software Foundation">
-
-    <!-- Enable responsive viewport -->
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-
-    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
-    <!--[if lt IE 9]>
-      <script 
src="http://html5shim.googlecode.com/svn/trunk/html5.js";></script>
-    <![endif]-->
-
-    <!-- Le styles -->
-    <link 
href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css";
 rel="stylesheet" 
integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN"
 crossorigin="anonymous">
-    <link href="https://fonts.googleapis.com/icon?family=Material+Icons";>
-    <link href="/assets/themes/mahout/bootstrap/css/bootstrap.css" 
rel="stylesheet">
-    <link href="/assets/themes/mahout/css/style.css?body=1" rel="stylesheet" 
type="text/css">
-    <link href="/assets/themes/mahout/css/syntax.css" rel="stylesheet"  
type="text/css" media="screen" /> 
-
-<!--
-    <link href="/assets/themes/mahout/css/main.css" rel="stylesheet"  
type="text/css" media="screen" /> 
-    <link href="/assets/themes/mahout/css/global.css" rel="stylesheet"  
type="text/css" media="screen" /> 
-    <link href="/assets/themes/mahout/css/global__.css" rel="stylesheet"  
type="text/css" media="screen" /> 
--->
-    <!-- Le fav and touch icons -->
-    <!-- Update these with your own images
-    <link rel="shortcut icon" href="images/favicon.ico">
-    <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
-    <link rel="apple-touch-icon" sizes="72x72" 
href="images/apple-touch-icon-72x72.png">
-    <link rel="apple-touch-icon" sizes="114x114" 
href="images/apple-touch-icon-114x114.png">
-    -->
-
-    <!-- Js -->
-    <script src="https://code.jquery.com/jquery-1.10.2.min.js";></script>
-    <script src="/assets/themes/mahout/bootstrap/js/bootstrap.min.js"></script>
-<script type="text/x-mathjax-config">
-  MathJax.Hub.Config({
-    tex2jax: {
-      skipTags: ['script', 'noscript', 'style', 'textarea', 'pre']
-    }
-  });
-  MathJax.Hub.Queue(function() {
-    var all = MathJax.Hub.getAllJax(), i;
-    for(i = 0; i < all.length; i += 1) {
-      all[i].SourceElement().parentNode.className += ' has-jax';
-    }
-  });
-  </script>
-  <script type="text/javascript">
-    var mathjax = document.createElement('script'); 
-    mathjax.type = 'text/javascript'; 
-    mathjax.async = true;
-
-    mathjax.src = ('https:' == document.location.protocol) ?
-        
'https://c328740.ssl.cf1.rackcdn.com/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML'
 : 
-        
'http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML';
-    
-      var s = document.getElementsByTagName('script')[0]; 
-    s.parentNode.insertBefore(mathjax, s);
-  </script>
-
-
-    <!-- atom & rss feed -->
-    <link href="/atom.xml" type="application/atom+xml" rel="alternate" 
title="Sitewide ATOM Feed">
-    <link href="/rss.xml" type="application/rss+xml" rel="alternate" 
title="Sitewide RSS Feed">
-
-
-</head>
-
-

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/homepage.html
----------------------------------------------------------------------
diff --git a/website/_includes/homepage.html b/website/_includes/homepage.html
deleted file mode 100644
index 0928b2c..0000000
--- a/website/_includes/homepage.html
+++ /dev/null
@@ -1,160 +0,0 @@
-
-<div class="jumbotron">
-  <div class="container">
-    <h1>Apache Mahout - DRAFT </h1>
-    <p>A distributed linear algebra framework that runs on Spark, Flink, GPU's 
and more!<br/>
-      Use Mahout's library of machine learning algorithms or roll your own!  
Use Mahout-Samsara to write matrix
-      algebra using R like syntax.  Check out our tutorials and quick start 
guide to get rolling.
-    </p>
-    <div class="border row">
-      <div class="col-md-12 col-sm-12 col-xs-12 text-center newBtn">
-        <a href="http://youtube.com"; target="_zeppelinVideo" class="btn 
btn-primary btn-lg bigFingerButton" role="button">Tutorial Video</a>
-        <a href="https://github.com/apache/mahout"; class="btn btn-primary 
btn-lg bigFingerButton" role="button">GET LATEST MAHOUT</a>
-      </div>
-    </div>
-  </div>
-</div>  
-
-<!-- 3 wide column -->
-
-<!--
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-
-
-
-<div class="new">
-  <div class="container">
-    <h2>Latest Release</h2>
-    <span class="newZeppelin center-block">Apache Mahout 0.13.0</span>
-    <div class="border row">
-      <div class="border col-md-4 col-sm-4">
-        <h4>Simple and <br/>Extensible</h4>
-        <div class="viz">
-          <p>
-            Build your own algorithms using Mahouts R like interface.  See an 
example in this 
-            <a href="" target="_blank">demo</a>
-          </p>
-        </div>
-      </div>
-      <div class="border col-md-4 col-sm-4">
-        <h4>Support for Multiple <br/>Distributed Backends</h4>
-        <div class="multi">
-        <p>
-           Custom bindings for Spark, Flink, and H20 enable a write once run 
anywhere machine learning platform
-          <a class="thumbnail text-center" href="#thumb">
-            See more in this DEMO.
-            <span><img src="./assets/themes/zeppelin/img/scope.gif" 
style="max-width: 55vw" /></span>
-          </a> 
-        </p>
-        </div>
-      </div>
-      <div class="border col-md-4 col-sm-4">
-        <h4>Introducing Samsara an R<br/> dsl for writing ML algos</h4>
-        <div class="personal">
-        <p>
-          Use this capability to write algorithms at scale, that will run on 
any backend 
-        </p>
-        </div>
-      </div>
-    </div>
-    <div class="border row">
-      <div class="border col-md-4 col-sm-4">
-        <h4>Support for GPUs</h4>
-        <p>
-          Distributed GPU Matrix-Matrix and Matrix-Vector multiplication on 
Spark along with sparse and dense matrix GPU-backed support.
-        </p>
-      </div>
-      <div class="border col-md-4 col-sm-4">
-        <h4>Extensible Algorithms Framework</h4>
-        <p>
-           A new scikit-learn-like framework for algorithms with the goal for
-           creating a consistent API for various machine-learning algorithms
-        </p>
-      </div>
-      <div class="border col-md-4 col-sm-4">
-        <h4>0.13.1 - Future Plans</h4>
-        <p>
-          Further Native Integration 
-          * JCuda backing for In-core Matrices and CUDA solvers
-          * GPU/OpenMP Acceleration for linear solvers
-          * Scala 2.11 Support
-          * Spark 2.x Support
-        </p>
-      </div>
-    </div>
-    <div class="col-md-12 col-sm-12 col-xs-12 text-center">
-      <p style="text-align:center; margin-top: 32px; font-size: 14px; color: 
gray; font-weight: 200; font-style: italic; padding-bottom: 0;">See more 
details in 
-        <a href="tbd">0.13.0 Release Note</a>
-      </p>
-    </div>
-  </div>
-</div>
-
-      <!--
-Licensed under the Apache License, Version 2.0 (the "License");
-you may not use this file except in compliance with the License.
-You may obtain a copy of the License at
-
-http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
--->
-
-
-
-        <div class="container">
-            <div class="row">
-                <div class="col-md-12">
-                
-
-                </div>
-            </div>
-            <div class="row">
-                <div class="col-md-12">
-                    {% for post in paginator.posts %}
-                        {% include tile.html %}
-                    {% endfor %}
-
-
-                    
-                </div>
-            </div>
-        </div>
-
-
-
-<div class="new">
-  <div class="container">
-    <h2>Mahout on Twitter</h2>
-    <br/>
-    <div class="row">
-      <div class="col-md-12 col-sm-12 col-xs-12 text-center">
-        <div class='jekyll-twitter-plugin'><a class="twitter-timeline" 
data-width="500" data-tweet-limit="4" data-chrome="nofooter" 
href="https://twitter.com/ApacheMahout";>Tweets by ApacheMahout</a>
-<script async src="//platform.twitter.com/widgets.js" 
charset="utf-8"></script></div>
-      </div>
-      <div class="col-md-12 col-sm-12 col-xs-12 text-center twitterBtn">
-        <p style="text-align:center; margin-top: 32px; font-size: 12px; color: 
gray; font-weight: 200; font-style: italic; padding-bottom: 0;">See more tweets 
or</p>
-        <a href="https://twitter.com/ApacheMahout"; target="_blank" class="btn 
btn-primary btn-lg round" role="button">
-          Follow Mahout on &nbsp;
-          <i class="fa fa-twitter fa-lg" aria-hidden="true"></i>
-        </a>
-      </div>
-    </div>
-  </div>
-  <hr>
-</div>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/navbar_main.html
----------------------------------------------------------------------
diff --git a/website/_includes/navbar_main.html 
b/website/_includes/navbar_main.html
deleted file mode 100644
index 09877ce..0000000
--- a/website/_includes/navbar_main.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<body class="{{ post.title | downcase | replace:' ','-' | replace:',','' | 
strip_html }}{% if page.category %} category-{{ page.category }}{% endif %}{% 
if page.layout-class %} layout-{{ page.layout-class }}{% endif %}">
-
-    <div class="navbar navbar-inverse navbar-fixed-top" role="navigation">
-      <div class="container">
-        <div class="navbar-header">
-          <button type="button" class="navbar-toggle" data-toggle="collapse" 
data-target=".navbar-collapse">
-            <span class="sr-only">Toggle navigation</span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-            <span class="icon-bar"></span>
-          </button>
-          <a class="navbar-brand" href="/">
-            <img src="/assets/themes/mahout/img/mahout-logo.png" width="75" 
alt="I'm mahout">
-            Apache Mahout
-          </a>
-        </div>
-        <nav class="navbar-collapse collapse" role="navigation">
-          <ul class="nav navbar-nav navbar-right">
-
-            <li id="community">
-              <a href="#" data-toggle="dropdown" 
class="dropdown-toggle">Community<b class="caret"></b></a>
-              <ul class="dropdown-menu">
-                <li><a href="/how-to-contribute">How to Contribute</a></li>
-                <li><a href="/issue-tracker">Issues Tracking (JIRA)</a></li>
-                <li><a href="/developers">Developers</a></li>
-                <li><a href="/mailing-lists">Mailing Lists</a></li>
-                <li><a href="/reference">References</a></li>
-              </ul>
-            </li>         
-            
-            <!-- Download -->
-            <li id="download">
-              <a href="#" data-toggle="dropdown" 
class="dropdown-toggle">Download<b class="caret"></b></a>
-              <ul class="dropdown-menu">
-                <li><a href="https://github.com/apache/mahout";>Download 
Mahout</a></li>
-              </ul>
-            </li>
-
-            <!-- Docs -->
-            <li id="docs">
-              <a href="#" data-toggle="dropdown" 
class="dropdown-toggle">Docs<b class="caret"></b></a>
-              <ul class="dropdown-menu">
-                <li><span><b>Release</b><span></li>
-                <li><a href="/docs/0.13.0/quickstart">0.13.0</a></li>
-                <li><a href="/tbd">Older Versions</a></li>
-                <li role="separator" class="divider"></li>
-                <li><span><b>Snapshot</b>&nbsp;(development)<span></li>
-                <li><a href="/docs/0.13.1-SNAPSHOT">0.13.1-SNAPSHOT</a></li>
-              </ul>
-            </li>
-
-            <li><a href="/docs/0.13.0/quickstart">QuickStart</a></li>
-            <li><a href="https://github.com/apache/mahout";>GitHub</a></li>
-
-            <!-- Apache -->
-            <li id="apache">
-              <a href="#" data-toggle="dropdown" 
class="dropdown-toggle">Apache<b class="caret"></b></a>
-               <ul class="dropdown-menu">
-                <li><a 
href="http://www.apache.org/foundation/how-it-works.html";>Apache Software 
Foundation</a></li>
-                <li><a href="http://www.apache.org/licenses/";>Apache 
License</a></li>
-                <li><a 
href="http://www.apache.org/foundation/sponsorship.html";>Sponsorship</a></li>
-                <li><a 
href="http://www.apache.org/foundation/thanks.html";>Thanks</a></li>
-              </ul>
-            </li>
-          </ul>
-        </nav><!--/.navbar-collapse -->
-      </div>
-    </div>
-

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/pagination.html
----------------------------------------------------------------------
diff --git a/website/_includes/pagination.html 
b/website/_includes/pagination.html
deleted file mode 100644
index fcccc8d..0000000
--- a/website/_includes/pagination.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<nav class="pagination-wrap">
-    <ul class="pagination">
-        {% if paginator.previous_page %}
-        <li>
-            <a href="{{ paginator.previous_page_path | prepend: site.baseurl | 
replace: '//', '/' }}" aria-label="Previous">
-                <span aria-hidden="true">&laquo;</span>
-            </a>
-        </li>
-        {% endif %}
-
-        {% for page in (1..paginator.total_pages) %}
-            {% if page == paginator.page %}
-            <li class="active">
-                <a href="#">{{ page }}</a>
-            </li>
-            {% elsif page == 1 %}
-            <li>
-                <a href="{{ paginator.previous_page_path | prepend: 
site.baseurl | replace: '//', '/' }}">{{ page }}</a>
-            </li>
-            {% else %}
-            <li>
-                <a href="{{ site.paginate_path | prepend: site.baseurl | 
replace: '//', '/' | replace: ':num', page }}">{{ page }}</a>
-            </li>
-            {% endif %}
-        {% endfor %}
-
-        {% if paginator.next_page %}
-        <li>
-            <a href="{{ paginator.next_page_path | prepend: site.baseurl | 
replace: '//', '/' }}" aria-label="Next">
-                <span aria-hidden="true">&raquo;</span>
-            </a>
-        </li>
-        {% endif %}
-    </ul>
-</nav>
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/themes/mahout/body-old.html
----------------------------------------------------------------------
diff --git a/website/_includes/themes/mahout/body-old.html 
b/website/_includes/themes/mahout/body-old.html
new file mode 100644
index 0000000..272e483
--- /dev/null
+++ b/website/_includes/themes/mahout/body-old.html
@@ -0,0 +1,22 @@
+    <nav class="navbar navbar-inverse navbar-fixed-top">
+        <div class="container-fluid">
+            <div class="navbar-header">
+                <button type="button" class="navbar-toggle collapsed" 
data-toggle="collapse" data-target="#navbar" aria-expanded="false" 
aria-controls="navbar">
+                    <span class="sr-only">Toggle navigation</span>
+                    <span class="icon-bar"></span>
+                    <span class="icon-bar"></span>
+                    <span class="icon-bar"></span>
+                </button>
+                <a class="navbar-brand" href="/"><i class="fa fa-heart"></i> 
{{ site.data.global.title }}</a>
+            </div>
+            <div id="navbar" class="navbar-collapse collapse">
+                <ul class="nav navbar-nav navbar-right">
+                    {% for item in site.data.nav.main %}
+                        <li>
+                            <a href="{{ item.url }}">{{ item.text }}</a>
+                        </li>
+                    {% endfor %}
+                </ul>
+            </div>
+        </div>
+    </nav>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/themes/mahout/default.html
----------------------------------------------------------------------
diff --git a/website/_includes/themes/mahout/default.html 
b/website/_includes/themes/mahout/default.html
new file mode 100644
index 0000000..529badf
--- /dev/null
+++ b/website/_includes/themes/mahout/default.html
@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+
+    <title>{{ page.title }}</title>
+    {% if page.description %}<meta name="description" content="{{ 
page.description }}">{% endif %}
+    <meta name="author" content="{{ site.author.name }}">
+
+    <!-- Enable responsive viewport -->
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <!-- Bootstrap styles -->
+    <link href="{{ ASSET_PATH }}/bootstrap/css/bootstrap.css" rel="stylesheet">
+    <!-- Optional theme -->
+    <link href="{{ ASSET_PATH }}/bootstrap/css/bootstrap-theme.min.css" 
rel="stylesheet">
+    <!-- Sticky Footer -->
+    <link href="{{ ASSET_PATH }}/bootstrap/css/bs-sticky-footer.css" 
rel="stylesheet">
+    
+    <!-- Custom styles -->
+    <link href="{{ ASSET_PATH }}/css/style.css?body=1" rel="stylesheet" 
type="text/css" media="all">
+
+    <!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media 
queries -->
+    <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
+    <!--[if lt IE 9]>
+      <script 
src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js";></script>
+      <script 
src="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js";></script>
+    <![endif]-->
+
+    <!-- Fav and touch icons -->
+    <!-- Update these with your own images
+      <link rel="shortcut icon" href="images/favicon.ico">
+      <link rel="apple-touch-icon" href="images/apple-touch-icon.png">
+      <link rel="apple-touch-icon" sizes="72x72" 
href="images/apple-touch-icon-72x72.png">
+      <link rel="apple-touch-icon" sizes="114x114" 
href="images/apple-touch-icon-114x114.png">
+    -->
+
+    <!-- atom & rss feed -->
+    <link href="{{ BASE_PATH }}{{ site.JB.atom_path }}" 
type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed">
+    <link href="{{ BASE_PATH }}{{ site.JB.rss_path }}" 
type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed">
+
+  </head>
+
+  <body>
+  {% include themes/mahout/navbar_main.html %}
+
+      <div class="container">
+        {{ content }}
+      </div>
+
+    </div>
+
+    <div id="footer">
+      <div class="container">
+        <p>&copy; {{ site.time | date: '%Y' }} {{ site.author.name }}
+          with help from <a href="http://jekyllbootstrap.com"; target="_blank" 
title="The Definitive Jekyll Blogging Framework">Jekyll Bootstrap</a>
+          and <a href="http://getbootstrap.com"; target="_blank">Bootstrap</a>
+        </p>
+      </div>
+    </div>
+
+    {% include JB/analytics %}
+
+
+    <!-- Latest compiled and minified JavaScript, requires jQuery 1.x (2.x not 
supported in IE8) -->
+    <!-- Placed at the end of the document so the pages load faster -->
+    <script 
src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js";></script>
+    <script src="{{ ASSET_PATH }}/bootstrap/js/bootstrap.min.js"></script>
+  </body>
+</html>

http://git-wip-us.apache.org/repos/asf/mahout/blob/a60c79e7/website/_includes/themes/mahout/footer.html
----------------------------------------------------------------------
diff --git a/website/_includes/themes/mahout/footer.html 
b/website/_includes/themes/mahout/footer.html
new file mode 100644
index 0000000..1d1c904
--- /dev/null
+++ b/website/_includes/themes/mahout/footer.html
@@ -0,0 +1,13 @@
+
+    <footer class="site-footer">
+        <div class="container">
+            <div class="row">
+                <div class="col-md-12">
+                    <p class="text-muted">{{ site.data.global.footer_text 
}}</p>
+                </div>
+            </div>
+        </div>
+    </footer>
+
+    </body>
+</html>
\ No newline at end of file

Reply via email to