From 446d486a0fb725f3df76d9b6e8d2bca02042805b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Samy=20Pess=C3=A9?= Date: Fri, 4 Apr 2014 14:10:56 -0700 Subject: [PATCH] Add base for theming --- Gruntfile.js | 6 +++--- lib/generate/site/index.js | 10 ++++++++-- theme/README.md | 3 +++ {assets/static => theme/assets}/app.js | 0 .../assets}/fonts/fontawesome/FontAwesome.otf | Bin .../fonts/fontawesome/fontawesome-webfont.eot | Bin .../fonts/fontawesome/fontawesome-webfont.svg | 0 .../fonts/fontawesome/fontawesome-webfont.ttf | Bin .../fonts/fontawesome/fontawesome-webfont.woff | Bin .../assets}/fonts/helvetica/normal.eot | Bin .../assets}/fonts/helvetica/normal.svg | 0 .../assets}/fonts/helvetica/normal.ttf | Bin .../assets}/fonts/helvetica/normal.woff | Bin .../assets}/fonts/helvetica/ultralight.eot | Bin .../assets}/fonts/helvetica/ultralight.svg | 0 .../assets}/fonts/helvetica/ultralight.ttf | Bin .../assets}/fonts/helvetica/ultralight.woff | Bin {assets/static => theme/assets}/images/favicon.ico | Bin .../assets}/jsrepl/engines/javascript-default.js | 0 {assets/static => theme/assets}/jsrepl/jsrepl.js | 0 .../assets}/jsrepl/langs/javascript/jsrepl_js.js | 0 {assets/static => theme/assets}/jsrepl/sandbox.html | 0 {assets/static => theme/assets}/jsrepl/sandbox.js | 0 {assets/static => theme/assets}/style.css | 0 {assets => theme}/javascript/app.js | 0 {assets => theme}/javascript/core/exercise.js | 0 {assets => theme}/javascript/core/keyboard.js | 0 {assets => theme}/javascript/core/navigation.js | 0 {assets => theme}/javascript/core/progress.js | 0 {assets => theme}/javascript/core/sidebar.js | 0 {assets => theme}/javascript/core/state.js | 0 {assets => theme}/javascript/utils/analytic.js | 0 {assets => theme}/javascript/utils/execute.js | 0 {assets => theme}/javascript/utils/platform.js | 0 {assets => theme}/javascript/utils/sharing.js | 0 {assets => theme}/javascript/utils/storage.js | 0 {assets => theme}/javascript/vendors/jquery.js | 0 {assets => theme}/javascript/vendors/lodash.js | 0 {assets => theme}/javascript/vendors/mousetrap.js | 0 {assets => theme}/javascript/vendors/require.js | 0 {assets => theme}/stylesheets/book/body.less | 0 {assets => theme}/stylesheets/book/exercise.less | 0 {assets => theme}/stylesheets/book/footer.less | 0 {assets => theme}/stylesheets/book/header.less | 0 {assets => theme}/stylesheets/book/markdown.less | 0 {assets => theme}/stylesheets/book/progress.less | 0 {assets => theme}/stylesheets/book/summary.less | 0 {assets => theme}/stylesheets/fonts.less | 0 {assets => theme}/stylesheets/highlight.less | 0 {assets => theme}/stylesheets/main.less | 0 {assets => theme}/stylesheets/mixins.less | 0 {assets => theme}/stylesheets/variables.less | 0 .../stylesheets/vendors/bootstrap/alerts.less | 0 .../stylesheets/vendors/bootstrap/badges.less | 0 .../stylesheets/vendors/bootstrap/bootstrap.less | 0 .../stylesheets/vendors/bootstrap/breadcrumbs.less | 0 .../vendors/bootstrap/button-groups.less | 0 .../stylesheets/vendors/bootstrap/buttons.less | 0 .../stylesheets/vendors/bootstrap/carousel.less | 0 .../stylesheets/vendors/bootstrap/close.less | 0 .../stylesheets/vendors/bootstrap/code.less | 0 .../vendors/bootstrap/component-animations.less | 0 .../stylesheets/vendors/bootstrap/dropdowns.less | 0 .../stylesheets/vendors/bootstrap/forms.less | 0 .../stylesheets/vendors/bootstrap/glyphicons.less | 0 .../stylesheets/vendors/bootstrap/grid.less | 0 .../stylesheets/vendors/bootstrap/input-groups.less | 0 .../stylesheets/vendors/bootstrap/jumbotron.less | 0 .../stylesheets/vendors/bootstrap/labels.less | 0 .../stylesheets/vendors/bootstrap/list-group.less | 0 .../stylesheets/vendors/bootstrap/media.less | 0 .../stylesheets/vendors/bootstrap/mixins.less | 0 .../stylesheets/vendors/bootstrap/modals.less | 0 .../stylesheets/vendors/bootstrap/navbar.less | 0 .../stylesheets/vendors/bootstrap/navs.less | 0 .../stylesheets/vendors/bootstrap/normalize.less | 0 .../stylesheets/vendors/bootstrap/pager.less | 0 .../stylesheets/vendors/bootstrap/pagination.less | 0 .../stylesheets/vendors/bootstrap/panels.less | 0 .../stylesheets/vendors/bootstrap/popovers.less | 0 .../stylesheets/vendors/bootstrap/print.less | 0 .../vendors/bootstrap/progress-bars.less | 0 .../vendors/bootstrap/responsive-utilities.less | 0 .../stylesheets/vendors/bootstrap/scaffolding.less | 0 .../stylesheets/vendors/bootstrap/tables.less | 0 .../stylesheets/vendors/bootstrap/theme.less | 0 .../stylesheets/vendors/bootstrap/thumbnails.less | 0 .../stylesheets/vendors/bootstrap/tooltip.less | 0 .../stylesheets/vendors/bootstrap/type.less | 0 .../stylesheets/vendors/bootstrap/utilities.less | 0 .../stylesheets/vendors/bootstrap/variables.less | 0 .../stylesheets/vendors/bootstrap/wells.less | 0 .../vendors/fontawesome/bordered-pulled.less | 0 .../stylesheets/vendors/fontawesome/core.less | 0 .../vendors/fontawesome/fixed-width.less | 0 .../vendors/fontawesome/font-awesome.less | 0 .../stylesheets/vendors/fontawesome/icons.less | 0 .../stylesheets/vendors/fontawesome/larger.less | 0 .../stylesheets/vendors/fontawesome/list.less | 0 .../stylesheets/vendors/fontawesome/mixins.less | 0 .../stylesheets/vendors/fontawesome/path.less | 0 .../vendors/fontawesome/rotated-flipped.less | 0 .../stylesheets/vendors/fontawesome/spinning.less | 0 .../stylesheets/vendors/fontawesome/stacked.less | 0 .../stylesheets/vendors/fontawesome/variables.less | 0 .../templates}/includes/book/exercise.html | 0 .../templates}/includes/book/footer.html | 0 .../templates}/includes/book/header.html | 0 .../templates}/includes/book/progress.html | 0 .../templates}/includes/book/summary.html | 0 {templates => theme/templates}/layout.html | 0 {templates => theme/templates}/page.html | 0 112 files changed, 14 insertions(+), 5 deletions(-) create mode 100644 theme/README.md rename {assets/static => theme/assets}/app.js (100%) rename {assets/static => theme/assets}/fonts/fontawesome/FontAwesome.otf (100%) rename {assets/static => theme/assets}/fonts/fontawesome/fontawesome-webfont.eot (100%) rename {assets/static => theme/assets}/fonts/fontawesome/fontawesome-webfont.svg (100%) rename {assets/static => theme/assets}/fonts/fontawesome/fontawesome-webfont.ttf (100%) rename {assets/static => theme/assets}/fonts/fontawesome/fontawesome-webfont.woff (100%) rename {assets/static => theme/assets}/fonts/helvetica/normal.eot (100%) rename {assets/static => theme/assets}/fonts/helvetica/normal.svg (100%) rename {assets/static => theme/assets}/fonts/helvetica/normal.ttf (100%) rename {assets/static => theme/assets}/fonts/helvetica/normal.woff (100%) rename {assets/static => theme/assets}/fonts/helvetica/ultralight.eot (100%) rename {assets/static => theme/assets}/fonts/helvetica/ultralight.svg (100%) rename {assets/static => theme/assets}/fonts/helvetica/ultralight.ttf (100%) rename {assets/static => theme/assets}/fonts/helvetica/ultralight.woff (100%) rename {assets/static => theme/assets}/images/favicon.ico (100%) rename {assets/static => theme/assets}/jsrepl/engines/javascript-default.js (100%) rename {assets/static => theme/assets}/jsrepl/jsrepl.js (100%) rename {assets/static => theme/assets}/jsrepl/langs/javascript/jsrepl_js.js (100%) rename {assets/static => theme/assets}/jsrepl/sandbox.html (100%) rename {assets/static => theme/assets}/jsrepl/sandbox.js (100%) rename {assets/static => theme/assets}/style.css (100%) rename {assets => theme}/javascript/app.js (100%) rename {assets => theme}/javascript/core/exercise.js (100%) rename {assets => theme}/javascript/core/keyboard.js (100%) rename {assets => theme}/javascript/core/navigation.js (100%) rename {assets => theme}/javascript/core/progress.js (100%) rename {assets => theme}/javascript/core/sidebar.js (100%) rename {assets => theme}/javascript/core/state.js (100%) rename {assets => theme}/javascript/utils/analytic.js (100%) rename {assets => theme}/javascript/utils/execute.js (100%) rename {assets => theme}/javascript/utils/platform.js (100%) rename {assets => theme}/javascript/utils/sharing.js (100%) rename {assets => theme}/javascript/utils/storage.js (100%) rename {assets => theme}/javascript/vendors/jquery.js (100%) rename {assets => theme}/javascript/vendors/lodash.js (100%) rename {assets => theme}/javascript/vendors/mousetrap.js (100%) rename {assets => theme}/javascript/vendors/require.js (100%) rename {assets => theme}/stylesheets/book/body.less (100%) rename {assets => theme}/stylesheets/book/exercise.less (100%) rename {assets => theme}/stylesheets/book/footer.less (100%) rename {assets => theme}/stylesheets/book/header.less (100%) rename {assets => theme}/stylesheets/book/markdown.less (100%) rename {assets => theme}/stylesheets/book/progress.less (100%) rename {assets => theme}/stylesheets/book/summary.less (100%) rename {assets => theme}/stylesheets/fonts.less (100%) rename {assets => theme}/stylesheets/highlight.less (100%) rename {assets => theme}/stylesheets/main.less (100%) rename {assets => theme}/stylesheets/mixins.less (100%) rename {assets => theme}/stylesheets/variables.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/alerts.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/badges.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/bootstrap.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/breadcrumbs.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/button-groups.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/buttons.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/carousel.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/close.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/code.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/component-animations.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/dropdowns.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/forms.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/glyphicons.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/grid.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/input-groups.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/jumbotron.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/labels.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/list-group.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/media.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/mixins.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/modals.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/navbar.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/navs.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/normalize.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/pager.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/pagination.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/panels.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/popovers.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/print.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/progress-bars.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/responsive-utilities.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/scaffolding.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/tables.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/theme.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/thumbnails.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/tooltip.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/type.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/utilities.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/variables.less (100%) rename {assets => theme}/stylesheets/vendors/bootstrap/wells.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/bordered-pulled.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/core.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/fixed-width.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/font-awesome.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/icons.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/larger.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/list.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/mixins.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/path.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/rotated-flipped.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/spinning.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/stacked.less (100%) rename {assets => theme}/stylesheets/vendors/fontawesome/variables.less (100%) rename {templates => theme/templates}/includes/book/exercise.html (100%) rename {templates => theme/templates}/includes/book/footer.html (100%) rename {templates => theme/templates}/includes/book/header.html (100%) rename {templates => theme/templates}/includes/book/progress.html (100%) rename {templates => theme/templates}/includes/book/summary.html (100%) rename {templates => theme/templates}/layout.html (100%) rename {templates => theme/templates}/page.html (100%) diff --git a/Gruntfile.js b/Gruntfile.js index 31cab300b..112c0c1cd 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -16,7 +16,7 @@ module.exports = function (grunt) { optimization: 2 }, files: { - "assets/static/style.css": "assets/stylesheets/main.less" + "theme/assets/style.css": "theme/stylesheets/main.less" } } }, @@ -24,8 +24,8 @@ module.exports = function (grunt) { compile: { options: { name: "app", - baseUrl: "assets/javascript/", - out: "assets/static/app.js", + baseUrl: "theme/javascript/", + out: "theme/assets/app.js", preserveLicenseComments: false, optimize: "uglify", include: ["requireLib"], diff --git a/lib/generate/site/index.js b/lib/generate/site/index.js index ac6ece640..13c7438b5 100644 --- a/lib/generate/site/index.js +++ b/lib/generate/site/index.js @@ -1,6 +1,7 @@ var util = require("util"); var path = require("path"); var Q = require("q"); +var _ = require("lodash"); var swig = require('swig'); var fs = require("../fs"); @@ -20,8 +21,13 @@ swig.setFilter('mdLink', function(link) { var Generator = function() { BaseGenerator.apply(this, arguments); + // Options + this.options = _.defaults(this.options, { + theme: path.resolve(__dirname, '../../../theme') + }); + // Load base template - this.template = swig.compileFile(path.resolve(__dirname, '../../templates/page.html')); + this.template = swig.compileFile(path.resolve(this.options.theme, 'templates/page.html')); }; util.inherits(Generator, BaseGenerator); @@ -82,7 +88,7 @@ Generator.prototype.finish = function() { ) .then(function() { return fs.copy( - path.join(__dirname, "../../assets/static"), + path.join(that.options.theme, "assets"), path.join(that.options.output, "gitbook") ); }); diff --git a/theme/README.md b/theme/README.md new file mode 100644 index 000000000..2e08b02db --- /dev/null +++ b/theme/README.md @@ -0,0 +1,3 @@ +# GitBook Theme + +For creating a theme for GitBook, just copy this folder. The theme folder should at least contains two folders: `assets` and `templates`. diff --git a/assets/static/app.js b/theme/assets/app.js similarity index 100% rename from assets/static/app.js rename to theme/assets/app.js diff --git a/assets/static/fonts/fontawesome/FontAwesome.otf b/theme/assets/fonts/fontawesome/FontAwesome.otf similarity index 100% rename from assets/static/fonts/fontawesome/FontAwesome.otf rename to theme/assets/fonts/fontawesome/FontAwesome.otf diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.eot b/theme/assets/fonts/fontawesome/fontawesome-webfont.eot similarity index 100% rename from assets/static/fonts/fontawesome/fontawesome-webfont.eot rename to theme/assets/fonts/fontawesome/fontawesome-webfont.eot diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.svg b/theme/assets/fonts/fontawesome/fontawesome-webfont.svg similarity index 100% rename from assets/static/fonts/fontawesome/fontawesome-webfont.svg rename to theme/assets/fonts/fontawesome/fontawesome-webfont.svg diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.ttf b/theme/assets/fonts/fontawesome/fontawesome-webfont.ttf similarity index 100% rename from assets/static/fonts/fontawesome/fontawesome-webfont.ttf rename to theme/assets/fonts/fontawesome/fontawesome-webfont.ttf diff --git a/assets/static/fonts/fontawesome/fontawesome-webfont.woff b/theme/assets/fonts/fontawesome/fontawesome-webfont.woff similarity index 100% rename from assets/static/fonts/fontawesome/fontawesome-webfont.woff rename to theme/assets/fonts/fontawesome/fontawesome-webfont.woff diff --git a/assets/static/fonts/helvetica/normal.eot b/theme/assets/fonts/helvetica/normal.eot similarity index 100% rename from assets/static/fonts/helvetica/normal.eot rename to theme/assets/fonts/helvetica/normal.eot diff --git a/assets/static/fonts/helvetica/normal.svg b/theme/assets/fonts/helvetica/normal.svg similarity index 100% rename from assets/static/fonts/helvetica/normal.svg rename to theme/assets/fonts/helvetica/normal.svg diff --git a/assets/static/fonts/helvetica/normal.ttf b/theme/assets/fonts/helvetica/normal.ttf similarity index 100% rename from assets/static/fonts/helvetica/normal.ttf rename to theme/assets/fonts/helvetica/normal.ttf diff --git a/assets/static/fonts/helvetica/normal.woff b/theme/assets/fonts/helvetica/normal.woff similarity index 100% rename from assets/static/fonts/helvetica/normal.woff rename to theme/assets/fonts/helvetica/normal.woff diff --git a/assets/static/fonts/helvetica/ultralight.eot b/theme/assets/fonts/helvetica/ultralight.eot similarity index 100% rename from assets/static/fonts/helvetica/ultralight.eot rename to theme/assets/fonts/helvetica/ultralight.eot diff --git a/assets/static/fonts/helvetica/ultralight.svg b/theme/assets/fonts/helvetica/ultralight.svg similarity index 100% rename from assets/static/fonts/helvetica/ultralight.svg rename to theme/assets/fonts/helvetica/ultralight.svg diff --git a/assets/static/fonts/helvetica/ultralight.ttf b/theme/assets/fonts/helvetica/ultralight.ttf similarity index 100% rename from assets/static/fonts/helvetica/ultralight.ttf rename to theme/assets/fonts/helvetica/ultralight.ttf diff --git a/assets/static/fonts/helvetica/ultralight.woff b/theme/assets/fonts/helvetica/ultralight.woff similarity index 100% rename from assets/static/fonts/helvetica/ultralight.woff rename to theme/assets/fonts/helvetica/ultralight.woff diff --git a/assets/static/images/favicon.ico b/theme/assets/images/favicon.ico similarity index 100% rename from assets/static/images/favicon.ico rename to theme/assets/images/favicon.ico diff --git a/assets/static/jsrepl/engines/javascript-default.js b/theme/assets/jsrepl/engines/javascript-default.js similarity index 100% rename from assets/static/jsrepl/engines/javascript-default.js rename to theme/assets/jsrepl/engines/javascript-default.js diff --git a/assets/static/jsrepl/jsrepl.js b/theme/assets/jsrepl/jsrepl.js similarity index 100% rename from assets/static/jsrepl/jsrepl.js rename to theme/assets/jsrepl/jsrepl.js diff --git a/assets/static/jsrepl/langs/javascript/jsrepl_js.js b/theme/assets/jsrepl/langs/javascript/jsrepl_js.js similarity index 100% rename from assets/static/jsrepl/langs/javascript/jsrepl_js.js rename to theme/assets/jsrepl/langs/javascript/jsrepl_js.js diff --git a/assets/static/jsrepl/sandbox.html b/theme/assets/jsrepl/sandbox.html similarity index 100% rename from assets/static/jsrepl/sandbox.html rename to theme/assets/jsrepl/sandbox.html diff --git a/assets/static/jsrepl/sandbox.js b/theme/assets/jsrepl/sandbox.js similarity index 100% rename from assets/static/jsrepl/sandbox.js rename to theme/assets/jsrepl/sandbox.js diff --git a/assets/static/style.css b/theme/assets/style.css similarity index 100% rename from assets/static/style.css rename to theme/assets/style.css diff --git a/assets/javascript/app.js b/theme/javascript/app.js similarity index 100% rename from assets/javascript/app.js rename to theme/javascript/app.js diff --git a/assets/javascript/core/exercise.js b/theme/javascript/core/exercise.js similarity index 100% rename from assets/javascript/core/exercise.js rename to theme/javascript/core/exercise.js diff --git a/assets/javascript/core/keyboard.js b/theme/javascript/core/keyboard.js similarity index 100% rename from assets/javascript/core/keyboard.js rename to theme/javascript/core/keyboard.js diff --git a/assets/javascript/core/navigation.js b/theme/javascript/core/navigation.js similarity index 100% rename from assets/javascript/core/navigation.js rename to theme/javascript/core/navigation.js diff --git a/assets/javascript/core/progress.js b/theme/javascript/core/progress.js similarity index 100% rename from assets/javascript/core/progress.js rename to theme/javascript/core/progress.js diff --git a/assets/javascript/core/sidebar.js b/theme/javascript/core/sidebar.js similarity index 100% rename from assets/javascript/core/sidebar.js rename to theme/javascript/core/sidebar.js diff --git a/assets/javascript/core/state.js b/theme/javascript/core/state.js similarity index 100% rename from assets/javascript/core/state.js rename to theme/javascript/core/state.js diff --git a/assets/javascript/utils/analytic.js b/theme/javascript/utils/analytic.js similarity index 100% rename from assets/javascript/utils/analytic.js rename to theme/javascript/utils/analytic.js diff --git a/assets/javascript/utils/execute.js b/theme/javascript/utils/execute.js similarity index 100% rename from assets/javascript/utils/execute.js rename to theme/javascript/utils/execute.js diff --git a/assets/javascript/utils/platform.js b/theme/javascript/utils/platform.js similarity index 100% rename from assets/javascript/utils/platform.js rename to theme/javascript/utils/platform.js diff --git a/assets/javascript/utils/sharing.js b/theme/javascript/utils/sharing.js similarity index 100% rename from assets/javascript/utils/sharing.js rename to theme/javascript/utils/sharing.js diff --git a/assets/javascript/utils/storage.js b/theme/javascript/utils/storage.js similarity index 100% rename from assets/javascript/utils/storage.js rename to theme/javascript/utils/storage.js diff --git a/assets/javascript/vendors/jquery.js b/theme/javascript/vendors/jquery.js similarity index 100% rename from assets/javascript/vendors/jquery.js rename to theme/javascript/vendors/jquery.js diff --git a/assets/javascript/vendors/lodash.js b/theme/javascript/vendors/lodash.js similarity index 100% rename from assets/javascript/vendors/lodash.js rename to theme/javascript/vendors/lodash.js diff --git a/assets/javascript/vendors/mousetrap.js b/theme/javascript/vendors/mousetrap.js similarity index 100% rename from assets/javascript/vendors/mousetrap.js rename to theme/javascript/vendors/mousetrap.js diff --git a/assets/javascript/vendors/require.js b/theme/javascript/vendors/require.js similarity index 100% rename from assets/javascript/vendors/require.js rename to theme/javascript/vendors/require.js diff --git a/assets/stylesheets/book/body.less b/theme/stylesheets/book/body.less similarity index 100% rename from assets/stylesheets/book/body.less rename to theme/stylesheets/book/body.less diff --git a/assets/stylesheets/book/exercise.less b/theme/stylesheets/book/exercise.less similarity index 100% rename from assets/stylesheets/book/exercise.less rename to theme/stylesheets/book/exercise.less diff --git a/assets/stylesheets/book/footer.less b/theme/stylesheets/book/footer.less similarity index 100% rename from assets/stylesheets/book/footer.less rename to theme/stylesheets/book/footer.less diff --git a/assets/stylesheets/book/header.less b/theme/stylesheets/book/header.less similarity index 100% rename from assets/stylesheets/book/header.less rename to theme/stylesheets/book/header.less diff --git a/assets/stylesheets/book/markdown.less b/theme/stylesheets/book/markdown.less similarity index 100% rename from assets/stylesheets/book/markdown.less rename to theme/stylesheets/book/markdown.less diff --git a/assets/stylesheets/book/progress.less b/theme/stylesheets/book/progress.less similarity index 100% rename from assets/stylesheets/book/progress.less rename to theme/stylesheets/book/progress.less diff --git a/assets/stylesheets/book/summary.less b/theme/stylesheets/book/summary.less similarity index 100% rename from assets/stylesheets/book/summary.less rename to theme/stylesheets/book/summary.less diff --git a/assets/stylesheets/fonts.less b/theme/stylesheets/fonts.less similarity index 100% rename from assets/stylesheets/fonts.less rename to theme/stylesheets/fonts.less diff --git a/assets/stylesheets/highlight.less b/theme/stylesheets/highlight.less similarity index 100% rename from assets/stylesheets/highlight.less rename to theme/stylesheets/highlight.less diff --git a/assets/stylesheets/main.less b/theme/stylesheets/main.less similarity index 100% rename from assets/stylesheets/main.less rename to theme/stylesheets/main.less diff --git a/assets/stylesheets/mixins.less b/theme/stylesheets/mixins.less similarity index 100% rename from assets/stylesheets/mixins.less rename to theme/stylesheets/mixins.less diff --git a/assets/stylesheets/variables.less b/theme/stylesheets/variables.less similarity index 100% rename from assets/stylesheets/variables.less rename to theme/stylesheets/variables.less diff --git a/assets/stylesheets/vendors/bootstrap/alerts.less b/theme/stylesheets/vendors/bootstrap/alerts.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/alerts.less rename to theme/stylesheets/vendors/bootstrap/alerts.less diff --git a/assets/stylesheets/vendors/bootstrap/badges.less b/theme/stylesheets/vendors/bootstrap/badges.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/badges.less rename to theme/stylesheets/vendors/bootstrap/badges.less diff --git a/assets/stylesheets/vendors/bootstrap/bootstrap.less b/theme/stylesheets/vendors/bootstrap/bootstrap.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/bootstrap.less rename to theme/stylesheets/vendors/bootstrap/bootstrap.less diff --git a/assets/stylesheets/vendors/bootstrap/breadcrumbs.less b/theme/stylesheets/vendors/bootstrap/breadcrumbs.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/breadcrumbs.less rename to theme/stylesheets/vendors/bootstrap/breadcrumbs.less diff --git a/assets/stylesheets/vendors/bootstrap/button-groups.less b/theme/stylesheets/vendors/bootstrap/button-groups.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/button-groups.less rename to theme/stylesheets/vendors/bootstrap/button-groups.less diff --git a/assets/stylesheets/vendors/bootstrap/buttons.less b/theme/stylesheets/vendors/bootstrap/buttons.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/buttons.less rename to theme/stylesheets/vendors/bootstrap/buttons.less diff --git a/assets/stylesheets/vendors/bootstrap/carousel.less b/theme/stylesheets/vendors/bootstrap/carousel.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/carousel.less rename to theme/stylesheets/vendors/bootstrap/carousel.less diff --git a/assets/stylesheets/vendors/bootstrap/close.less b/theme/stylesheets/vendors/bootstrap/close.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/close.less rename to theme/stylesheets/vendors/bootstrap/close.less diff --git a/assets/stylesheets/vendors/bootstrap/code.less b/theme/stylesheets/vendors/bootstrap/code.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/code.less rename to theme/stylesheets/vendors/bootstrap/code.less diff --git a/assets/stylesheets/vendors/bootstrap/component-animations.less b/theme/stylesheets/vendors/bootstrap/component-animations.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/component-animations.less rename to theme/stylesheets/vendors/bootstrap/component-animations.less diff --git a/assets/stylesheets/vendors/bootstrap/dropdowns.less b/theme/stylesheets/vendors/bootstrap/dropdowns.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/dropdowns.less rename to theme/stylesheets/vendors/bootstrap/dropdowns.less diff --git a/assets/stylesheets/vendors/bootstrap/forms.less b/theme/stylesheets/vendors/bootstrap/forms.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/forms.less rename to theme/stylesheets/vendors/bootstrap/forms.less diff --git a/assets/stylesheets/vendors/bootstrap/glyphicons.less b/theme/stylesheets/vendors/bootstrap/glyphicons.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/glyphicons.less rename to theme/stylesheets/vendors/bootstrap/glyphicons.less diff --git a/assets/stylesheets/vendors/bootstrap/grid.less b/theme/stylesheets/vendors/bootstrap/grid.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/grid.less rename to theme/stylesheets/vendors/bootstrap/grid.less diff --git a/assets/stylesheets/vendors/bootstrap/input-groups.less b/theme/stylesheets/vendors/bootstrap/input-groups.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/input-groups.less rename to theme/stylesheets/vendors/bootstrap/input-groups.less diff --git a/assets/stylesheets/vendors/bootstrap/jumbotron.less b/theme/stylesheets/vendors/bootstrap/jumbotron.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/jumbotron.less rename to theme/stylesheets/vendors/bootstrap/jumbotron.less diff --git a/assets/stylesheets/vendors/bootstrap/labels.less b/theme/stylesheets/vendors/bootstrap/labels.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/labels.less rename to theme/stylesheets/vendors/bootstrap/labels.less diff --git a/assets/stylesheets/vendors/bootstrap/list-group.less b/theme/stylesheets/vendors/bootstrap/list-group.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/list-group.less rename to theme/stylesheets/vendors/bootstrap/list-group.less diff --git a/assets/stylesheets/vendors/bootstrap/media.less b/theme/stylesheets/vendors/bootstrap/media.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/media.less rename to theme/stylesheets/vendors/bootstrap/media.less diff --git a/assets/stylesheets/vendors/bootstrap/mixins.less b/theme/stylesheets/vendors/bootstrap/mixins.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/mixins.less rename to theme/stylesheets/vendors/bootstrap/mixins.less diff --git a/assets/stylesheets/vendors/bootstrap/modals.less b/theme/stylesheets/vendors/bootstrap/modals.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/modals.less rename to theme/stylesheets/vendors/bootstrap/modals.less diff --git a/assets/stylesheets/vendors/bootstrap/navbar.less b/theme/stylesheets/vendors/bootstrap/navbar.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/navbar.less rename to theme/stylesheets/vendors/bootstrap/navbar.less diff --git a/assets/stylesheets/vendors/bootstrap/navs.less b/theme/stylesheets/vendors/bootstrap/navs.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/navs.less rename to theme/stylesheets/vendors/bootstrap/navs.less diff --git a/assets/stylesheets/vendors/bootstrap/normalize.less b/theme/stylesheets/vendors/bootstrap/normalize.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/normalize.less rename to theme/stylesheets/vendors/bootstrap/normalize.less diff --git a/assets/stylesheets/vendors/bootstrap/pager.less b/theme/stylesheets/vendors/bootstrap/pager.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/pager.less rename to theme/stylesheets/vendors/bootstrap/pager.less diff --git a/assets/stylesheets/vendors/bootstrap/pagination.less b/theme/stylesheets/vendors/bootstrap/pagination.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/pagination.less rename to theme/stylesheets/vendors/bootstrap/pagination.less diff --git a/assets/stylesheets/vendors/bootstrap/panels.less b/theme/stylesheets/vendors/bootstrap/panels.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/panels.less rename to theme/stylesheets/vendors/bootstrap/panels.less diff --git a/assets/stylesheets/vendors/bootstrap/popovers.less b/theme/stylesheets/vendors/bootstrap/popovers.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/popovers.less rename to theme/stylesheets/vendors/bootstrap/popovers.less diff --git a/assets/stylesheets/vendors/bootstrap/print.less b/theme/stylesheets/vendors/bootstrap/print.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/print.less rename to theme/stylesheets/vendors/bootstrap/print.less diff --git a/assets/stylesheets/vendors/bootstrap/progress-bars.less b/theme/stylesheets/vendors/bootstrap/progress-bars.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/progress-bars.less rename to theme/stylesheets/vendors/bootstrap/progress-bars.less diff --git a/assets/stylesheets/vendors/bootstrap/responsive-utilities.less b/theme/stylesheets/vendors/bootstrap/responsive-utilities.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/responsive-utilities.less rename to theme/stylesheets/vendors/bootstrap/responsive-utilities.less diff --git a/assets/stylesheets/vendors/bootstrap/scaffolding.less b/theme/stylesheets/vendors/bootstrap/scaffolding.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/scaffolding.less rename to theme/stylesheets/vendors/bootstrap/scaffolding.less diff --git a/assets/stylesheets/vendors/bootstrap/tables.less b/theme/stylesheets/vendors/bootstrap/tables.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/tables.less rename to theme/stylesheets/vendors/bootstrap/tables.less diff --git a/assets/stylesheets/vendors/bootstrap/theme.less b/theme/stylesheets/vendors/bootstrap/theme.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/theme.less rename to theme/stylesheets/vendors/bootstrap/theme.less diff --git a/assets/stylesheets/vendors/bootstrap/thumbnails.less b/theme/stylesheets/vendors/bootstrap/thumbnails.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/thumbnails.less rename to theme/stylesheets/vendors/bootstrap/thumbnails.less diff --git a/assets/stylesheets/vendors/bootstrap/tooltip.less b/theme/stylesheets/vendors/bootstrap/tooltip.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/tooltip.less rename to theme/stylesheets/vendors/bootstrap/tooltip.less diff --git a/assets/stylesheets/vendors/bootstrap/type.less b/theme/stylesheets/vendors/bootstrap/type.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/type.less rename to theme/stylesheets/vendors/bootstrap/type.less diff --git a/assets/stylesheets/vendors/bootstrap/utilities.less b/theme/stylesheets/vendors/bootstrap/utilities.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/utilities.less rename to theme/stylesheets/vendors/bootstrap/utilities.less diff --git a/assets/stylesheets/vendors/bootstrap/variables.less b/theme/stylesheets/vendors/bootstrap/variables.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/variables.less rename to theme/stylesheets/vendors/bootstrap/variables.less diff --git a/assets/stylesheets/vendors/bootstrap/wells.less b/theme/stylesheets/vendors/bootstrap/wells.less similarity index 100% rename from assets/stylesheets/vendors/bootstrap/wells.less rename to theme/stylesheets/vendors/bootstrap/wells.less diff --git a/assets/stylesheets/vendors/fontawesome/bordered-pulled.less b/theme/stylesheets/vendors/fontawesome/bordered-pulled.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/bordered-pulled.less rename to theme/stylesheets/vendors/fontawesome/bordered-pulled.less diff --git a/assets/stylesheets/vendors/fontawesome/core.less b/theme/stylesheets/vendors/fontawesome/core.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/core.less rename to theme/stylesheets/vendors/fontawesome/core.less diff --git a/assets/stylesheets/vendors/fontawesome/fixed-width.less b/theme/stylesheets/vendors/fontawesome/fixed-width.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/fixed-width.less rename to theme/stylesheets/vendors/fontawesome/fixed-width.less diff --git a/assets/stylesheets/vendors/fontawesome/font-awesome.less b/theme/stylesheets/vendors/fontawesome/font-awesome.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/font-awesome.less rename to theme/stylesheets/vendors/fontawesome/font-awesome.less diff --git a/assets/stylesheets/vendors/fontawesome/icons.less b/theme/stylesheets/vendors/fontawesome/icons.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/icons.less rename to theme/stylesheets/vendors/fontawesome/icons.less diff --git a/assets/stylesheets/vendors/fontawesome/larger.less b/theme/stylesheets/vendors/fontawesome/larger.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/larger.less rename to theme/stylesheets/vendors/fontawesome/larger.less diff --git a/assets/stylesheets/vendors/fontawesome/list.less b/theme/stylesheets/vendors/fontawesome/list.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/list.less rename to theme/stylesheets/vendors/fontawesome/list.less diff --git a/assets/stylesheets/vendors/fontawesome/mixins.less b/theme/stylesheets/vendors/fontawesome/mixins.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/mixins.less rename to theme/stylesheets/vendors/fontawesome/mixins.less diff --git a/assets/stylesheets/vendors/fontawesome/path.less b/theme/stylesheets/vendors/fontawesome/path.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/path.less rename to theme/stylesheets/vendors/fontawesome/path.less diff --git a/assets/stylesheets/vendors/fontawesome/rotated-flipped.less b/theme/stylesheets/vendors/fontawesome/rotated-flipped.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/rotated-flipped.less rename to theme/stylesheets/vendors/fontawesome/rotated-flipped.less diff --git a/assets/stylesheets/vendors/fontawesome/spinning.less b/theme/stylesheets/vendors/fontawesome/spinning.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/spinning.less rename to theme/stylesheets/vendors/fontawesome/spinning.less diff --git a/assets/stylesheets/vendors/fontawesome/stacked.less b/theme/stylesheets/vendors/fontawesome/stacked.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/stacked.less rename to theme/stylesheets/vendors/fontawesome/stacked.less diff --git a/assets/stylesheets/vendors/fontawesome/variables.less b/theme/stylesheets/vendors/fontawesome/variables.less similarity index 100% rename from assets/stylesheets/vendors/fontawesome/variables.less rename to theme/stylesheets/vendors/fontawesome/variables.less diff --git a/templates/includes/book/exercise.html b/theme/templates/includes/book/exercise.html similarity index 100% rename from templates/includes/book/exercise.html rename to theme/templates/includes/book/exercise.html diff --git a/templates/includes/book/footer.html b/theme/templates/includes/book/footer.html similarity index 100% rename from templates/includes/book/footer.html rename to theme/templates/includes/book/footer.html diff --git a/templates/includes/book/header.html b/theme/templates/includes/book/header.html similarity index 100% rename from templates/includes/book/header.html rename to theme/templates/includes/book/header.html diff --git a/templates/includes/book/progress.html b/theme/templates/includes/book/progress.html similarity index 100% rename from templates/includes/book/progress.html rename to theme/templates/includes/book/progress.html diff --git a/templates/includes/book/summary.html b/theme/templates/includes/book/summary.html similarity index 100% rename from templates/includes/book/summary.html rename to theme/templates/includes/book/summary.html diff --git a/templates/layout.html b/theme/templates/layout.html similarity index 100% rename from templates/layout.html rename to theme/templates/layout.html diff --git a/templates/page.html b/theme/templates/page.html similarity index 100% rename from templates/page.html rename to theme/templates/page.html