Update styles

This commit is contained in:
Seth Vargo 2017-03-27 23:37:59 -04:00
parent 8af76ef796
commit 3d0a3806c7
No known key found for this signature in database
GPG Key ID: C921994F9C27E0FF
69 changed files with 1912 additions and 3997 deletions

View File

@ -1,3 +1,3 @@
source "https://rubygems.org"
gem "middleman-hashicorp", "0.3.15"
gem "middleman-hashicorp", "0.3.22"

View File

@ -6,7 +6,7 @@ GEM
minitest (~> 5.1)
thread_safe (~> 0.3, >= 0.3.4)
tzinfo (~> 1.1)
autoprefixer-rails (6.7.7)
autoprefixer-rails (6.7.7.1)
execjs
bootstrap-sass (3.3.7)
autoprefixer-rails (>= 5.2.1)
@ -77,7 +77,7 @@ GEM
rack (>= 1.4.5, < 2.0)
thor (>= 0.15.2, < 2.0)
tilt (~> 1.4.1, < 2.0)
middleman-hashicorp (0.3.15)
middleman-hashicorp (0.3.22)
bootstrap-sass (~> 3.3)
builder (~> 3.2)
middleman (~> 3.4)
@ -103,7 +103,7 @@ GEM
mini_portile2 (2.1.0)
minitest (5.10.1)
multi_json (1.12.1)
nokogiri (1.7.0.1)
nokogiri (1.7.1)
mini_portile2 (~> 2.1.0)
padrino-helpers (0.12.8.1)
i18n (~> 0.6, >= 0.6.7)
@ -138,7 +138,7 @@ GEM
turbolinks (5.0.1)
turbolinks-source (~> 5)
turbolinks-source (5.0.0)
tzinfo (1.2.2)
tzinfo (1.2.3)
thread_safe (~> 0.1)
uber (0.0.15)
uglifier (2.7.2)
@ -151,7 +151,7 @@ PLATFORMS
ruby
DEPENDENCIES
middleman-hashicorp (= 0.3.15)
middleman-hashicorp (= 0.3.22)
BUNDLED WITH
1.14.6

View File

@ -1,4 +1,4 @@
VERSION?="0.3.15"
VERSION?="0.3.22"
website:
@echo "==> Starting website in Docker..."

View File

@ -18,7 +18,7 @@ helpers do
end
"Nomad by HashiCorp"
end
end
# Get the description for the page
#
@ -26,7 +26,12 @@ helpers do
#
# @return [String]
def description_for(page)
return escape_html(page.data.description || "")
description = (page.data.description || "")
.gsub('"', '')
.gsub(/\n+/, ' ')
.squeeze(' ')
return escape_html(description)
end
# This helps by setting the "active" class for sidebar nav elements
@ -43,10 +48,22 @@ helpers do
# Returns the id for this page.
# @return [String]
def body_id_for(page)
if name = page.data.sidebar_current && !name.blank?
if !(name = page.data.sidebar_current).blank?
return "page-#{name.strip}"
end
return "page-home"
if page.url == "/" || page.url == "/index.html"
return "page-home"
end
if !(title = page.data.page_title).blank?
return title
.downcase
.gsub('"', '')
.gsub(/[^\w]+/, '-')
.gsub(/_+/, '-')
.squeeze('-')
.squeeze(' ')
end
return ""
end
# Returns the list of classes for this page.
@ -54,10 +71,21 @@ helpers do
def body_classes_for(page)
classes = []
if page && page.data.layout
if !(layout = page.data.layout).blank?
classes << "layout-#{page.data.layout}"
end
if !(title = page.data.page_title).blank?
title = title
.downcase
.gsub('"', '')
.gsub(/[^\w]+/, '-')
.gsub(/_+/, '-')
.squeeze('-')
.squeeze(' ')
classes << "page-#{title}"
end
return classes.join(" ")
end
end

View File

@ -8,7 +8,7 @@
"builders": [
{
"type": "docker",
"image": "hashicorp/middleman-hashicorp:0.3.15",
"image": "hashicorp/middleman-hashicorp:0.3.22",
"discard": "true",
"run_command": ["-d", "-i", "-t", "{{ .Image }}", "/bin/sh"]
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
website/source/assets/images/favicon.png (Stored with Git LFS)

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -1,22 +1,9 @@
<svg id="nomad-logo" width="153px" height="59px" viewBox="235 295 153 59" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<desc>HashiCorp Nomad</desc>
<defs></defs>
<g id="Group-3" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd" transform="translate(235.000000, 296.000000)">
<g id="Group-2">
<polygon id="Fill-1" fill="#9BDB9C" points="25.3417793 28.9464113 25.3417793 57.8922235 50.4097606 43.4189089 50.4097606 14.4730967"></polygon>
<polygon id="Fill-2" fill="#449B82" points="0.272300469 43.4190451 25.3419155 57.8920873 25.3419155 28.9465474 0.272300469 14.4729606"></polygon>
<polygon id="Fill-3" fill="#57CDAE" points="25.3417793 -8.16901409e-05 0.272164319 14.4729606 25.3417793 28.9462751 50.4097606 14.4729606"></polygon>
<polyline id="Fill-4" fill="#FFFFFF" points="29.432631 26.4886545 29.432631 15.8419784 37.9414761 10.9291333 37.9414761 31.4586826"></polyline>
<polygon id="Fill-5" fill="#FFFFFF" points="12.4476169 25.7696178 20.5850441 21.3205005 37.9414761 31.4587915 30.3546404 35.7908197 20.5850441 30.1256085 20.5850441 41.3108948 12.4476169 46.1736366"></polygon>
<polygon id="Fill-7" fill="#FFFFFF" points="12.4476169 25.7696178 20.5850441 21.3205005 20.5850441 41.3108948 12.4476169 46.1736366"></polygon>
</g>
<g id="Group" transform="translate(60.000000, 17.000000)" fill="#000000">
<polygon id="Fill-8" points="4.67506479 7.10711831 4.67506479 23.6079822 0.65618216 23.6079822 0.65618216 1.84654554 6.14548732 1.84654554 14.4122573 18.3798131 14.4122573 1.84654554 18.4314122 1.84654554 18.4314122 23.6079822 12.9418347 23.6079822"></polygon>
<path d="M28.2338479,10.7666732 C26.1101765,10.7666732 25.2932751,11.7142789 25.2932751,13.511462 L25.2932751,17.7917531 C25.2932751,19.5886638 26.1101765,20.5365418 28.2338479,20.5365418 C30.3577915,20.5365418 31.174693,19.5886638 31.174693,17.7917531 L31.174693,13.511462 C31.174693,11.7142789 30.3577915,10.7666732 28.2338479,10.7666732 M28.2338479,23.9345793 C22.7772188,23.9345793 21.3070685,20.9283822 21.3070685,17.6610488 L21.3070685,13.6421662 C21.3070685,10.3745606 22.7772188,7.36863568 28.2338479,7.36863568 C33.6907493,7.36863568 35.1608995,10.3745606 35.1608995,13.6421662 L35.1608995,17.6610488 C35.1608995,20.9283822 33.6907493,23.9345793 28.2338479,23.9345793" id="Fill-9"></path>
<path d="M47.2834441,23.6078732 L47.2834441,12.4985587 C47.2834441,11.6489812 46.9242798,11.2241925 46.0090779,11.2241925 C45.0290685,11.2241925 43.2969653,11.8123615 41.8594911,12.5636385 L41.8594911,23.6078732 L37.8730122,23.6078732 L37.8730122,7.6951784 L40.9121577,7.6951784 L41.3039981,9.03489671 C43.2969653,8.05461502 45.8132939,7.36841784 47.6755568,7.36841784 C49.2113315,7.36841784 50.1589371,7.98953521 50.6814817,9.06757277 C52.6096413,8.08729108 55.1581014,7.36841784 57.0859887,7.36841784 C59.7327493,7.36841784 60.6800826,9.23095305 60.6800826,12.07377 L60.6800826,23.6078732 L56.6938761,23.6078732 L56.6938761,12.4985587 C56.6938761,11.6489812 56.3344394,11.2241925 55.4195099,11.2241925 C54.4392282,11.2241925 52.5113408,11.8450376 51.269923,12.5636385 L51.269923,23.6078732 L47.2834441,23.6078732 Z" id="Fill-11"></path>
<path d="M71.7577831,17.5957239 L68.8172103,17.5957239 C67.5101681,17.5957239 67.1507315,17.9551606 67.1507315,19.1641746 C67.1507315,20.2751606 67.5101681,20.7653014 68.7518582,20.7653014 C69.9279239,20.7653014 71.0062338,20.3729164 71.7577831,19.9484 L71.7577831,17.5957239 Z M75.744262,23.607846 L72.4769286,23.607846 L72.1828441,22.5295362 C70.7448254,23.4771418 69.0459427,23.9346066 67.444816,23.9346066 C64.5366469,23.9346066 63.2952291,21.9413671 63.2952291,19.1968507 C63.2952291,15.9619211 64.7000272,14.720231 67.9349568,14.720231 L71.7577831,14.720231 L71.7577831,13.0540244 C71.7577831,11.2895174 71.2676423,10.6686723 68.7191822,10.6686723 C67.2814357,10.6686723 65.712985,10.8647286 64.3081869,11.1588131 L63.818046,8.11993991 C65.3208723,7.66247512 67.5101681,7.36839061 69.2746751,7.36839061 C74.2738394,7.36839061 75.744262,9.13289765 75.744262,13.1193765 L75.744262,23.607846 Z" id="Fill-13"></path>
<path d="M88.1081939,11.1938362 C87.0625601,10.9651039 85.7231141,10.7690475 84.5794521,10.7690475 C83.1417056,10.7690475 82.586485,11.4552447 82.586485,12.8929912 L82.586485,18.5130006 C82.586485,19.8197705 83.0763535,20.5389161 84.5467761,20.5389161 C85.8538183,20.5389161 87.2588887,19.8851226 88.1081939,19.1011696 L88.1081939,11.1938362 Z M78.6000061,12.9910193 C78.6000061,9.46200526 80.1684568,7.37073765 83.8605789,7.37073765 C85.2656493,7.37073765 86.8665038,7.56706629 88.1081939,7.82847474 L88.1081939,1.19550761 L92.0946728,0.640014648 L92.0946728,23.6101931 L88.9250953,23.6101931 L88.5332549,22.2704747 C87.1279122,23.2834325 85.4941094,23.9369536 83.5011423,23.9369536 C80.2988887,23.9369536 78.6000061,22.0417423 78.6000061,18.4149724 L78.6000061,12.9910193 Z" id="Fill-15"></path>
</g>
</g>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 207 64">
<g fill="none" fill-rule="evenodd">
<path class="top" d="M0 16L28 0l28 16-28 16"/>
<path class="left" d="M0 16l28 16v32L0 48"/>
<path class="right" d="M28 32l28-16v32L28 64"/>
<path fill="#FFF" class="n" d="M16 49.997V29l7-4 9 5V19l8-5v21l-7 4-9.005-5L24 45"/>
<path fill="#000" class="text" d="M90.048 48h8.064V16.032h-5.904V40.32L80.064 16.032H72V48h5.904V23.76L90.048 48zm32.82-8.736c0 4.8-2.16 9.216-10.176 9.216s-10.176-4.416-10.176-9.216V33.36c0-4.8 2.16-9.216 10.176-9.216s10.176 4.416 10.176 9.216v5.904zm-5.856-6.096c0-2.64-1.2-4.032-4.32-4.032s-4.32 1.392-4.32 4.032v6.288c0 2.64 1.2 4.032 4.32 4.032s4.32-1.392 4.32-4.032v-6.288zM146.712 48V31.776c1.824-1.056 4.656-1.968 6.096-1.968 1.344 0 1.872.624 1.872 1.872V48h5.856V31.056c0-4.176-1.392-6.912-5.28-6.912-2.832 0-6.576 1.056-9.408 2.496-.768-1.584-2.16-2.496-4.416-2.496-2.736 0-6.432 1.008-9.36 2.448l-.576-1.968h-4.464V48h5.856V31.776c2.112-1.104 4.656-1.968 6.096-1.968 1.344 0 1.872.624 1.872 1.872V48h5.856zm36.132-15.408V48h-4.8l-.432-1.584c-2.112 1.392-4.608 2.064-6.96 2.064-4.272 0-6.096-2.928-6.096-6.96 0-4.752 2.064-6.576 6.816-6.576h5.616v-2.448c0-2.592-.72-3.504-4.464-3.504-2.112 0-4.416.288-6.48.72l-.72-4.464c2.208-.672 5.424-1.104 8.016-1.104 7.344 0 9.504 2.592 9.504 8.448zm-5.856 10.032v-3.456h-4.32c-1.92 0-2.448.528-2.448 2.304 0 1.632.528 2.352 2.352 2.352 1.728 0 3.312-.576 4.416-1.2zm9.636-2.256V32.4c0-5.184 2.304-8.256 7.728-8.256 2.064 0 4.416.288 6.24.672v-9.744l5.856-.816V48h-4.656l-.576-1.968c-2.064 1.488-4.464 2.448-7.392 2.448-4.704 0-7.2-2.784-7.2-8.112zm13.968 1.008V29.76c-1.536-.336-3.504-.624-5.184-.624-2.112 0-2.928 1.008-2.928 3.12v8.256c0 1.92.72 2.976 2.88 2.976 1.92 0 3.984-.96 5.232-2.112z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 5.0 KiB

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -1 +0,0 @@
<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" width="58" height="66" viewBox="0 0 58 66"><style>.st0{fill:#27c48d}.st1{fill:#2daa86}.st2{fill:#0e7a65}</style><path class="st0" d="M41.4 25.6v10.6l-7 4.3-5.2-3.2V65h.1l27.9-16V17h-.5z"/><path class="st1" d="M29 1L1 17l18.3 10.7 4.1-2.2 9.5 5.4V20.2l8.9-5.3-.2 10.7L56.8 17h.4z"/><path class="st2" d="M25.5 35.2v10.6l-8.4 5.3V29.8l2.9-2.1L1.4 17h-.2v32l28 16V37.3z"/></svg>

Before

Width:  |  Height:  |  Size: 427 B

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,76 @@
var HashiCubes = function() {
var $cube = $('.cube');
var $cubes = $('#cubes');
var ROWS = 4;
var PADDING = 64;
function getRadiansForAngle(angle) {
return angle * (Math.PI/180);
}
function animateCubes() {
$lastCube = $cube;
previousRowLeft = parseInt($lastCube.css('left'), 10)
previousRowTop = parseInt($lastCube.css('top'), 10);
var angle = getRadiansForAngle(30);
var sin = Math.sin(angle) * PADDING;
var cos = Math.cos(angle) * PADDING;
// set up our parent columns
for(var i = 0; i < ROWS; i++){
var cube = $lastCube.clone();
cube.css({
top: previousRowTop - sin,
left: previousRowLeft - cos,
});
$cubes.prepend(cube);
$lastCube = cube;
previousRowLeft = parseInt($lastCube.css('left'), 10)
previousRowTop = parseInt($lastCube.css('top'), 10)
}
// use the parent cubes as starting point for rows
var $allParentCubes = $('.cube');
var angle = getRadiansForAngle(150);
var sin = Math.sin(angle) * PADDING;
var cos = Math.cos(angle) * PADDING;
for(var j = ROWS; j > -1 ; j--){
var $baseCube = $($allParentCubes[j]);
previousRowLeft = parseInt($baseCube.css('left'), 10)
previousRowTop = parseInt($baseCube.css('top'), 10)
for(var n = 0; n < ROWS; n++){
var cube = $baseCube.clone();
cube.css({
top: previousRowTop - sin,
left: previousRowLeft - cos,
});
$cubes.prepend(cube);
$lastCube = cube;
previousRowLeft = parseInt($lastCube.css('left'), 10)
previousRowTop = parseInt($lastCube.css('top'), 10)
}
}
var $all = $('.cube');
for(var c = 0; c < $all.length; c++){
(function(index){
setTimeout(function(){
var $theCube = $($all[index]);
$theCube.addClass('in')
}, 100*c)
})(c)
}
}
animateCubes();
}
$(document).on('turbolinks:load', HashiCubes);

View File

@ -1,82 +0,0 @@
(function(){
CubeDraw = Base.extend({
$cube: null,
ROWS: 4,
PADDING: 64, // 44 pixel base square + 20 padding
previousRowTop: null,
previousRowLeft: null,
lastCube: null,
constructor: function(){
this.$cube = $('.cube');
this.$cubes = $('#cubes');
this.lastCube = this.$cube;
this.previousRowLeft = parseInt(this.lastCube.css('left'), 10)
this.previousRowTop = parseInt(this.lastCube.css('top'), 10);
this.addEventListeners();
},
addEventListeners: function(){
var angle = this.getRadiansForAngle(30);
var sin = Math.sin(angle) * this.PADDING;
var cos = Math.cos(angle) * this.PADDING;
//sett up our parent columns
for(var i = 0; i < this.ROWS; i++){
var cube = this.lastCube.clone();
cube.css({ top: this.previousRowTop - sin, left: this.previousRowLeft - cos});
this.$cubes.prepend(cube);
this.lastCube = cube;
this.previousRowLeft = parseInt(this.lastCube.css('left'), 10)
this.previousRowTop = parseInt(this.lastCube.css('top'), 10)
}
//use the parent cubes as starting point for rows
var $allParentCubes = $('.cube');
var angle = this.getRadiansForAngle(150);
var sin = Math.sin(angle) * this.PADDING;
var cos = Math.cos(angle) * this.PADDING;
for(var j = this.ROWS; j > -1 ; j--){
var baseCube = $($allParentCubes[j]);
this.previousRowLeft = parseInt(baseCube.css('left'), 10)
this.previousRowTop = parseInt(baseCube.css('top'), 10)
for(var n = 0; n < this.ROWS; n++){
var cube = baseCube.clone();
cube.css({ top: this.previousRowTop - sin, left: this.previousRowLeft - cos});
this.$cubes.prepend(cube);
this.lastCube = cube;
this.previousRowLeft = parseInt(this.lastCube.css('left'), 10)
this.previousRowTop = parseInt(this.lastCube.css('top'), 10)
}
}
var $all = $('.cube');
for(var c = 0; c < $all.length; c++){
(function(index){
setTimeout(function(){
var $theCube = $($all[index]);
$theCube.addClass('in')
}, 100*c)
})(c)
}
},
getRadiansForAngle: function(angle) {
return angle * (Math.PI/180);
}
});
window.CubeDraw = CubeDraw;
})();

View File

@ -1,45 +0,0 @@
(function(Sidebar, CubeDraw){
// Quick and dirty IE detection
var isIE = (function(){
if (window.navigator.userAgent.match('Trident')) {
return true;
} else {
return false;
}
})();
// isIE = true;
var Init = {
start: function(){
var id = document.body.id.toLowerCase();
if (this.Pages[id]) {
this.Pages[id]();
}
//always init sidebar
Init.initializeSidebar();
},
initializeSidebar: function(){
new Sidebar();
},
initializeHomepage: function(){
new CubeDraw();
},
Pages: {
'page-home': function(){
Init.initializeHomepage();
}
}
};
Init.start();
})(window.Sidebar, window.CubeDraw);

View File

@ -1,51 +0,0 @@
(function(){
Sidebar = Base.extend({
$body: null,
$overlay: null,
$sidebar: null,
$sidebarHeader: null,
$sidebarImg: null,
$toggleButton: null,
constructor: function(){
this.$body = $('body');
this.$overlay = $('.sidebar-overlay');
this.$sidebar = $('#sidebar');
this.$sidebarHeader = $('#sidebar .sidebar-header');
this.$toggleButton = $('.navbar-toggle');
this.sidebarImg = this.$sidebarHeader.css('background-image');
this.addEventListeners();
},
addEventListeners: function(){
var _this = this;
_this.$toggleButton.on('click', function() {
_this.$sidebar.toggleClass('open');
if ((_this.$sidebar.hasClass('sidebar-fixed-left') || _this.$sidebar.hasClass('sidebar-fixed-right')) && _this.$sidebar.hasClass('open')) {
_this.$overlay.addClass('active');
_this.$body.css('overflow', 'hidden');
} else {
_this.$overlay.removeClass('active');
_this.$body.css('overflow', 'auto');
}
return false;
});
_this.$overlay.on('click', function() {
$(this).removeClass('active');
_this.$body.css('overflow', 'auto');
_this.$sidebar.removeClass('open');
});
}
});
window.Sidebar = Sidebar;
})();

View File

@ -1,15 +1,7 @@
//= require turbolinks
//= require jquery
//= require bootstrap
//= require lib/_jquery.waypoints
//= require lib/_String.substitute
//= require lib/_Function.prototype.bind
//= require lib/_Base
//= require app/_Sidebar
//= require app/_CubeDraw
//= require app/_Init
// assets/javascripts/application.js
//= require hashicorp/mega-nav
//= require hashicorp/sidebar
//= require _cubes

View File

@ -1,145 +0,0 @@
/*
Based on Base.js 1.1a (c) 2006-2010, Dean Edwards
Updated to pass JSHint and converted into a module by Kenneth Powers
License: http://www.opensource.org/licenses/mit-license.php
*/
/*global define:true module:true*/
/*jshint eqeqeq:true*/
(function (name, global, definition) {
if (typeof module !== 'undefined') {
module.exports = definition();
} else if (typeof define !== 'undefined' && typeof define.amd === 'object') {
define(definition);
} else {
global[name] = definition();
}
})('Base', this, function () {
// Base Object
var Base = function () {};
// Implementation
Base.extend = function (_instance, _static) { // subclass
var extend = Base.prototype.extend;
// build the prototype
Base._prototyping = true;
var proto = new this();
extend.call(proto, _instance);
proto.base = function () {
// call this method from any other method to invoke that method's ancestor
};
delete Base._prototyping;
// create the wrapper for the constructor function
//var constructor = proto.constructor.valueOf(); //-dean
var constructor = proto.constructor;
var klass = proto.constructor = function () {
if (!Base._prototyping) {
if (this._constructing || this.constructor === klass) { // instantiation
this._constructing = true;
constructor.apply(this, arguments);
delete this._constructing;
} else if (arguments[0] !== null) { // casting
return (arguments[0].extend || extend).call(arguments[0], proto);
}
}
};
// build the class interface
klass.ancestor = this;
klass.extend = this.extend;
klass.forEach = this.forEach;
klass.implement = this.implement;
klass.prototype = proto;
klass.toString = this.toString;
klass.valueOf = function (type) {
return (type === 'object') ? klass : constructor.valueOf();
};
extend.call(klass, _static);
// class initialization
if (typeof klass.init === 'function') klass.init();
return klass;
};
Base.prototype = {
extend: function (source, value) {
if (arguments.length > 1) { // extending with a name/value pair
var ancestor = this[source];
if (ancestor && (typeof value === 'function') && // overriding a method?
// the valueOf() comparison is to avoid circular references
(!ancestor.valueOf || ancestor.valueOf() !== value.valueOf()) && /\bbase\b/.test(value)) {
// get the underlying method
var method = value.valueOf();
// override
value = function () {
var previous = this.base || Base.prototype.base;
this.base = ancestor;
var returnValue = method.apply(this, arguments);
this.base = previous;
return returnValue;
};
// point to the underlying method
value.valueOf = function (type) {
return (type === 'object') ? value : method;
};
value.toString = Base.toString;
}
this[source] = value;
} else if (source) { // extending with an object literal
var extend = Base.prototype.extend;
// if this object has a customized extend method then use it
if (!Base._prototyping && typeof this !== 'function') {
extend = this.extend || extend;
}
var proto = {
toSource: null
};
// do the "toString" and other methods manually
var hidden = ['constructor', 'toString', 'valueOf'];
// if we are prototyping then include the constructor
for (var i = Base._prototyping ? 0 : 1; i < hidden.length; i++) {
var h = hidden[i];
if (source[h] !== proto[h])
extend.call(this, h, source[h]);
}
// copy each of the source object's properties to this object
for (var key in source) {
if (!proto[key]) extend.call(this, key, source[key]);
}
}
return this;
}
};
// initialize
Base = Base.extend({
constructor: function () {
this.extend(arguments[0]);
}
}, {
ancestor: Object,
version: '1.1',
forEach: function (object, block, context) {
for (var key in object) {
if (this.prototype[key] === undefined) {
block.call(context, object[key], key, object);
}
}
},
implement: function () {
for (var i = 0; i < arguments.length; i++) {
if (typeof arguments[i] === 'function') {
// if it's a function, call it
arguments[i](this.prototype);
} else {
// add the interface using the extend method
this.prototype.extend(arguments[i]);
}
}
return this;
},
toString: function () {
return String(this.valueOf());
}
});
// Return Base implementation
return Base;
});

View File

@ -1,21 +0,0 @@
if (!Function.prototype.bind) {
Function.prototype.bind = function (oThis) {
if (typeof this !== "function") {
throw new TypeError("Function.prototype.bind - what is trying to be bound is not callable");
}
var aArgs = Array.prototype.slice.call(arguments, 1),
fToBind = this,
fNOP = function () {},
fBound = function () {
return fToBind.apply(this instanceof fNOP && oThis ?
this : oThis,
aArgs.concat(Array.prototype.slice.call(arguments)));
};
fNOP.prototype = this.prototype;
fBound.prototype = new fNOP();
return fBound;
};
}

View File

@ -1,14 +0,0 @@
(function(String){
if (String.prototype.substitute) {
return;
}
String.prototype.substitute = function(object, regexp){
return String(this).replace(regexp || (/\\?\{([^{}]+)\}/g), function(match, name){
if (match.charAt(0) == '\\') return match.slice(1);
return (object[name] !== null) ? object[name] : '';
});
};
})(String);

View File

@ -1,647 +0,0 @@
/*!
Waypoints - 3.1.1
Copyright © 2011-2015 Caleb Troughton
Licensed under the MIT license.
https://github.com/imakewebthings/waypoints/blog/master/licenses.txt
*/
(function() {
'use strict'
var keyCounter = 0
var allWaypoints = {}
/* http://imakewebthings.com/waypoints/api/waypoint */
function Waypoint(options) {
if (!options) {
throw new Error('No options passed to Waypoint constructor')
}
if (!options.element) {
throw new Error('No element option passed to Waypoint constructor')
}
if (!options.handler) {
throw new Error('No handler option passed to Waypoint constructor')
}
this.key = 'waypoint-' + keyCounter
this.options = Waypoint.Adapter.extend({}, Waypoint.defaults, options)
this.element = this.options.element
this.adapter = new Waypoint.Adapter(this.element)
this.callback = options.handler
this.axis = this.options.horizontal ? 'horizontal' : 'vertical'
this.enabled = this.options.enabled
this.triggerPoint = null
this.group = Waypoint.Group.findOrCreate({
name: this.options.group,
axis: this.axis
})
this.context = Waypoint.Context.findOrCreateByElement(this.options.context)
if (Waypoint.offsetAliases[this.options.offset]) {
this.options.offset = Waypoint.offsetAliases[this.options.offset]
}
this.group.add(this)
this.context.add(this)
allWaypoints[this.key] = this
keyCounter += 1
}
/* Private */
Waypoint.prototype.queueTrigger = function(direction) {
this.group.queueTrigger(this, direction)
}
/* Private */
Waypoint.prototype.trigger = function(args) {
if (!this.enabled) {
return
}
if (this.callback) {
this.callback.apply(this, args)
}
}
/* Public */
/* http://imakewebthings.com/waypoints/api/destroy */
Waypoint.prototype.destroy = function() {
this.context.remove(this)
this.group.remove(this)
delete allWaypoints[this.key]
}
/* Public */
/* http://imakewebthings.com/waypoints/api/disable */
Waypoint.prototype.disable = function() {
this.enabled = false
return this
}
/* Public */
/* http://imakewebthings.com/waypoints/api/enable */
Waypoint.prototype.enable = function() {
this.context.refresh()
this.enabled = true
return this
}
/* Public */
/* http://imakewebthings.com/waypoints/api/next */
Waypoint.prototype.next = function() {
return this.group.next(this)
}
/* Public */
/* http://imakewebthings.com/waypoints/api/previous */
Waypoint.prototype.previous = function() {
return this.group.previous(this)
}
/* Private */
Waypoint.invokeAll = function(method) {
var allWaypointsArray = []
for (var waypointKey in allWaypoints) {
allWaypointsArray.push(allWaypoints[waypointKey])
}
for (var i = 0, end = allWaypointsArray.length; i < end; i++) {
allWaypointsArray[i][method]()
}
}
/* Public */
/* http://imakewebthings.com/waypoints/api/destroy-all */
Waypoint.destroyAll = function() {
Waypoint.invokeAll('destroy')
}
/* Public */
/* http://imakewebthings.com/waypoints/api/disable-all */
Waypoint.disableAll = function() {
Waypoint.invokeAll('disable')
}
/* Public */
/* http://imakewebthings.com/waypoints/api/enable-all */
Waypoint.enableAll = function() {
Waypoint.invokeAll('enable')
}
/* Public */
/* http://imakewebthings.com/waypoints/api/refresh-all */
Waypoint.refreshAll = function() {
Waypoint.Context.refreshAll()
}
/* Public */
/* http://imakewebthings.com/waypoints/api/viewport-height */
Waypoint.viewportHeight = function() {
return window.innerHeight || document.documentElement.clientHeight
}
/* Public */
/* http://imakewebthings.com/waypoints/api/viewport-width */
Waypoint.viewportWidth = function() {
return document.documentElement.clientWidth
}
Waypoint.adapters = []
Waypoint.defaults = {
context: window,
continuous: true,
enabled: true,
group: 'default',
horizontal: false,
offset: 0
}
Waypoint.offsetAliases = {
'bottom-in-view': function() {
return this.context.innerHeight() - this.adapter.outerHeight()
},
'right-in-view': function() {
return this.context.innerWidth() - this.adapter.outerWidth()
}
}
window.Waypoint = Waypoint
}())
;(function() {
'use strict'
function requestAnimationFrameShim(callback) {
window.setTimeout(callback, 1000 / 60)
}
var keyCounter = 0
var contexts = {}
var Waypoint = window.Waypoint
var oldWindowLoad = window.onload
/* http://imakewebthings.com/waypoints/api/context */
function Context(element) {
this.element = element
this.Adapter = Waypoint.Adapter
this.adapter = new this.Adapter(element)
this.key = 'waypoint-context-' + keyCounter
this.didScroll = false
this.didResize = false
this.oldScroll = {
x: this.adapter.scrollLeft(),
y: this.adapter.scrollTop()
}
this.waypoints = {
vertical: {},
horizontal: {}
}
element.waypointContextKey = this.key
contexts[element.waypointContextKey] = this
keyCounter += 1
this.createThrottledScrollHandler()
this.createThrottledResizeHandler()
}
/* Private */
Context.prototype.add = function(waypoint) {
var axis = waypoint.options.horizontal ? 'horizontal' : 'vertical'
this.waypoints[axis][waypoint.key] = waypoint
this.refresh()
}
/* Private */
Context.prototype.checkEmpty = function() {
var horizontalEmpty = this.Adapter.isEmptyObject(this.waypoints.horizontal)
var verticalEmpty = this.Adapter.isEmptyObject(this.waypoints.vertical)
if (horizontalEmpty && verticalEmpty) {
this.adapter.off('.waypoints')
delete contexts[this.key]
}
}
/* Private */
Context.prototype.createThrottledResizeHandler = function() {
var self = this
function resizeHandler() {
self.handleResize()
self.didResize = false
}
this.adapter.on('resize.waypoints', function() {
if (!self.didResize) {
self.didResize = true
Waypoint.requestAnimationFrame(resizeHandler)
}
})
}
/* Private */
Context.prototype.createThrottledScrollHandler = function() {
var self = this
function scrollHandler() {
self.handleScroll()
self.didScroll = false
}
this.adapter.on('scroll.waypoints', function() {
if (!self.didScroll || Waypoint.isTouch) {
self.didScroll = true
Waypoint.requestAnimationFrame(scrollHandler)
}
})
}
/* Private */
Context.prototype.handleResize = function() {
Waypoint.Context.refreshAll()
}
/* Private */
Context.prototype.handleScroll = function() {
var triggeredGroups = {}
var axes = {
horizontal: {
newScroll: this.adapter.scrollLeft(),
oldScroll: this.oldScroll.x,
forward: 'right',
backward: 'left'
},
vertical: {
newScroll: this.adapter.scrollTop(),
oldScroll: this.oldScroll.y,
forward: 'down',
backward: 'up'
}
}
for (var axisKey in axes) {
var axis = axes[axisKey]
var isForward = axis.newScroll > axis.oldScroll
var direction = isForward ? axis.forward : axis.backward
for (var waypointKey in this.waypoints[axisKey]) {
var waypoint = this.waypoints[axisKey][waypointKey]
var wasBeforeTriggerPoint = axis.oldScroll < waypoint.triggerPoint
var nowAfterTriggerPoint = axis.newScroll >= waypoint.triggerPoint
var crossedForward = wasBeforeTriggerPoint && nowAfterTriggerPoint
var crossedBackward = !wasBeforeTriggerPoint && !nowAfterTriggerPoint
if (crossedForward || crossedBackward) {
waypoint.queueTrigger(direction)
triggeredGroups[waypoint.group.id] = waypoint.group
}
}
}
for (var groupKey in triggeredGroups) {
triggeredGroups[groupKey].flushTriggers()
}
this.oldScroll = {
x: axes.horizontal.newScroll,
y: axes.vertical.newScroll
}
}
/* Private */
Context.prototype.innerHeight = function() {
/*eslint-disable eqeqeq */
if (this.element == this.element.window) {
return Waypoint.viewportHeight()
}
/*eslint-enable eqeqeq */
return this.adapter.innerHeight()
}
/* Private */
Context.prototype.remove = function(waypoint) {
delete this.waypoints[waypoint.axis][waypoint.key]
this.checkEmpty()
}
/* Private */
Context.prototype.innerWidth = function() {
/*eslint-disable eqeqeq */
if (this.element == this.element.window) {
return Waypoint.viewportWidth()
}
/*eslint-enable eqeqeq */
return this.adapter.innerWidth()
}
/* Public */
/* http://imakewebthings.com/waypoints/api/context-destroy */
Context.prototype.destroy = function() {
var allWaypoints = []
for (var axis in this.waypoints) {
for (var waypointKey in this.waypoints[axis]) {
allWaypoints.push(this.waypoints[axis][waypointKey])
}
}
for (var i = 0, end = allWaypoints.length; i < end; i++) {
allWaypoints[i].destroy()
}
}
/* Public */
/* http://imakewebthings.com/waypoints/api/context-refresh */
Context.prototype.refresh = function() {
/*eslint-disable eqeqeq */
var isWindow = this.element == this.element.window
/*eslint-enable eqeqeq */
var contextOffset = this.adapter.offset()
var triggeredGroups = {}
var axes
this.handleScroll()
axes = {
horizontal: {
contextOffset: isWindow ? 0 : contextOffset.left,
contextScroll: isWindow ? 0 : this.oldScroll.x,
contextDimension: this.innerWidth(),
oldScroll: this.oldScroll.x,
forward: 'right',
backward: 'left',
offsetProp: 'left'
},
vertical: {
contextOffset: isWindow ? 0 : contextOffset.top,
contextScroll: isWindow ? 0 : this.oldScroll.y,
contextDimension: this.innerHeight(),
oldScroll: this.oldScroll.y,
forward: 'down',
backward: 'up',
offsetProp: 'top'
}
}
for (var axisKey in axes) {
var axis = axes[axisKey]
for (var waypointKey in this.waypoints[axisKey]) {
var waypoint = this.waypoints[axisKey][waypointKey]
var adjustment = waypoint.options.offset
var oldTriggerPoint = waypoint.triggerPoint
var elementOffset = 0
var freshWaypoint = oldTriggerPoint == null
var contextModifier, wasBeforeScroll, nowAfterScroll
var triggeredBackward, triggeredForward
if (waypoint.element !== waypoint.element.window) {
elementOffset = waypoint.adapter.offset()[axis.offsetProp]
}
if (typeof adjustment === 'function') {
adjustment = adjustment.apply(waypoint)
}
else if (typeof adjustment === 'string') {
adjustment = parseFloat(adjustment)
if (waypoint.options.offset.indexOf('%') > - 1) {
adjustment = Math.ceil(axis.contextDimension * adjustment / 100)
}
}
contextModifier = axis.contextScroll - axis.contextOffset
waypoint.triggerPoint = elementOffset + contextModifier - adjustment
wasBeforeScroll = oldTriggerPoint < axis.oldScroll
nowAfterScroll = waypoint.triggerPoint >= axis.oldScroll
triggeredBackward = wasBeforeScroll && nowAfterScroll
triggeredForward = !wasBeforeScroll && !nowAfterScroll
if (!freshWaypoint && triggeredBackward) {
waypoint.queueTrigger(axis.backward)
triggeredGroups[waypoint.group.id] = waypoint.group
}
else if (!freshWaypoint && triggeredForward) {
waypoint.queueTrigger(axis.forward)
triggeredGroups[waypoint.group.id] = waypoint.group
}
else if (freshWaypoint && axis.oldScroll >= waypoint.triggerPoint) {
waypoint.queueTrigger(axis.forward)
triggeredGroups[waypoint.group.id] = waypoint.group
}
}
}
for (var groupKey in triggeredGroups) {
triggeredGroups[groupKey].flushTriggers()
}
return this
}
/* Private */
Context.findOrCreateByElement = function(element) {
return Context.findByElement(element) || new Context(element)
}
/* Private */
Context.refreshAll = function() {
for (var contextId in contexts) {
contexts[contextId].refresh()
}
}
/* Public */
/* http://imakewebthings.com/waypoints/api/context-find-by-element */
Context.findByElement = function(element) {
return contexts[element.waypointContextKey]
}
window.onload = function() {
if (oldWindowLoad) {
oldWindowLoad()
}
Context.refreshAll()
}
Waypoint.requestAnimationFrame = function(callback) {
var requestFn = window.requestAnimationFrame ||
window.mozRequestAnimationFrame ||
window.webkitRequestAnimationFrame ||
requestAnimationFrameShim
requestFn.call(window, callback)
}
Waypoint.Context = Context
}())
;(function() {
'use strict'
function byTriggerPoint(a, b) {
return a.triggerPoint - b.triggerPoint
}
function byReverseTriggerPoint(a, b) {
return b.triggerPoint - a.triggerPoint
}
var groups = {
vertical: {},
horizontal: {}
}
var Waypoint = window.Waypoint
/* http://imakewebthings.com/waypoints/api/group */
function Group(options) {
this.name = options.name
this.axis = options.axis
this.id = this.name + '-' + this.axis
this.waypoints = []
this.clearTriggerQueues()
groups[this.axis][this.name] = this
}
/* Private */
Group.prototype.add = function(waypoint) {
this.waypoints.push(waypoint)
}
/* Private */
Group.prototype.clearTriggerQueues = function() {
this.triggerQueues = {
up: [],
down: [],
left: [],
right: []
}
}
/* Private */
Group.prototype.flushTriggers = function() {
for (var direction in this.triggerQueues) {
var waypoints = this.triggerQueues[direction]
var reverse = direction === 'up' || direction === 'left'
waypoints.sort(reverse ? byReverseTriggerPoint : byTriggerPoint)
for (var i = 0, end = waypoints.length; i < end; i += 1) {
var waypoint = waypoints[i]
if (waypoint.options.continuous || i === waypoints.length - 1) {
waypoint.trigger([direction])
}
}
}
this.clearTriggerQueues()
}
/* Private */
Group.prototype.next = function(waypoint) {
this.waypoints.sort(byTriggerPoint)
var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
var isLast = index === this.waypoints.length - 1
return isLast ? null : this.waypoints[index + 1]
}
/* Private */
Group.prototype.previous = function(waypoint) {
this.waypoints.sort(byTriggerPoint)
var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
return index ? this.waypoints[index - 1] : null
}
/* Private */
Group.prototype.queueTrigger = function(waypoint, direction) {
this.triggerQueues[direction].push(waypoint)
}
/* Private */
Group.prototype.remove = function(waypoint) {
var index = Waypoint.Adapter.inArray(waypoint, this.waypoints)
if (index > -1) {
this.waypoints.splice(index, 1)
}
}
/* Public */
/* http://imakewebthings.com/waypoints/api/first */
Group.prototype.first = function() {
return this.waypoints[0]
}
/* Public */
/* http://imakewebthings.com/waypoints/api/last */
Group.prototype.last = function() {
return this.waypoints[this.waypoints.length - 1]
}
/* Private */
Group.findOrCreate = function(options) {
return groups[options.axis][options.name] || new Group(options)
}
Waypoint.Group = Group
}())
;(function() {
'use strict'
var $ = window.jQuery
var Waypoint = window.Waypoint
function JQueryAdapter(element) {
this.$element = $(element)
}
$.each([
'innerHeight',
'innerWidth',
'off',
'offset',
'on',
'outerHeight',
'outerWidth',
'scrollLeft',
'scrollTop'
], function(i, method) {
JQueryAdapter.prototype[method] = function() {
var args = Array.prototype.slice.call(arguments)
return this.$element[method].apply(this.$element, args)
}
})
$.each([
'extend',
'inArray',
'isEmptyObject'
], function(i, method) {
JQueryAdapter[method] = $[method]
})
Waypoint.adapters.push({
name: 'jquery',
Adapter: JQueryAdapter
})
Waypoint.Adapter = JQueryAdapter
}())
;(function() {
'use strict'
var Waypoint = window.Waypoint
function createExtension(framework) {
return function() {
var waypoints = []
var overrides = arguments[0]
if (framework.isFunction(arguments[0])) {
overrides = framework.extend({}, arguments[1])
overrides.handler = arguments[0]
}
this.each(function() {
var options = framework.extend({}, overrides, {
element: this
})
if (typeof options.context === 'string') {
options.context = framework(this).closest(options.context)[0]
}
waypoints.push(new Waypoint(options))
})
return waypoints
}
}
if (window.jQuery) {
window.jQuery.fn.waypoint = createExtension(window.jQuery)
}
if (window.Zepto) {
window.Zepto.fn.waypoint = createExtension(window.Zepto)
}
}())
;

View File

@ -2,55 +2,58 @@
// API
// --------------------------------------------------
.bs-api-section dl, dl.api {
margin-top: 30px;
line-height: 20px;
.layout-api,
.layout-http {
dl, dl.api {
margin-top: 30px;
line-height: 20px;
dt {
color: #888;
text-transform: uppercase;
font-weight: normal;
float: left;
width: 150px;
text-align: right;
}
dd {
margin-left: 170px;
pre.api-sample {
margin-top: 20px;
font-size: 14px;
padding: 10px;
dt {
color: #888;
text-transform: uppercase;
font-weight: normal;
float: left;
width: 150px;
text-align: right;
}
}
ul {
margin: 0;
padding: 0;
dd {
margin-left: 170px;
li {
pre.api-sample {
margin-top: 20px;
font-size: 14px;
padding: 10px;
}
}
ul {
margin: 0;
list-style-type: none;
line-height: 20px;
padding: 0;
padding-bottom: 15px;
font-size: 15px;
font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-weight: 500;
&:last-child {
padding-bottom: 0;
}
li {
margin: 0;
list-style-type: none;
line-height: 20px;
padding: 0;
padding-bottom: 15px;
font-size: 15px;
font-family: "Lato", "Helvetica Neue", Helvetica, Arial, sans-serif;
font-weight: 500;
span.param {
font-weight: bold;
}
&:last-child {
padding-bottom: 0;
}
span.param-flags {
font-style: italic;
color: #888;
padding-right: 6px;
span.param {
font-weight: bold;
}
span.param-flags {
font-style: italic;
color: #888;
padding-right: 6px;
}
}
}
}

View File

@ -1,118 +1,43 @@
//
// Button Styles
// --------------------------------------------------
.h-btn{
.button {
background: $button-background;
border: 1px solid $button-font-color;
box-shadow: 3px 4px 0 rgba(0,0,0,0.1);
color: $button-font-color;
display: inline-block;
background-color: transparent;
color: $black;
@include transition(color .3s ease-in-out);
//@include btn-shadow();
font-family: $button-font-family;
font-size: $button-font-size;
font-weight: $button-font-weight;
letter-spacing: 1px;
margin-bottom: 4px;
padding: 10px 30px;
text-transform: uppercase;
border-radius: 3px;
text-decoration: none;
&.has-caret{
span.h-caret{
display: inline-block;
width: 8px;
height: 12px;
margin-left: 10px;
@include transition(all 300ms ease-in);
&:hover,
&:active,
&:focus {
text-decoration: none;
}
&:hover {
background: $button-font-color;
border: 1px solid $button-font-color;
color: $button-background;
}
&.primary {
background: $button-primary-background;
border: 1px solid darken($button-primary-background, 5%);
color: $button-primary-font-color;
&:hover {
background: lighten($button-primary-background, 5%);
}
}
&.lrg{
font-size: $font-size;
padding: 10px 24px;
}
&.sml{
&.inline {
padding: 8px 14px;
font-size: $font-size - 2;
line-height: 14px;
&.has-caret{
span.h-caret{
background-size: 6px 9px !important;
margin-bottom: -2px;
margin-right: -3px;
}
}
}
&.light{
color: $green-light;
&.has-border{
border: 2px solid $green-light;
}
&.has-caret{
span.h-caret{
background: image-url('caret-light.png') 0 0 no-repeat;
@include img-retina("caret-light.png", "caret-light@2x.png", 8px, 12px);
}
}
}
&.green{
color: $green;
&.has-border{
border: 2px solid $green;
}
span.h-caret{
background: image-url('caret-green.png') 0 0 no-repeat;
@include img-retina("caret-green.png", "caret-green@2x.png", 8px, 12px);
}
&.fill{
background-color: $green;
color: $white;
span.h-caret{
background: image-url('caret-white.png') 0 0 no-repeat;
@include img-retina("caret-white.png", "caret-white@2x.png", 8px, 12px);
}
}
}
&.gray{
color: $blue-light;
&.border{
border: 2px solid $blue-light;
}
&.fill{
background-color: $blue-light;
color: $white;
span.h-caret{
background: image-url('caret-white.png') 0 0 no-repeat;
@include img-retina("caret-white.png", "caret-white@2x.png", 8px, 12px);
}
}
}
&.dark{
color: $green-dark;
&.border{
border: 2px solid $green-dark;
}
}
&:hover{
text-decoration: none;
@include transition(color 200ms ease-in);
&.has-caret{
span.h-caret{
@include translate(4px, 0);
@include transition(all 200ms ease-in);
}
}
}
}

View File

@ -1,16 +1,22 @@
.people {
margin-top: 30px;
#inner {
.people {
margin-top: 30px;
.person {
margin-bottom: 40px;
.person {
&:after {
display: block;
clear: both;
content: ' ';
}
img {
width: 125px;
margin: auto auto;
}
img {
width: 125px;
margin: auto auto;
}
.bio {
padding-left: 150px;
.bio {
padding-left: 150px;
}
}
}
}

View File

@ -1,49 +1,4 @@
//
// Docs
// --------------------------------------------------
body.layout-docs,
body.layout-guides,
body.layout-inner,
body.layout-downloads,
body.layout-http,
body.layout-intro {
>.container {
.col-md-8[role=main] {
min-height: 800px;
background-color: white;
>div {
position: relative;
z-index: 10;
}
}
}
*:focus {
outline: none;
}
h1 > code,
h2 > code,
h3 > code,
h4 > code,
h5 > code
h6 > code,
li > code,
table code,
p code,
tt,
.alert code {
font-family: $font-family-monospace;
font-size: 90%;
background-color: transparent;
color: inherit;
padding: 0;
}
}
.docs-sidebar {
#docs-sidebar {
margin-bottom: 30px;
margin-top: 50px;
@ -118,88 +73,3 @@ body.layout-intro {
}
}
}
.bs-docs-section {
padding-top: 10px;
padding-left: 3%;
padding-bottom: 80px;
p, li, .alert {
font-size: $font-size;
font-family: $font-family-open-sans;
font-weight: $font-weight-reg;
line-height: 1.84em;
margin: 0 0 $font-size;
-webkit-font-smoothing: antialiased;
}
pre {
font-family: $font-family-monospace;
font-size: ($font-size - 3);
font-weight: normal;
padding: 20px;
margin: 0 0 $font-size;
// This will force the code to scroll horizontally on small screens
// instead of wrapping.
code {
overflow-wrap: normal;
white-space: pre;
}
}
a {
color: $body-link-color;
text-decoration: none;
&:hover {
text-decoration: underline;
}
code {
background: inherit;
color: $body-link-color;
}
}
img {
max-width: 650px;
margin-top: 25px;
margin-bottom: 25px;
}
h1,
h2,
h3,
h4 {
color: $body-font-color;
margin-top: 54px;
margin-bottom: $font-size;
line-height: 1.3;
}
h2 {
padding-bottom: 3px;
border-bottom: 1px solid $gray-light;
}
}
@media (max-width: 992px) {
.bs-docs-section {
padding-left: 0;
}
}
@media (max-width: 768px) {
.bs-docs-section {
padding-top: 0;
}
}
@media (max-width: 480px) {
.bs-docs-section {
img {
max-width: 450px;
}
}
}

View File

@ -1,59 +1,60 @@
.downloads {
margin-top: 20px;
body.layout-downloads {
#inner {
.downloads {
margin-top: 20px;
.description {
margin-bottom: 20px;
}
.download {
border-bottom: 1px solid #b2b2b2;
padding-bottom: 15px;
margin-top: 10px;
margin-bottom: 10px;
.details {
padding-left: 95px;
h2 {
margin-top: 30px;
.description {
margin-bottom: 20px;
}
ul {
padding-left: 0px;
}
.download {
border-bottom: 1px solid #b2b2b2;
padding-bottom: 15px;
margin-top: 10px;
margin-bottom: 10px;
li {
display: inline-block;
.details {
padding-left: 95px;
&:after {
content: " | ";
h2 {
margin-top: 25px;
border: none;
}
ul {
padding-left: 0px;
margin: -8px 0 0 0;
}
li {
display: inline-block;
&:after {
content: " | ";
}
&:last-child:after {
content: "";
}
}
}
&:last-child:after {
content: "";
.icon {
img {
width: 75px;
}
}
.os-name {
font-size: 40px;
margin-bottom: -3px;
}
}
}
.icon {
img {
width: 75px;
.poweredby {
margin-top: 20px;
text-align: center;
}
}
.os-name {
font-size: 40px;
margin-bottom: -3px;
}
}
.poweredby {
margin-top: 20px;
img {
display: block;
margin: 0 auto;
width: 122px;
}
}
}

View File

@ -1,4 +1,6 @@
#footer {
padding-top: 50px;
ul.footer-links {
li {
a {

View File

@ -1,19 +1,19 @@
//
// Global Site
// --------------------------------------------------
/*html{
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
}*/
html {
height: 100%;
min-height: 100%;
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
}
body {
-webkit-font-smoothing: antialiased;
color: $body-font-color;
background-color: $white;
font-size: 15px;
font-size: $font-size;
font-family: $font-family-open-sans;
font-weight: 500;
font-weight: $font-weight-reg;
height: 100%;
min-height: 100%;
}
h1, h2, h3, h4, h5 {
@ -21,35 +21,11 @@ h1, h2, h3, h4, h5 {
-webkit-font-smoothing: antialiased;
}
h1{
font-weight: $font-weight-reg;
h1 {
margin-bottom: 24px;
}
.highlight{
margin-bottom: 18px;
}
pre {
background-color: $black;
color: $white;
font-size: 14px;
font-weight: normal;
font-family: "Courier New", Monaco, Menlo, Consolas, monospace;
border: none;
padding: 20px;
margin-bottom: 0;
}
.center {
text-align: center;
}
.alert p:last-child {
margin-bottom: 0;
}
//Typekit utilites for hiding FOUC
// Avoid FOUT
.wf-loading {
visibility: hidden;
}
@ -57,10 +33,3 @@ pre {
.wf-active, .wf-inactive {
visibility: visible;
}
//fixed grid below 992 to prevent smaller responsive sizes
@media (min-width: 768px) and (max-width: 992px) {
.container{
width: 100%;
}
}

View File

@ -1,5 +1,6 @@
#header {
// Hamburger menu
background: $header-background-color;
.navbar-toggle {
height: $header-height;
margin: 0;
@ -7,44 +8,42 @@
border-radius: 0;
.icon-bar {
border: 1px solid $black;
border: 1px solid $white;
border-radius: 0;
}
}
// Logo
.navbar-brand {
display: block;
margin: 0;
padding: 0;
.logo {
color: $header-link-color;
display: inline-block;
font-family: $font-family-klavika;
font-weight: $font-weight-bold;
font-size: 0;
a {
display: flex;
align-items: center;
height: $header-height;
line-height: $header-height;
width: 200px;
padding-left: 64px;
background: image-url('logo-text.svg') 0 0 no-repeat;
background-position: left center;
&:hover, &:focus, &:active {
outline: 0;
text-decoration: none;
svg.logo {
transition: opacity 0.15s ease-in-out;
@extend svg.logo.white;
&:hover, &:focus, &:active {
opacity: 0.6;
outline: 0;
text-decoration: none;
}
}
}
}
// Nav
ul.nav {
li {
a {
color: $header-link-color;
font-size: $header-font-size;
font-family: $font-family-open-sans;
font-weight: $font-weight-bold;
height: $header-height;
line-height: $header-height;
padding: 0 10px;

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,89 @@
#inner {
p, li, .alert {
font-size: $font-size;
font-family: $font-family-open-sans;
font-weight: $font-weight-reg;
line-height: 1.84em;
margin: 0 0 $font-size;
-webkit-font-smoothing: antialiased;
}
.alert p:last-child {
margin-bottom: 0;
}
pre {
font-family: $font-family-monospace;
font-size: ($font-size - 3);
font-weight: normal;
padding: 20px;
margin: 0 0 $font-size;
// This will force the code to scroll horizontally on small screens
// instead of wrapping.
code {
overflow-wrap: normal;
white-space: pre;
}
}
a {
color: $body-link-color;
text-decoration: none;
&:hover {
text-decoration: underline;
}
code {
background: inherit;
color: $body-link-color;
}
}
img {
display: block;
margin: 25px auto;
max-width: 650px;
height: auto;
width: 90%;
}
h1,
h2,
h3,
h4 {
color: $body-font-color;
margin-top: 54px;
margin-bottom: $font-size;
line-height: 1.3;
}
h2 {
padding-bottom: 3px;
border-bottom: 1px solid $gray-light;
}
h1 > code,
h2 > code,
h3 > code,
h4 > code,
h5 > code
h6 > code,
li code,
table code,
p code,
tt,
.alert code {
font-family: $font-family-monospace;
font-size: 90%;
background-color: transparent;
color: inherit;
padding: 0;
}
table {
@extend .table;
@extend .table-striped;
}
}

View File

@ -1,37 +0,0 @@
body.livestream {
background-color: black;
}
.livestream-container {
display: block;
}
.livestream-video {
display: block;
margin: 0 auto;
max-width: 1000px;
}
#live-stream-video {
margin-top: 15px;
border: 0 none transparent;
width: 100%;
height: 650px;
@media (min-width: 1200px) {
height: 650px;
}
@media (max-width: 992px) {
height: 500px;
}
@media (max-width: 768px) {
height: 325px;
}
@media (max-width: 422px) {
height: 225px;
}
}

View File

@ -0,0 +1,62 @@
svg.logo {
&.color {
opacity: 1.0;
path.top {
fill: $nomad-green;
opacity: 1.0;
}
path.left {
fill: $nomad-green-dark;
opacity: 1.0;
}
path.right {
fill: $nomad-green-light;
opacity: 1.0;
}
path.n {
fill: $white;
opacity: 1.0;
}
path.text {
fill: $black;
opacity: 1.0;
}
}
// The default logo class is the colored version
@extend .color;
&.white {
opacity: 1.0;
path.top {
fill: $white;
opacity: 0.8;
}
path.left {
fill: $white;
opacity: 1.0;
}
path.right {
fill: $white;
opacity: 0.6;
}
path.n {
fill: $nomad-green;
opacity: 1.0;
}
path.text {
fill: $white;
opacity: 1.0;
}
}
}

View File

@ -1,761 +0,0 @@
//
// Mixins
// --------------------------------------------------
// Utilities
// -------------------------
// Clearfix
// Source: http://nicolasgallagher.com/micro-clearfix-hack/
//
// For modern browsers
// 1. The space content is one way to avoid an Opera bug when the
// contenteditable attribute is included anywhere else in the document.
// Otherwise it causes space to appear at the top and bottom of elements
// that are clearfixed.
// 2. The use of `table` rather than `block` is only necessary if using
// `:before` to contain the top-margins of child elements.
@mixin clearfix() {
&:before,
&:after {
content: " "; /* 1 */
display: table; /* 2 */
}
&:after {
clear: both;
}
}
// Webkit-style focus
@mixin tab-focus() {
// Default
outline: thin dotted #333;
// Webkit
outline: 5px auto -webkit-focus-ring-color;
outline-offset: -2px;
}
// Center-align a block level element
@mixin center-block() {
display: block;
margin-left: auto;
margin-right: auto;
}
// Sizing shortcuts
@mixin size($width, $height) {
width: $width;
height: $height;
}
@mixin square($size) {
@include size($size, $size);
}
// Placeholder text
@mixin placeholder($color: $input-color-placeholder) {
&:-moz-placeholder { color: $color; } // Firefox 4-18
&::-moz-placeholder { color: $color; } // Firefox 19+
&:-ms-input-placeholder { color: $color; } // Internet Explorer 10+
&::-webkit-input-placeholder { color: $color; } // Safari and Chrome
}
// Text overflow
// Requires inline-block or block for proper styling
@mixin text-overflow() {
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
// CSS image replacement
// Source: https://github.com/h5bp/html5-boilerplate/commit/aa0396eae757
@mixin hide-text() {
font: #{"0/0"} a;
color: transparent;
text-shadow: none;
background-color: transparent;
border: 0;
}
// CSS3 PROPERTIES
// --------------------------------------------------
// Single side border-radius
@mixin border-top-radius($radius) {
border-top-right-radius: $radius;
border-top-left-radius: $radius;
}
@mixin border-right-radius($radius) {
border-bottom-right-radius: $radius;
border-top-right-radius: $radius;
}
@mixin border-bottom-radius($radius) {
border-bottom-right-radius: $radius;
border-bottom-left-radius: $radius;
}
@mixin border-left-radius($radius) {
border-bottom-left-radius: $radius;
border-top-left-radius: $radius;
}
// Drop shadows
@mixin box-shadow($shadow) {
-webkit-box-shadow: $shadow; // iOS <4.3 & Android <4.1
box-shadow: $shadow;
}
// Transitions
@mixin transition($transition) {
-webkit-transition: $transition;
transition: $transition;
}
@mixin transition-delay($transition-delay) {
-webkit-transition-delay: $transition-delay;
transition-delay: $transition-delay;
}
@mixin transition-duration($transition-duration) {
-webkit-transition-duration: $transition-duration;
transition-duration: $transition-duration;
}
@mixin transition-transform($transition) {
-webkit-transition: -webkit-transform $transition;
-moz-transition: -moz-transform $transition;
-o-transition: -o-transform $transition;
transition: transform $transition;
}
// Transformations
@mixin transform($transform...) {
-webkit-transform: $transform;
-ms-transform: $transform;
transform: $transform;
}
@mixin rotate($degrees) {
-webkit-transform: rotate($degrees);
-ms-transform: rotate($degrees); // IE9+
transform: rotate($degrees);
}
@mixin scale($ratio) {
-webkit-transform: scale($ratio);
-ms-transform: scale($ratio); // IE9+
transform: scale($ratio);
}
@mixin translate($x, $y) {
-webkit-transform: translate($x, $y);
-ms-transform: translate($x, $y); // IE9+
transform: translate($x, $y);
}
@mixin skew($x, $y) {
-webkit-transform: skew($x, $y);
-ms-transform: skewX($x) skewY($y); // See https://github.com/twbs/bootstrap/issues/4885; IE9+
transform: skew($x, $y);
}
@mixin translate3d($x, $y, $z) {
-webkit-transform: translate3d($x, $y, $z);
transform: translate3d($x, $y, $z);
}
//transform origin
@mixin transform-origin ($origin) {
moz-transform-origin: $origin;
-o-transform-origin: $origin;
-ms-transform-origin: $origin;
-webkit-transform-origin: $origin;
transform-origin: $origin;
}
// Backface visibility
// Prevent browsers from flickering when using CSS 3D transforms.
// Default value is `visible`, but can be changed to `hidden`
// See git pull https://github.com/dannykeane/bootstrap.git backface-visibility for examples
@mixin backface-visibility($visibility) {
-webkit-backface-visibility: $visibility;
-moz-backface-visibility: $visibility;
backface-visibility: $visibility;
}
// Box sizing
@mixin box-sizing($boxmodel) {
-webkit-box-sizing: $boxmodel;
-moz-box-sizing: $boxmodel;
box-sizing: $boxmodel;
}
// User select
// For selecting text on the page
@mixin user-select($select) {
-webkit-user-select: $select;
-moz-user-select: $select;
-ms-user-select: $select; // IE10+
-o-user-select: $select;
user-select: $select;
}
// Resize anything
@mixin resizable($direction) {
resize: $direction; // Options: horizontal, vertical, both
overflow: auto; // Safari fix
}
// CSS3 Content Columns
@mixin content-columns($column-count, $column-gap: $grid-gutter-width) {
-webkit-column-count: $column-count;
-moz-column-count: $column-count;
column-count: $column-count;
-webkit-column-gap: $column-gap;
-moz-column-gap: $column-gap;
column-gap: $column-gap;
}
// Optional hyphenation
@mixin hyphens($mode: auto) {
word-wrap: break-word;
-webkit-hyphens: $mode;
-moz-hyphens: $mode;
-ms-hyphens: $mode; // IE10+
-o-hyphens: $mode;
hyphens: $mode;
}
// Opacity
@mixin opacity($opacity) {
opacity: $opacity;
// IE8 filter
$opacity-ie: ($opacity * 100);
filter: #{"alpha(opacity=#{opacity-ie})"};
}
// GRADIENTS
// --------------------------------------------------
#gradient {
// Horizontal gradient, from left to right
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin horizontal($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-gradient(linear, $start-percent top, $end-percent top, from($start-color), to($end-color)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(left, color-stop($start-color $start-percent), color-stop($end-color $end-percent)); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient(left, $start-color $start-percent, $end-color $end-percent); // FF 3.6+
background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{argb($start-color)}', endColorstr='#{argb($end-color)}', GradientType=1); // IE9 and down
}
// Vertical gradient, from top to bottom
//
// Creates two color stops, start and end, by specifying a color and position for each color stop.
// Color stops are not available in IE9 and below.
@mixin vertical($start-color: #555, $end-color: #333, $start-percent: 0%, $end-percent: 100%) {
background-image: -webkit-gradient(linear, left $start-percent, left $end-percent, from($start-color), to($end-color)); // Safari 4+, Chrome 2+
background-image: -webkit-linear-gradient(top, $start-color, $start-percent, $end-color, $end-percent); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient(top, $start-color $start-percent, $end-color $end-percent); // FF 3.6+
background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent); // Standard, IE10
background-repeat: repeat-x;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{argb($start-color)}', endColorstr='#{argb($end-color)}', GradientType=0); // IE9 and down
}
@mixin directional($start-color: #555, $end-color: #333, $deg: 45deg) {
background-repeat: repeat-x;
background-image: -webkit-linear-gradient($deg, $start-color, $end-color); // Safari 5.1+, Chrome 10+
background-image: -moz-linear-gradient($deg, $start-color, $end-color); // FF 3.6+
background-image: linear-gradient($deg, $start-color, $end-color); // Standard, IE10
}
@mixin horizontal-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-gradient(left, linear, 0 0, 0 100%, from($start-color), color-stop($color-stop, $mid-color), to($end-color));
background-image: -webkit-linear-gradient(left, $start-color, $mid-color $color-stop, $end-color);
background-image: -moz-linear-gradient(left, $start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{argb($start-color)}', endColorstr='#{argb($end-color)}', GradientType=1); // IE9 and down
}
@mixin vertical-three-colors($start-color: #00b3ee, $mid-color: #7a43b6, $color-stop: 50%, $end-color: #c3325f) {
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($start-color), color-stop($color-stop, $mid-color), to($end-color));
background-image: -webkit-linear-gradient($start-color, $mid-color $color-stop, $end-color);
background-image: -moz-linear-gradient(top, $start-color, $mid-color $color-stop, $end-color);
background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);
background-repeat: no-repeat;
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{argb($start-color)}', endColorstr='#{argb($end-color)}', GradientType=0); // IE9 and down
}
@mixin radial($inner-color: #555, $outer-color: #333) {
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($inner-color), to($outer-color));
background-image: -webkit-radial-gradient(circle, $inner-color, $outer-color);
background-image: -moz-radial-gradient(circle, $inner-color, $outer-color);
background-image: radial-gradient(circle, $inner-color, $outer-color);
background-repeat: no-repeat;
}
@mixin striped($color: #555, $angle: 45deg) {
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
}
}
// Reset filters for IE
//
// When you need to remove a gradient background, do not forget to use this to reset
// the IE filter for IE9 and below.
@mixin reset-filter() {
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
}
// Retina images
//
// Short retina mixin for setting background-image and -size
@mixin img-retina($file-1x, $file-2x, $width-1x, $height-1x) {
background-image: image-url("#{$file-1x}");
background-size: $width-1x $height-1x;
@media
only screen and (-webkit-min-device-pixel-ratio: 2),
only screen and ( min--moz-device-pixel-ratio: 2),
only screen and ( -o-min-device-pixel-ratio: 2/1),
only screen and ( min-device-pixel-ratio: 2),
only screen and ( min-resolution: 192dpi),
only screen and ( min-resolution: 2dppx) {
background-image: image-url("#{$file-2x}");
background-size: $width-1x $height-1x;
}
}
// Responsive image
//
// Keep images from scaling beyond the width of their parents.
@mixin img-responsive($display: block) {
display: $display;
max-width: 100%; // Part 1: Set a maximum relative to the parent
height: auto; // Part 2: Scale the height according to the width, otherwise you get stretching
}
// COMPONENT MIXINS
// --------------------------------------------------
// Horizontal dividers
// -------------------------
// Dividers (basically an hr) within dropdowns and nav lists
@mixin nav-divider($color: #e5e5e5) {
height: 1px;
margin: (($line-height-computed / 2) - 1) 0;
overflow: hidden;
background-color: $color;
}
// Panels
// -------------------------
@mixin panel-variant($border, $heading-text-color, $heading-bg-color, $heading-border) {
border-color: $border;
& > .panel-heading {
color: $heading-text-color;
background-color: $heading-bg-color;
border-color: $heading-border;
+ .panel-collapse .panel-body {
border-top-color: $border;
}
}
& > .panel-footer {
+ .panel-collapse .panel-body {
border-bottom-color: $border;
}
}
}
// Alerts
// -------------------------
@mixin alert-variant($background, $border, $text-color) {
background-color: $background;
border-color: $border;
color: $text-color;
hr {
border-top-color: darken($border, 5%);
}
.alert-link {
color: darken($text-color, 10%);
}
}
// Tables
// -------------------------
@mixin table-row-variant($state, $background, $border) {
// Exact selectors below required to override `.table-striped` and prevent
// inheritance to nested tables.
.table > thead > tr,
.table > tbody > tr,
.table > tfoot > tr {
> td.#{state},
> th.#{state},
&.#{state} > td,
&.#{state} > th {
background-color: $background;
border-color: $border;
}
}
// Hover states for `.table-hover`
// Note: this is not available for cells or rows within `thead` or `tfoot`.
.table-hover > tbody > tr {
> td.#{state}:hover,
> th.#{state}:hover,
&.#{state}:hover > td {
background-color: darken($background, 5%);
border-color: darken($border, 5%);
}
}
}
// Button variants
// -------------------------
// Easily pump out default styles, as well as :hover, :focus, :active,
// and disabled options for all buttons
@mixin button-variant($color, $background, $border) {
color: $color;
background-color: $background;
border-color: $border;
&:hover,
&:focus,
&:active,
&.active,
.open .dropdown-toggle& {
color: $color;
background-color: darken($background, 8%);
border-color: darken($border, 12%);
}
&:active,
&.active,
.open .dropdown-toggle& {
background-image: none;
}
&.disabled,
&[disabled],
fieldset[disabled] & {
&,
&:hover,
&:focus,
&:active,
&.active {
background-color: $background;
border-color: $border
}
}
}
// Button sizes
// -------------------------
@mixin button-size($padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius;
}
// Pagination
// -------------------------
@mixin pagination-size($padding-vertical, $padding-horizontal, $font-size, $border-radius) {
> li {
> a,
> span {
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
}
&:first-child {
> a,
> span {
@include border-left-radius($border-radius);
}
}
&:last-child {
> a,
> span {
@include border-right-radius($border-radius);
}
}
}
}
// Labels
// -------------------------
@mixin label-variant($color) {
background-color: $color;
&[href] {
&:hover,
&:focus {
background-color: darken($color, 10%);
}
}
}
// Navbar vertical align
// -------------------------
// Vertically center elements in the navbar.
// Example: an element has a height of 30px, so write out `@include navbar-vertical-align(30px);` to calculate the appropriate top margin.
@mixin navbar-vertical-align($element-height) {
margin-top: (($navbar-height - $element-height) / 2);
margin-bottom: (($navbar-height - $element-height) / 2);
}
// Progress bars
// -------------------------
// @mixin progress-bar-variant($color) {
// background-color: $color;
// .progress-striped & {
// #gradient > @include striped($color);
// }
// }
// Responsive utilities
// -------------------------
// More easily include all the states for responsive-utilities.less.
@mixin responsive-visibility() {
display: block !important;
tr& { display: table-row !important; }
th&,
td& { display: table-cell !important; }
}
@mixin responsive-invisibility() {
display: none !important;
tr& { display: none !important; }
th&,
td& { display: none !important; }
}
// Grid System
// -----------
// Centered container element
@mixin container-fixed() {
margin-right: auto;
margin-left: auto;
padding-left: ($grid-gutter-width / 2);
padding-right: ($grid-gutter-width / 2);
@include clearfix();
}
// Creates a wrapper for a series of columns
@mixin make-row($gutter: $grid-gutter-width) {
margin-left: ($gutter / -2);
margin-right: ($gutter / -2);
@include clearfix();
}
// Generate the extra small columns
@mixin make-xs-column($columns, $gutter: $grid-gutter-width) {
position: relative;
float: left;
width: percentage(($columns / $grid-columns));
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
}
// Generate the small columns
@mixin make-sm-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-sm) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the small column offsets
@mixin make-sm-column-offset($columns) {
@media (min-width: $screen-sm) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-push($columns) {
@media (min-width: $screen-sm) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-sm-column-pull($columns) {
@media (min-width: $screen-sm) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the medium columns
@mixin make-md-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-md) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the large column offsets
@mixin make-md-column-offset($columns) {
@media (min-width: $screen-md) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-push($columns) {
@media (min-width: $screen-md) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-md-column-pull($columns) {
@media (min-width: $screen-md) {
right: percentage(($columns / $grid-columns));
}
}
// Generate the large columns
@mixin make-lg-column($columns, $gutter: $grid-gutter-width) {
position: relative;
// Prevent columns from collapsing when empty
min-height: 1px;
// Inner gutter via padding
padding-left: ($gutter / 2);
padding-right: ($gutter / 2);
// Calculate width based on number of columns available
@media (min-width: $screen-lg) {
float: left;
width: percentage(($columns / $grid-columns));
}
}
// Generate the large column offsets
@mixin make-lg-column-offset($columns) {
@media (min-width: $screen-lg) {
margin-left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-push($columns) {
@media (min-width: $screen-lg) {
left: percentage(($columns / $grid-columns));
}
}
@mixin make-lg-column-pull($columns) {
@media (min-width: $screen-lg) {
right: percentage(($columns / $grid-columns));
}
}
// Form validation states
//
// Used in forms.less to generate the form validation CSS for warnings, errors,
// and successes.
@mixin form-control-validation($text-color: #555, $border-color: #ccc, $background-color: #f5f5f5) {
// Color the label and help text
.help-block,
.control-label {
color: $text-color;
}
// Set the border and box shadow on specific inputs to match
.form-control {
border-color: $border-color;
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075)); // Redeclare so transitions work
&:focus {
border-color: darken($border-color, 10%);
$shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 6px lighten($border-color, 20%);
@include box-shadow($shadow);
}
}
// Set validation states also for addons
.input-group-addon {
color: $text-color;
border-color: $border-color;
background-color: $background-color;
}
}
// Form control focus state
//
// Generate a customized focus state and for any input with the specified color,
// which defaults to the `$input-focus-border` variable.
//
// We highly encourage you to not customize the default value, but instead use
// this to tweak colors on an as-needed basis. This aesthetic change is based on
// WebKit's default styles, but applicable to a wider range of browsers. Its
// usability and accessibility should be taken into account with any change.
//
// Example usage: change the default blue border and shadow to white for better
// contrast against a dark gray background.
@mixin form-control-focus($color: $input-border-focus) {
$color-rgba: rgba(red($color), green($color), blue($color), .6);
&:focus {
border-color: $color;
outline: 0;
@include box-shadow(#{"inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px #{color-rgba}"});
}
}
// Form control sizing
//
// Relative text size, padding, and border-radii changes for form controls. For
// horizontal sizing, wrap controls in the predefined grid classes. `<select>`
// element gets special love because it's special, and that's a fact!
@mixin input-size($input-height, $padding-vertical, $padding-horizontal, $font-size, $line-height, $border-radius) {
height: $input-height;
padding: $padding-vertical $padding-horizontal;
font-size: $font-size;
line-height: $line-height;
border-radius: $border-radius;
select& {
height: $input-height;
line-height: $input-height;
}
textarea& {
height: auto;
}
}
//mixins
@mixin img-retina($image1x, $image, $width, $height) {
background-image: image-url($image1x);
background-size: $width $height;
background-repeat: no-repeat;
@media (min--moz-device-pixel-ratio: 1.3),
(-o-min-device-pixel-ratio: 2.6/2),
(-webkit-min-device-pixel-ratio: 1.3),
(min-device-pixel-ratio: 1.3),
(min-resolution: 1.3dppx) {
/* on retina, use image that's scaled by 2 */
background-image: image-url($image);
background-size: $width $height;
}
}
@mixin btn-shadow{
box-shadow: 2px 3px 2px rgba(0,0,0,0.08);
}

View File

@ -1,106 +0,0 @@
.sidebar-overlay {
background: $white;
opacity: 0;
position: fixed;
visibility: hidden;
z-index: 9999;
top: 0;
left: 0;
right: 0;
bottom: 0;
&.active {
opacity: 0.3;
visibility: visible;
}
}
.sidebar {
background-color: $white;
border: none;
display: block;
position: relative;
min-height: 100%;
overflow-y: auto;
overflow-x: hidden;
@include transition(all 0.5s cubic-bezier(0.55, 0, 0.1, 1));
@include clearfix();
.sidebar-divider, .divider {
width: 80%;
height: 1px;
margin: 8px auto;
background-color: #D7D7D7;
}
.sidebar-header {
position: relative;
margin-bottom: 16px;
}
.sidebar-image {
background: image-url('logo-text.svg') 0 0 no-repeat;
display: block;
margin: 24px auto 14px auto;
height: 56px;
width: 153px;
}
.sidebar-nav {
margin: 0;
padding: 0;
text-align: center;
li {
position: relative;
list-style-type: none;
text-align: center;
a {
color: $sidebar-link-color;
position: relative;
cursor: pointer;
user-select: none;
font-family: $font-family-open-sans;
font-weight: $font-weight-reg;
font-size: $sidebar-font-size;
&:hover, &:focus, &:active {
background: transparent;
color: $sidebar-link-color-hover;
outline: 0;
text-decoration: none;
svg {
fill: $sidebar-link-color-hover;
}
}
svg {
fill: $sidebar-link-color;
top: 2px;
width: 14px;
height: 14px;
margin-bottom: -2px;
margin-right: 4px;
}
}
}
}
}
.sidebar {
box-shadow: 0px 2px 25px rgba(0, 0, 0, 0.15);
position: fixed;
width: 0;
z-index: 10000;
top: 0;
bottom: 0;
right: 0;
&.open {
width: 280px;
}
}

View File

@ -1,11 +1,11 @@
pre.highlight code {
color: $gray-dark;
color: #333333;
}
<%= Rouge::Themes::Github.render(scope: ".highlight") %>
pre.highlight {
border: 1px solid $light-gray;
border: 1px solid #CCCCCC;
}
pre.highlight code span.c1 {

View File

@ -1,209 +0,0 @@
//
// Utility classes
// --------------------------------------------------
//
// -------------------------
@mixin anti-alias() {
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
}
@mixin open-light() {
font-family: $font-family-open-sans;
font-weight: 300;
}
@mixin open() {
font-family: $font-family-open-sans;
font-weight: 400;
}
@mixin open-sb() {
font-family: $font-family-open-sans;
font-weight: 600;
}
@mixin open-bold() {
font-family: $font-family-open-sans;
font-weight: 700;
}
@mixin skewY($skew) {
-webkit-transform: skewY($skew);
-moz-transform: skewY($skew);
-ms-transform: skewY($skew);
-o-transform: skewY($skew);
transform: skewY($skew);
}
@mixin v-nav-style-core{
color: $gray-darker;
font-size: 13px;
text-transform: uppercase;
letter-spacing: 0.0625em;
}
@mixin v-nav-style{
margin: 0 15px;
padding: 0;
line-height: 22px;
@include v-nav-style-core();
@include transition( color 0.3s ease );
&:hover{
color: $green-dark;
@include transition( color 0.3s ease );
background-color: transparent;
}
}
@mixin bez-1-transition{
@include transition( all 300ms ease-in-out );
}
@keyframes press {
0% {
opacity: 1;
}
50% {
opacity: .55
}
100% {
opacity: 1;
}
}
@-webkit-keyframes press {
0% {
opacity: 1;
}
50% {
opacity: .55
}
100% {
opacity: 1;
}
}
#demo-app .loading-bar{
display: block;
-webkit-animation: shift-rightwards 2s ease-in-out infinite;
-moz-animation: shift-rightwards 2s ease-in-out infinite;
-ms-animation: shift-rightwards 2s ease-in-out infinite;
-o-animation: shift-rightwards 2s ease-in-out infinite;
animation: shift-rightwards 2s ease-in-out infinite;
-webkit-animation-delay: .4s;
-moz-animation-delay: .4s;
-o-animation-delay: .4s;
animation-delay: .4s;
}
.loading-bar{
position: fixed;
display: none;
bottom: 0;
left: 0;
right: 0;
height: 2px;
z-index: 800;
background: $blue;
-webkit-transform: translateX(100%);
-moz-transform: translateX(100%);
-o-transform: translateX(100%);
transform: translateX(100%);
}
@-webkit-keyframes shift-rightwards
{
0%
{
@include translate(-100%, 0);
}
40%
{
@include translate(0%, 0);
}
60%
{
@include translate(0%, 0);
}
100%
{
@include translate(100%, 0);
}
}
@-moz-keyframes shift-rightwards
{
0%
{
@include translate(-100%, 0);
}
40%
{
@include translate(0%, 0);
}
60%
{
@include translate(0%, 0);
}
100%
{
@include translate(100%, 0);
}
}
@-o-keyframes shift-rightwards
{
0%
{
@include translate(-100%, 0);
}
40%
{
@include translate(0%, 0);
}
60%
{
@include translate(0%, 0);
}
100%
{
@include translate(100%, 0);
}
}
@keyframes shift-rightwards
{
0%
{
@include translate(-100%, 0);
}
40%
{
@include translate(0%, 0);
}
60%
{
@include translate(0%, 0);
}
100%
{
@include translate(100%, 0);
}
}

View File

@ -60,3 +60,86 @@ $header-link-color-hover: $black;
$footer-font-size: $font-size - 2;
$footer-link-color: $body-font-color;
$footer-link-color-hover: $black;
//////////////////
/////////////////////
///////////////////////////
// Colors
$white: #FFFFFF;
$black: #000000;
$gray-darker: #555555;
$nomad-green: #2DAA86;
$nomad-green-dark:#0E7A65;
$nomad-green-light: #27C48D;
$packer-blue: #1DAEFF;
$packer-blue-dark: #1D94DD;
$vagrant-blue: #1563FF;
$vagrant-blue-dark: #104EB2;
$vault-black: #000000;
$vault-blue: #00ABE0;
// Typography
$font-family-klavika: 'klavika-web', 'Open Sans', "Helvetica Neue", Helvetica, Arial, sans-serif;
$font-family-open-sans: 'Open Sans', "Helvetica Neue", Helvetica, Arial, sans-serif;
$font-family-monospace: 'Menlo', 'Monaco', 'Consolas', "Courier New", monospace;
$font-size: 15px;
$font-weight-reg: 400;
$font-weight-bold: 600;
// Body
$body-font-color: $gray-darker;
$body-link-color: $nomad-green;
// Home
$home-header-background-color: transparent;
$home-header-link-color: $gray-darker;
$home-header-link-color-hover: $black;
// Sidebar
$sidebar-background-color: $white;
$sidebar-font-size: $font-size - 2;
$sidebar-link-color: $body-font-color;
$sidebar-link-color-hover: $black;
$sidebar-link-color-active: $body-link-color;
$sidebar-font-family: $font-family-open-sans;
$sidebar-font-weight: $font-weight-reg;
// Header
$header-background-color: $nomad-green;
$header-font-size: $font-size - 2;
$header-height: 92px;
$header-link-color: rgba($white, 0.85);
$header-link-color-hover: $white;
// Footer
$footer-font-size: $font-size - 2;
$footer-link-color: $body-font-color;
$footer-link-color-hover: $black;
// Button
$button-background: $white;
$button-font-color: #7b8A8E;
$button-font-family: $font-family-klavika;
$button-font-size: $font-size;
$button-font-weight: $font-weight-bold;
$button-primary-background: $nomad-green;
$button-primary-font-color: $white;

View File

@ -11,10 +11,9 @@
// Core variables and mixins
@import '_variables';
@import '_mixins';
// Utility classes
@import '_utilities';
// Sidebar
@import 'hashicorp/sidebar';
//Global Site
@import '_global';
@ -22,9 +21,10 @@
// Components
@import '_header';
@import '_footer';
@import '_inner';
@import '_buttons';
@import '_sidebar';
@import '_syntax';
@import '_logos';
// Pages
@import '_home';
@ -32,4 +32,3 @@
@import '_docs';
@import '_downloads';
@import '_api';
@import '_livestream';

View File

@ -53,9 +53,9 @@ description: |-
<% end %>
<div class="row">
<div class="col-md-12 poweredby">
<div class="poweredby">
<a href="https://www.fastly.com?utm_source=hashicorp" target="_blank" rel="nofollow noopener noreferrer">
<%= image_tag "fastly_logo.png" %>
<%= inline_svg "fastly.svg", height: 50 %>
</a>
</div>
</div>

View File

@ -1,146 +1,144 @@
<div id="hero">
<div class="container">
<div class="row">
<div class="col-md-12">
<div id="hero-graphic">
<div id="cubes">
<div class="cube">
<span class="face top"></span>
<span class="face left"></span>
<span class="face right"></span>
</div>
</div>
<div id="hero-logotype"></div>
</div>
<div id="hero-text">
<div id="hero-text-content">
<h1>Easily deploy applications at any scale</h1>
<h4>A Distributed, Highly Available, Datacenter-Aware Scheduler</h4>
<div id="hero-btns">
<a class="h-btn green lrg has-caret has-border try" href="/intro">Get Started<span class="h-caret"></span></a>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-md-12">
<div id="hero-graphic">
<div id="cubes">
<div class="cube">
<span class="face top"></span>
<span class="face left"></span>
<span class="face right"></span>
</div>
</div>
<div id="hero-logotype"></div>
</div>
<div id="hero-text">
<div id="hero-text-content">
<h1>Easily deploy applications at any scale</h1>
<h4>A Distributed, Highly Available, Datacenter-Aware Scheduler</h4>
<div id="hero-btns">
<a class="button primary" href="/intro/index.html">Get Started</a>
<a class="button" href="/downloads.html">Download Now</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="subhero-banner" class="banner gray-banner">
<div class="container">
<div class="row">
<div class="col col-md-12">
<p>Nomad scheduled 1 million containers on 5,000 hosts in under 5 minutes</p>
<a class="blog-btn h-btn gray sml fill has-caret" href="https://www.hashicorp.com/c1m.html">Read more<span class="h-caret"></span></a>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col col-md-12">
<p>Nomad scheduled 1 million containers on 5,000 hosts in under 5 minutes</p>
<a class="button inline" href="https://www.hashicorp.com/c1m.html">Read more</a>
</div>
</div>
</div>
</div>
<div id="content">
<div class="container">
<div class="row">
<div class=" col-md-12">
<h2 class="feature-section-title">Overview</h2>
<div class="container">
<div class="row">
<div class=" col-md-12">
<h2 class="feature-section-title">Overview</h2>
<div id="deploy" class="feature">
<div class="feature-header">
<h3>Easily Deploy</h3>
<p>
Users submit simple high-level jobs and Nomad handles
scheduling, deploying and upgrading applications.
</p>
</div>
<div class="feature-graphic"></div>
<div class="feature-footer">
<p>Nomad makes it easy to deploy one container or thousands.</p>
<span class="docker-outline-logo"></span>
</div>
</div> <!-- .feature -->
<div id="deploy" class="feature">
<div class="feature-header">
<h3>Easily Deploy</h3>
<p>
Users submit simple high-level jobs and Nomad handles
scheduling, deploying and upgrading applications.
</p>
</div>
<div class="feature-graphic"></div>
<div class="feature-footer">
<p>Nomad makes it easy to deploy one container or thousands.</p>
<span class="docker-outline-logo"></span>
</div>
</div>
<div id="partners" class="feature">
<div class="feature-header right clearfix">
<div class="row">
<h3 class="">Any Cloud or Every Cloud</h3>
</div>
<div class="row">
<p>
Multi-Datacenter and Multi-Region support enables running applications
on any cloud, public or private.
</p>
</div>
</div>
<div class="partner-logos">
<div class="row">
<div class="col-sm-2 docker-wrap">
<span class="partner-logo docker-logo"></span>
</div>
<div class="col-sm-10 cloud-wrap clearfix">
<span class="partner-logo aws-logo"></span>
<span class="partner-logo google-logo"></span>
<span class="partner-logo microsoft-logo"></span>
<span class="partner-logo digitalocean-logo"></span>
</div>
</div>
</div>
</div> <!-- .feature -->
<div id="partners" class="feature">
<div class="feature-header right clearfix">
<div class="row">
<h3 class="">Any Cloud or Every Cloud</h3>
</div>
<div class="row">
<p>
Multi-Datacenter and Multi-Region support enables running applications
on any cloud, public or private.
</p>
</div>
</div>
<div class="partner-logos">
<div class="row">
<div class="col-sm-2 docker-wrap">
<span class="partner-logo docker-logo"></span>
</div>
<div class="col-sm-10 cloud-wrap clearfix">
<span class="partner-logo aws-logo"></span>
<span class="partner-logo google-logo"></span>
<span class="partner-logo microsoft-logo"></span>
<span class="partner-logo digitalocean-logo"></span>
</div>
</div>
</div>
</div>
<div id="maintain" class="feature">
<div class="feature-header">
<h3>Flexible Workloads</h3>
<p>
Nomad has extensible support for task drivers, allowing it to run
containerized, virtualized, and standalone applications. Users can easily
start Docker containers, VMs, or application runtimes like Java. Nomad
supports Linux, Windows, BSD and OSX, providing the flexibility to run
any workload.
</p>
</div>
<div class="feature-graphic"></div>
</div> <!-- .feature -->
<div id="maintain" class="feature">
<div class="feature-header">
<h3>Flexible Workloads</h3>
<p>
Nomad has extensible support for task drivers, allowing it to run
containerized, virtualized, and standalone applications. Users can easily
start Docker containers, VMs, or application runtimes like Java. Nomad
supports Linux, Windows, BSD and OSX, providing the flexibility to run
any workload.
</p>
</div>
<div class="feature-graphic"></div>
</div>
<div id="healing" class="feature">
<div class="feature-header right clearfix">
<div class="row">
<div class="col-xs-12">
<h3>Simplify Operations</h3>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<p>
Nomad simplifies operations by supporting blue/green deployments,
automatically handling machine failures, and providing a single workflow
to deploy applications.
</p>
</div>
</div>
</div>
<div class="feature-graphic"></div>
</div> <!-- .feature -->
<div id="healing" class="feature">
<div class="feature-header right clearfix">
<div class="row">
<div class="col-xs-12">
<h3>Simplify Operations</h3>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<p>
Nomad simplifies operations by supporting blue/green deployments,
automatically handling machine failures, and providing a single workflow
to deploy applications.
</p>
</div>
</div>
</div>
<div class="feature-graphic"></div>
</div>
<div id="density" class="feature">
<div class="feature-header">
<h3>Increase Density, Reduce Cost</h3>
<p>Nomad packs applications onto servers to maximize resource utilization, increase density, and reduce costs.</p>
</div>
<div class="feature-graphic"></div>
</div> <!-- .feature -->
</div> <!-- .col -->
</div> <!-- .row -->
</div> <!-- /container -->
</div> <!-- #content -->
<div id="density" class="feature">
<div class="feature-header">
<h3>Increase Density, Reduce Cost</h3>
<p>Nomad packs applications onto servers to maximize resource utilization, increase density, and reduce costs.</p>
</div>
<div class="feature-graphic"></div>
</div>
</div>
</div>
</div>
</div>
<div id="cta-banner" class="banner green-banner">
<div class="container">
<div class="row">
<div class="col col-md-12">
<p>Completely free and open source.</p>
<a class="blog-btn h-btn green lrg fill has-caret" href="/intro">Get Started<span class="h-caret"></span></a>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col col-md-12">
<p>Completely free and open source.</p>
<a class="button" href="/intro">Get Started</a>
</div>
</div>
</div>
</div>

View File

@ -1,14 +0,0 @@
<div id="announcement-bnr" class="-absolute">
<div class="container">
<div class="row">
<div class="col-xs-12">
<p>
<span class="tagline">Nomad scheduled 1 million containers on 5,000 hosts in under 5 minutes.</span>
<a class="link-highlight" href="https://www.hashicorp.com/c1m.html">
Find out more <span class="hcaret"></span>
</a>
</p>
</div>
</div>
</div>
</div>

View File

@ -1,68 +0,0 @@
<div id="footer">
<div class="container">
<div class="row">
<div class="col-xs-12">
<ul class="footer-links nav navbar-nav">
<li><a href="/intro/index.html">Intro</a></li>
<li><a href="/docs/index.html">Docs</a></li>
<li><a href="/community.html">Community</a></li>
<li><a href="/security.html">Security</a></li>
</ul>
<ul class="footer-links nav navbar-nav navbar-right">
<li><a href="<%= github_url :current_page %>">Edit this page</a></li>
</ul>
<div class="clearfix"></div>
</div>
</div>
</div>
</div>
</div>
<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', 'UA-68490725-1', 'nomadproject.io');
ga('require', 'linkid');
ga('send', 'pageview');
</script>
<script type="text/javascript">
adroll_adv_id = "6QAAFJDIWBG3DJBDRJ7BEX";
adroll_pix_id = "PYT5HSNKNRDS7LMUR5B6YG";
(function () {
var oldonload = window.onload;
window.onload = function(){
__adroll_loaded=true;
var scr = document.createElement("script");
var host = (("https:" == document.location.protocol) ? "https://s.adroll.com" : "http://a.adroll.com");
scr.setAttribute('async', 'true');
scr.type = "text/javascript";
scr.src = host + "/j/roundtrip.js";
((document.getElementsByTagName('head') || [null])[0] ||
document.getElementsByTagName('script')[0].parentNode).appendChild(scr);
if(oldonload){oldonload()}};
}());
</script>
<%= javascript_include_tag "application" %>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"name": "Nomad",
"alternateName": "Nomad by HashiCorp",
"manufacturer": "HashiCorp",
"url": "https://www.nomadproject.io",
"logo": "<%= File.join(base_url, image_path("logo_large.png")) %>",
"sameAs": [
"https://github.com/hashicorp/nomad"
]
}
</script>
</body>
</html>

View File

@ -1,33 +0,0 @@
<div id="header">
<div class="container">
<div class="row">
<div class="col-xs-12">
<div class="navbar-brand">
<a class="logo" href="/">Nomad</a>
</div>
<button class="navbar-toggle" type="button">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<div class="buttons hidden-xs">
<nav role="navigation">
<ul class="main-links nav navbar-nav navbar-right">
<li><a href="/intro/index.html">Intro</a></li>
<li><a href="/guides/index.html">Guides</a></li>
<li><a href="/docs/index.html">Docs</a></li>
<li><a href="/community.html">Community</a></li>
<li class="download">
<a href="/downloads.html"><%= partial "layouts/svg/svg-download" %>Download</a>
</li>
<li class="github">
<a href="https://github.com/hashicorp/nomad"><%= partial "layouts/svg/svg-github" %>GitHub</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
</div>

View File

@ -1,37 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="<%= description_for(current_page) %>">
<link rel="shortcut icon" href="<%= image_path('favicon.png') %>">
<title><%= title_for(current_page) %></title>
<%= stylesheet_link_tag "application" %>
<!--[if lt IE 9]>
<%= javascript_include_tag "ie-compat" %>
<![endif]-->
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-NR2SD7C');</script>
<!-- End Google Tag Manager -->
<!-- Typekit script to import Klavika font -->
<script src="https://use.typekit.net/wxf7mfi.js"></script>
<script>try{Typekit.load({ async: true });}catch(e){}</script>
<%= yield_content :head %>
</head>
<body id="<%= body_id_for(current_page) %>" class="<%= body_classes_for(current_page) %>">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-NR2SD7C"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

View File

@ -1,20 +1,30 @@
<div class="sidebar-overlay"></div>
<aside id="sidebar" class="sidebar sidebar-default sidebar-fixed-right" role="navigation">
<div class="sidebar-header header-cover">
<div class="sidebar-image"></div>
<aside class="sidebar" role="navigation">
<div class="sidebar-header">
<%= inline_svg "logo-text.svg", height: 42 %>
</div>
<ul class="main nav sidebar-nav">
<li class="first"><a href="/intro/index.html">Intro</a></li>
<li><a href="/guides/index.html">Guides</a></li>
<ul class="nav sidebar-nav">
<li><a href="/intro/index.html">Intro</a></li>
<li><a href="/guides/index.html">Docs</a></li>
<li><a href="/docs/index.html">Docs</a></li>
<li><a href="/community.html">Community</a></li>
<li><a href="/security.html">Security</a></li>
</ul>
<div class="divider"></div>
<ul class="external nav sidebar-nav">
<li class="first"><a class="v-btn gray sml" href="/downloads.html"><%= partial "layouts/svg/svg-download" %>Download</a></li>
<li class=""><a class="v-btn gray sml" href="https://github.com/hashicorp/nomad"><%= partial "layouts/svg/svg-github" %>GitHub</a></li>
<li>
<a href="/downloads.html">
<%= inline_svg "download.svg" %> Download
</a>
</li>
<li>
<a href="https://github.com/mitchellh/vagrant">
<%= inline_svg "github.svg" %> GitHub
</a>
</li>
</ul>
</aside>

View File

@ -1,339 +1,337 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("docs-installing") %>>
<a href="/docs/install/index.html">Installing Nomad</a>
</li>
<ul class="nav docs-sidenav">
<li<%= sidebar_current("docs-installing") %>>
<a href="/docs/install/index.html">Installing Nomad</a>
</li>
<li<%= sidebar_current("docs-runtime") %>>
<a href="/docs/runtime/index.html">Runtime</a>
<ul class="nav">
<li<%= sidebar_current("docs-runtime-environment") %>>
<a href="/docs/runtime/environment.html">Environment</a>
</li>
<li<%= sidebar_current("docs-runtime-interpolation") %>>
<a href="/docs/runtime/interpolation.html">Interpolation</a>
</li>
<li<%= sidebar_current("docs-runtime-schedulers") %>>
<a href="/docs/runtime/schedulers.html">Schedulers</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-runtime") %>>
<a href="/docs/runtime/index.html">Runtime</a>
<ul class="nav">
<li<%= sidebar_current("docs-runtime-environment") %>>
<a href="/docs/runtime/environment.html">Environment</a>
</li>
<li<%= sidebar_current("docs-runtime-interpolation") %>>
<a href="/docs/runtime/interpolation.html">Interpolation</a>
</li>
<li<%= sidebar_current("docs-runtime-schedulers") %>>
<a href="/docs/runtime/schedulers.html">Schedulers</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-job-specification") %>>
<a href="/docs/job-specification/index.html">Job Specification</a>
<ul class="nav">
<li<%= sidebar_current("docs-job-specification-artifact")%>>
<a href="/docs/job-specification/artifact.html">artifact</a>
</li>
<li<%= sidebar_current("docs-job-specification-constraint")%>>
<a href="/docs/job-specification/constraint.html">constraint</a>
</li>
<li<%= sidebar_current("docs-job-specification-dispatch-payload")%>>
<a href="/docs/job-specification/dispatch_payload.html">dispatch_payload</a>
</li>
<li<%= sidebar_current("docs-job-specification-env")%>>
<a href="/docs/job-specification/env.html">env</a>
</li>
<li<%= sidebar_current("docs-job-specification-ephemeral_disk")%>>
<a href="/docs/job-specification/ephemeral_disk.html">ephemeral_disk</a>
</li>
<li<%= sidebar_current("docs-job-specification-group")%>>
<a href="/docs/job-specification/group.html">group</a>
</li>
<li<%= sidebar_current("docs-job-specification-job")%>>
<a href="/docs/job-specification/job.html">job</a>
</li>
<li<%= sidebar_current("docs-job-specification-logs")%>>
<a href="/docs/job-specification/logs.html">logs</a>
</li>
<li<%= sidebar_current("docs-job-specification-meta")%>>
<a href="/docs/job-specification/meta.html">meta</a>
</li>
<li<%= sidebar_current("docs-job-specification-network")%>>
<a href="/docs/job-specification/network.html">network</a>
</li>
<li<%= sidebar_current("docs-job-specification-parameterized")%>>
<a href="/docs/job-specification/parameterized.html">parameterized</a>
</li>
<li<%= sidebar_current("docs-job-specification-periodic")%>>
<a href="/docs/job-specification/periodic.html">periodic</a>
</li>
<li<%= sidebar_current("docs-job-specification-resources")%>>
<a href="/docs/job-specification/resources.html">resources</a>
</li>
<li<%= sidebar_current("docs-job-specification-restart")%>>
<a href="/docs/job-specification/restart.html">restart</a>
</li>
<li<%= sidebar_current("docs-job-specification-service")%>>
<a href="/docs/job-specification/service.html">service</a>
</li>
<li<%= sidebar_current("docs-job-specification-task")%>>
<a href="/docs/job-specification/task.html">task</a>
</li>
<li<%= sidebar_current("docs-job-specification-template")%>>
<a href="/docs/job-specification/template.html">template</a>
</li>
<li<%= sidebar_current("docs-job-specification-update")%>>
<a href="/docs/job-specification/update.html">update</a>
</li>
<li<%= sidebar_current("docs-job-specification-vault")%>>
<a href="/docs/job-specification/vault.html">vault</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-job-specification") %>>
<a href="/docs/job-specification/index.html">Job Specification</a>
<ul class="nav">
<li<%= sidebar_current("docs-job-specification-artifact")%>>
<a href="/docs/job-specification/artifact.html">artifact</a>
</li>
<li<%= sidebar_current("docs-job-specification-constraint")%>>
<a href="/docs/job-specification/constraint.html">constraint</a>
</li>
<li<%= sidebar_current("docs-job-specification-dispatch-payload")%>>
<a href="/docs/job-specification/dispatch_payload.html">dispatch_payload</a>
</li>
<li<%= sidebar_current("docs-job-specification-env")%>>
<a href="/docs/job-specification/env.html">env</a>
</li>
<li<%= sidebar_current("docs-job-specification-ephemeral_disk")%>>
<a href="/docs/job-specification/ephemeral_disk.html">ephemeral_disk</a>
</li>
<li<%= sidebar_current("docs-job-specification-group")%>>
<a href="/docs/job-specification/group.html">group</a>
</li>
<li<%= sidebar_current("docs-job-specification-job")%>>
<a href="/docs/job-specification/job.html">job</a>
</li>
<li<%= sidebar_current("docs-job-specification-logs")%>>
<a href="/docs/job-specification/logs.html">logs</a>
</li>
<li<%= sidebar_current("docs-job-specification-meta")%>>
<a href="/docs/job-specification/meta.html">meta</a>
</li>
<li<%= sidebar_current("docs-job-specification-network")%>>
<a href="/docs/job-specification/network.html">network</a>
</li>
<li<%= sidebar_current("docs-job-specification-parameterized")%>>
<a href="/docs/job-specification/parameterized.html">parameterized</a>
</li>
<li<%= sidebar_current("docs-job-specification-periodic")%>>
<a href="/docs/job-specification/periodic.html">periodic</a>
</li>
<li<%= sidebar_current("docs-job-specification-resources")%>>
<a href="/docs/job-specification/resources.html">resources</a>
</li>
<li<%= sidebar_current("docs-job-specification-restart")%>>
<a href="/docs/job-specification/restart.html">restart</a>
</li>
<li<%= sidebar_current("docs-job-specification-service")%>>
<a href="/docs/job-specification/service.html">service</a>
</li>
<li<%= sidebar_current("docs-job-specification-task")%>>
<a href="/docs/job-specification/task.html">task</a>
</li>
<li<%= sidebar_current("docs-job-specification-template")%>>
<a href="/docs/job-specification/template.html">template</a>
</li>
<li<%= sidebar_current("docs-job-specification-update")%>>
<a href="/docs/job-specification/update.html">update</a>
</li>
<li<%= sidebar_current("docs-job-specification-vault")%>>
<a href="/docs/job-specification/vault.html">vault</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-service-discovery") %>>
<a href="/docs/service-discovery/index.html">Service Discovery</a>
</li>
<li<%= sidebar_current("docs-service-discovery") %>>
<a href="/docs/service-discovery/index.html">Service Discovery</a>
</li>
<li<%= sidebar_current("docs-vault-integration") %>>
<a href="/docs/vault-integration/index.html">Vault Integration</a>
</li>
<li<%= sidebar_current("docs-vault-integration") %>>
<a href="/docs/vault-integration/index.html">Vault Integration</a>
</li>
<li<%= sidebar_current("docs-operating-a-job") %>>
<a href="/docs/operating-a-job/index.html">Operating a Job</a>
<ul class="nav">
<li<%= sidebar_current("docs-operating-a-job-configuring-tasks") %>>
<a href="/docs/operating-a-job/configuring-tasks.html">Configuring Tasks</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-submitting-jobs") %>>
<a href="/docs/operating-a-job/submitting-jobs.html">Submitting Jobs</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-inspecting-state") %>>
<a href="/docs/operating-a-job/inspecting-state.html">Inspecting State</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-accessing-logs") %>>
<a href="/docs/operating-a-job/accessing-logs.html">Accessing Logs</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-resource-utilization") %>>
<a href="/docs/operating-a-job/resource-utilization.html">Resource Utilization</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating") %>>
<a href="/docs/operating-a-job/update-strategies/index.html">Update Strategies</a>
<ul class="nav">
<li<%= sidebar_current("docs-operating-a-job-updating-rolling-upgrades") %>>
<a href="/docs/operating-a-job/update-strategies/rolling-upgrades.html">Rolling Upgrades</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating-blue-green-deployments") %>>
<a href="/docs/operating-a-job/update-strategies/blue-green-and-canary-deployments.html">Blue/Green &amp; Canary</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating-handling-signals") %>>
<a href="/docs/operating-a-job/update-strategies/handling-signals.html">Handling Signals</a>
</li>
</ul>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-operating-a-job") %>>
<a href="/docs/operating-a-job/index.html">Operating a Job</a>
<ul class="nav">
<li<%= sidebar_current("docs-operating-a-job-configuring-tasks") %>>
<a href="/docs/operating-a-job/configuring-tasks.html">Configuring Tasks</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-submitting-jobs") %>>
<a href="/docs/operating-a-job/submitting-jobs.html">Submitting Jobs</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-inspecting-state") %>>
<a href="/docs/operating-a-job/inspecting-state.html">Inspecting State</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-accessing-logs") %>>
<a href="/docs/operating-a-job/accessing-logs.html">Accessing Logs</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-resource-utilization") %>>
<a href="/docs/operating-a-job/resource-utilization.html">Resource Utilization</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating") %>>
<a href="/docs/operating-a-job/update-strategies/index.html">Update Strategies</a>
<ul class="nav">
<li<%= sidebar_current("docs-operating-a-job-updating-rolling-upgrades") %>>
<a href="/docs/operating-a-job/update-strategies/rolling-upgrades.html">Rolling Upgrades</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating-blue-green-deployments") %>>
<a href="/docs/operating-a-job/update-strategies/blue-green-and-canary-deployments.html">Blue/Green &amp; Canary</a>
</li>
<li<%= sidebar_current("docs-operating-a-job-updating-handling-signals") %>>
<a href="/docs/operating-a-job/update-strategies/handling-signals.html">Handling Signals</a>
</li>
</ul>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-drivers") %>>
<a href="/docs/drivers/index.html">Drivers</a>
<ul class="nav">
<li<%= sidebar_current("docs-drivers-docker") %>>
<a href="/docs/drivers/docker.html">Docker</a>
</li>
<li<%= sidebar_current("docs-drivers") %>>
<a href="/docs/drivers/index.html">Drivers</a>
<ul class="nav">
<li<%= sidebar_current("docs-drivers-docker") %>>
<a href="/docs/drivers/docker.html">Docker</a>
</li>
<li<%= sidebar_current("docs-drivers-exec") %>>
<a href="/docs/drivers/exec.html">Isolated Fork/Exec</a>
</li>
<li<%= sidebar_current("docs-drivers-exec") %>>
<a href="/docs/drivers/exec.html">Isolated Fork/Exec</a>
</li>
<li<%= sidebar_current("docs-drivers-java") %>>
<a href="/docs/drivers/java.html">Java</a>
</li>
<li<%= sidebar_current("docs-drivers-java") %>>
<a href="/docs/drivers/java.html">Java</a>
</li>
<li<%= sidebar_current("docs-drivers-lxc") %>>
<a href="/docs/drivers/lxc.html">LXC</a>
</li>
<li<%= sidebar_current("docs-drivers-lxc") %>>
<a href="/docs/drivers/lxc.html">LXC</a>
</li>
<li<%= sidebar_current("docs-drivers-qemu") %>>
<a href="/docs/drivers/qemu.html">Qemu</a>
</li>
<li<%= sidebar_current("docs-drivers-qemu") %>>
<a href="/docs/drivers/qemu.html">Qemu</a>
</li>
<li<%= sidebar_current("docs-drivers-raw-exec") %>>
<a href="/docs/drivers/raw_exec.html">Raw Fork/Exec</a>
</li>
<li<%= sidebar_current("docs-drivers-raw-exec") %>>
<a href="/docs/drivers/raw_exec.html">Raw Fork/Exec</a>
</li>
<li<%= sidebar_current("docs-drivers-rkt") %>>
<a href="/docs/drivers/rkt.html">Rkt</a>
</li>
<li<%= sidebar_current("docs-drivers-rkt") %>>
<a href="/docs/drivers/rkt.html">Rkt</a>
</li>
<li<%= sidebar_current("docs-drivers-custom") %>>
<a href="/docs/drivers/custom.html">Custom</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-drivers-custom") %>>
<a href="/docs/drivers/custom.html">Custom</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-commands") %>>
<a href="/docs/commands/index.html">Commands (CLI)</a>
<ul class="nav">
<li<%= sidebar_current("docs-commands-_agent") %>>
<a href="/docs/commands/agent.html">agent</a>
</li>
<li<%= sidebar_current("docs-commands-agent-info") %>>
<a href="/docs/commands/agent-info.html">agent-info</a>
</li>
<li<%= sidebar_current("docs-commands-alloc-status") %>>
<a href="/docs/commands/alloc-status.html">alloc-status</a>
</li>
<li<%= sidebar_current("docs-commands-client-config") %>>
<a href="/docs/commands/client-config.html">client-config</a>
</li>
<li<%= sidebar_current("docs-commands-eval-status") %>>
<a href="/docs/commands/eval-status.html">eval-status</a>
</li>
<li<%= sidebar_current("docs-commands-fs") %>>
<a href="/docs/commands/fs.html">fs</a>
</li>
<li<%= sidebar_current("docs-commands-init") %>>
<a href="/docs/commands/init.html">init</a>
</li>
<li<%= sidebar_current("docs-commands-inspect") %>>
<a href="/docs/commands/inspect.html">inspect</a>
</li>
<li<%= sidebar_current("docs-commands-job-dispatch") %>>
<a href="/docs/commands/job-dispatch.html">job dispatch</a>
</li>
<li<%= sidebar_current("docs-commands-keygen") %>>
<a href="/docs/commands/keygen.html">keygen</a>
</li>
<li<%= sidebar_current("docs-commands-keyring") %>>
<a href="/docs/commands/keyring.html">keyring</a>
</li>
<li<%= sidebar_current("docs-commands-logs") %>>
<a href="/docs/commands/logs.html">logs</a>
</li>
<li<%= sidebar_current("docs-commands-node-drain") %>>
<a href="/docs/commands/node-drain.html">node-drain</a>
</li>
<li<%= sidebar_current("docs-commands-node-status") %>>
<a href="/docs/commands/node-status.html">node-status</a>
</li>
<li<%= sidebar_current("docs-commands-operator") %>>
<a href="/docs/commands/operator-index.html">operator</a>
<ul class="nav">
<li<%= sidebar_current("docs-commands-operator-raft-list-peers") %>>
<a href="/docs/commands/operator-raft-list-peers.html">raft list-peers</a>
</li>
<li<%= sidebar_current("docs-commands-operator-raft-remove-peer") %>>
<a href="/docs/commands/operator-raft-remove-peer.html">raft remove-peer</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-commands-plan") %>>
<a href="/docs/commands/plan.html">plan</a>
</li>
<li<%= sidebar_current("docs-commands-run") %>>
<a href="/docs/commands/run.html">run</a>
</li>
<li<%= sidebar_current("docs-commands-server-force-leave") %>>
<a href="/docs/commands/server-force-leave.html">server-force-leave</a>
</li>
<li<%= sidebar_current("docs-commands-server-join") %>>
<a href="/docs/commands/server-join.html">server-join</a>
</li>
<li<%= sidebar_current("docs-commands-server-members") %>>
<a href="/docs/commands/server-members.html">server-members</a>
</li>
<li<%= sidebar_current("docs-commands-status") %>>
<a href="/docs/commands/status.html">status</a>
</li>
<li<%= sidebar_current("docs-commands-stop") %>>
<a href="/docs/commands/stop.html">stop</a>
</li>
<li<%= sidebar_current("docs-commands-validate") %>>
<a href="/docs/commands/validate.html">validate</a>
</li>
<li<%= sidebar_current("docs-commands-version") %>>
<a href="/docs/commands/version.html">version</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-commands") %>>
<a href="/docs/commands/index.html">Commands (CLI)</a>
<ul class="nav">
<li<%= sidebar_current("docs-commands-_agent") %>>
<a href="/docs/commands/agent.html">agent</a>
</li>
<li<%= sidebar_current("docs-commands-agent-info") %>>
<a href="/docs/commands/agent-info.html">agent-info</a>
</li>
<li<%= sidebar_current("docs-commands-alloc-status") %>>
<a href="/docs/commands/alloc-status.html">alloc-status</a>
</li>
<li<%= sidebar_current("docs-commands-client-config") %>>
<a href="/docs/commands/client-config.html">client-config</a>
</li>
<li<%= sidebar_current("docs-commands-eval-status") %>>
<a href="/docs/commands/eval-status.html">eval-status</a>
</li>
<li<%= sidebar_current("docs-commands-fs") %>>
<a href="/docs/commands/fs.html">fs</a>
</li>
<li<%= sidebar_current("docs-commands-init") %>>
<a href="/docs/commands/init.html">init</a>
</li>
<li<%= sidebar_current("docs-commands-inspect") %>>
<a href="/docs/commands/inspect.html">inspect</a>
</li>
<li<%= sidebar_current("docs-commands-job-dispatch") %>>
<a href="/docs/commands/job-dispatch.html">job dispatch</a>
</li>
<li<%= sidebar_current("docs-commands-keygen") %>>
<a href="/docs/commands/keygen.html">keygen</a>
</li>
<li<%= sidebar_current("docs-commands-keyring") %>>
<a href="/docs/commands/keyring.html">keyring</a>
</li>
<li<%= sidebar_current("docs-commands-logs") %>>
<a href="/docs/commands/logs.html">logs</a>
</li>
<li<%= sidebar_current("docs-commands-node-drain") %>>
<a href="/docs/commands/node-drain.html">node-drain</a>
</li>
<li<%= sidebar_current("docs-commands-node-status") %>>
<a href="/docs/commands/node-status.html">node-status</a>
</li>
<li<%= sidebar_current("docs-commands-operator") %>>
<a href="/docs/commands/operator-index.html">operator</a>
<ul class="nav">
<li<%= sidebar_current("docs-commands-operator-raft-list-peers") %>>
<a href="/docs/commands/operator-raft-list-peers.html">raft list-peers</a>
</li>
<li<%= sidebar_current("docs-commands-operator-raft-remove-peer") %>>
<a href="/docs/commands/operator-raft-remove-peer.html">raft remove-peer</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-commands-plan") %>>
<a href="/docs/commands/plan.html">plan</a>
</li>
<li<%= sidebar_current("docs-commands-run") %>>
<a href="/docs/commands/run.html">run</a>
</li>
<li<%= sidebar_current("docs-commands-server-force-leave") %>>
<a href="/docs/commands/server-force-leave.html">server-force-leave</a>
</li>
<li<%= sidebar_current("docs-commands-server-join") %>>
<a href="/docs/commands/server-join.html">server-join</a>
</li>
<li<%= sidebar_current("docs-commands-server-members") %>>
<a href="/docs/commands/server-members.html">server-members</a>
</li>
<li<%= sidebar_current("docs-commands-status") %>>
<a href="/docs/commands/status.html">status</a>
</li>
<li<%= sidebar_current("docs-commands-stop") %>>
<a href="/docs/commands/stop.html">stop</a>
</li>
<li<%= sidebar_current("docs-commands-validate") %>>
<a href="/docs/commands/validate.html">validate</a>
</li>
<li<%= sidebar_current("docs-commands-version") %>>
<a href="/docs/commands/version.html">version</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-agent") %>>
<a href="/docs/agent/index.html">Nomad Agent</a>
<li<%= sidebar_current("docs-agent") %>>
<a href="/docs/agent/index.html">Nomad Agent</a>
<ul class="nav">
<li<%= sidebar_current("docs-agent-configuration") %>>
<a href="/docs/agent/configuration/index.html">Configuration</a>
<ul class="nav">
<li <%= sidebar_current("docs-agent-configuration-atlas") %>>
<a href="/docs/agent/configuration/atlas.html">atlas</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-client") %>>
<a href="/docs/agent/configuration/client.html">client</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-consul") %>>
<a href="/docs/agent/configuration/consul.html">consul</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-server") %>>
<a href="/docs/agent/configuration/server.html">server</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-telemetry") %>>
<a href="/docs/agent/configuration/telemetry.html">telemetry</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-tls") %>>
<a href="/docs/agent/configuration/tls.html">tls</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-vault") %>>
<a href="/docs/agent/configuration/vault.html">vault</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-agent-encryption") %>>
<a href="/docs/agent/encryption.html">Encryption</a>
</li>
<li<%= sidebar_current("docs-agent-telemetry") %>>
<a href="/docs/agent/telemetry.html">Telemetry</a>
</li>
</ul>
</li>
<ul class="nav">
<li<%= sidebar_current("docs-agent-configuration") %>>
<a href="/docs/agent/configuration/index.html">Configuration</a>
<ul class="nav">
<li <%= sidebar_current("docs-agent-configuration-atlas") %>>
<a href="/docs/agent/configuration/atlas.html">atlas</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-client") %>>
<a href="/docs/agent/configuration/client.html">client</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-consul") %>>
<a href="/docs/agent/configuration/consul.html">consul</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-server") %>>
<a href="/docs/agent/configuration/server.html">server</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-telemetry") %>>
<a href="/docs/agent/configuration/telemetry.html">telemetry</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-tls") %>>
<a href="/docs/agent/configuration/tls.html">tls</a>
</li>
<li <%= sidebar_current("docs-agent-configuration-vault") %>>
<a href="/docs/agent/configuration/vault.html">vault</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-agent-encryption") %>>
<a href="/docs/agent/encryption.html">Encryption</a>
</li>
<li<%= sidebar_current("docs-agent-telemetry") %>>
<a href="/docs/agent/telemetry.html">Telemetry</a>
</li>
</ul>
</li>
<hr>
<hr>
<li<%= sidebar_current("docs-http") %>>
<a href="/docs/http/index.html">HTTP API</a>
</li>
<li<%= sidebar_current("docs-http") %>>
<a href="/docs/http/index.html">HTTP API</a>
</li>
<li<%= sidebar_current("docs-internal") %>>
<a href="/docs/internals/index.html">Internals</a>
<ul class="nav">
<li<%= sidebar_current("docs-internals-architecture") %>>
<a href="/docs/internals/architecture.html">Architecture</a>
</li>
<li<%= sidebar_current("docs-internal") %>>
<a href="/docs/internals/index.html">Internals</a>
<ul class="nav">
<li<%= sidebar_current("docs-internals-architecture") %>>
<a href="/docs/internals/architecture.html">Architecture</a>
</li>
<li<%= sidebar_current("docs-internals-consensus") %>>
<a href="/docs/internals/consensus.html">Consensus Protocol</a>
</li>
<li<%= sidebar_current("docs-internals-consensus") %>>
<a href="/docs/internals/consensus.html">Consensus Protocol</a>
</li>
<li<%= sidebar_current("docs-internals-gossip") %>>
<a href="/docs/internals/gossip.html">Gossip Protocol</a>
</li>
<li<%= sidebar_current("docs-internals-gossip") %>>
<a href="/docs/internals/gossip.html">Gossip Protocol</a>
</li>
<li<%= sidebar_current("docs-internals-scheduling") %>>
<a href="/docs/internals/scheduling.html">Scheduling</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-internals-scheduling") %>>
<a href="/docs/internals/scheduling.html">Scheduling</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-upgrade") %>>
<a href="/docs/upgrade/index.html">Upgrading</a>
<ul class="nav">
<li<%= sidebar_current("docs-upgrade-upgrading") %>>
<a href="/docs/upgrade/index.html">Upgrading Nomad</a>
</li>
<li<%= sidebar_current("docs-upgrade-specific") %>>
<a href="/docs/upgrade/upgrade-specific.html">Specific Version Details</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-upgrade") %>>
<a href="/docs/upgrade/index.html">Upgrading</a>
<ul class="nav">
<li<%= sidebar_current("docs-upgrade-upgrading") %>>
<a href="/docs/upgrade/index.html">Upgrading Nomad</a>
</li>
<li<%= sidebar_current("docs-upgrade-specific") %>>
<a href="/docs/upgrade/upgrade-specific.html">Specific Version Details</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-faq") %>>
<a href="/docs/faq.html">FAQ</a>
</li>
</ul>
</div>
<li<%= sidebar_current("docs-faq") %>>
<a href="/docs/faq.html">FAQ</a>
</li>
</ul>
<% end %>
<%= yield %>

View File

@ -1,17 +1,15 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("downloads-nomad") %>>
<a href="/downloads.html">Download Nomad</a>
</li>
<% content_for :sidebar do %>
<ul class="nav docs-sidenav">
<li<%= sidebar_current("downloads-nomad") %>>
<a href="/downloads.html">Download Nomad</a>
</li>
<li>
<a href="/docs/install/index.html">Build from Source</a>
</li>
</ul>
</div>
<% end %>
<li>
<a href="/docs/install/index.html">Build from Source</a>
</li>
</ul>
<% end %>
<%= yield %>
<% end %>
<%= yield %>
<% end %>

View File

@ -1,30 +1,28 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("guides-cluster") %>>
<a href="/guides/cluster/bootstrapping.html">Bootstrapping Clusters</a>
<ul class="nav">
<li<%= sidebar_current("guides-cluster-automatic") %>>
<a href="/guides/cluster/automatic.html">Automatic</a>
</li>
<li<%= sidebar_current("guides-cluster-manual") %>>
<a href="/guides/cluster/manual.html">Manual</a>
</li>
<li<%= sidebar_current("guides-cluster-federation") %>>
<a href="/guides/cluster/federation.html">Federation</a>
</li>
<li<%= sidebar_current("guides-cluster-requirements") %>>
<a href="/guides/cluster/requirements.html">Requirements</a>
</li>
</ul>
</li>
<ul class="nav docs-sidenav">
<li<%= sidebar_current("guides-cluster") %>>
<a href="/guides/cluster/bootstrapping.html">Bootstrapping Clusters</a>
<ul class="nav">
<li<%= sidebar_current("guides-cluster-automatic") %>>
<a href="/guides/cluster/automatic.html">Automatic</a>
</li>
<li<%= sidebar_current("guides-cluster-manual") %>>
<a href="/guides/cluster/manual.html">Manual</a>
</li>
<li<%= sidebar_current("guides-cluster-federation") %>>
<a href="/guides/cluster/federation.html">Federation</a>
</li>
<li<%= sidebar_current("guides-cluster-requirements") %>>
<a href="/guides/cluster/requirements.html">Requirements</a>
</li>
</ul>
</li>
<li<%= sidebar_current("guides-outage-recovery") %>>
<a href="/guides/outage.html">Outage Recovery</a>
</li>
</ul>
</div>
<li<%= sidebar_current("guides-outage-recovery") %>>
<a href="/guides/outage.html">Outage Recovery</a>
</li>
</ul>
<% end %>
<%= yield %>

View File

@ -1,134 +1,130 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("docs-home") %>>
<a href="/docs/index.html">Documentation Home</a>
</li>
<% content_for :sidebar do %>
<ul class="nav docs-sidenav">
<li<%= sidebar_current("docs-home") %>>
<a href="/docs/index.html">Documentation Home</a>
</li>
<hr>
<hr>
<li<%= sidebar_current("docs-http-overview") %>>
<a href="/docs/http/index.html">Overview</a>
</li>
<li<%= sidebar_current("docs-http-overview") %>>
<a href="/docs/http/index.html">Overview</a>
</li>
<li<%= sidebar_current("docs-http-json-jobs") %>>
<a href="/docs/http/json-jobs.html">JSON Jobs</a>
</li>
<li<%= sidebar_current("docs-http-json-jobs") %>>
<a href="/docs/http/json-jobs.html">JSON Jobs</a>
</li>
<li<%= sidebar_current("docs-http-job") %>>
<a href="#">Jobs</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-jobs") %>>
<a href="/docs/http/jobs.html">/v1/jobs</a>
</li>
<li<%= sidebar_current("docs-http-job") %>>
<a href="#">Jobs</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-jobs") %>>
<a href="/docs/http/jobs.html">/v1/jobs</a>
</li>
<li<%= sidebar_current("docs-http-job-") %>>
<a href="/docs/http/job.html">/v1/job</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-job-") %>>
<a href="/docs/http/job.html">/v1/job</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-node") %>>
<a href="#">Nodes</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-nodes") %>>
<a href="/docs/http/nodes.html">/v1/nodes</a>
</li>
<li<%= sidebar_current("docs-http-node") %>>
<a href="#">Nodes</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-nodes") %>>
<a href="/docs/http/nodes.html">/v1/nodes</a>
</li>
<li<%= sidebar_current("docs-http-node-") %>>
<a href="/docs/http/node.html">/v1/node</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-node-") %>>
<a href="/docs/http/node.html">/v1/node</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-alloc") %>>
<a href="#">Allocations</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-allocs") %>>
<a href="/docs/http/allocs.html">/v1/allocations</a>
</li>
<li<%= sidebar_current("docs-http-alloc") %>>
<a href="#">Allocations</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-allocs") %>>
<a href="/docs/http/allocs.html">/v1/allocations</a>
</li>
<li<%= sidebar_current("docs-http-alloc-") %>>
<a href="/docs/http/alloc.html">/v1/allocation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-alloc-") %>>
<a href="/docs/http/alloc.html">/v1/allocation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-eval") %>>
<a href="#">Evaluations</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-evals") %>>
<a href="/docs/http/evals.html">/v1/evaluations</a>
</li>
<li<%= sidebar_current("docs-http-eval") %>>
<a href="#">Evaluations</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-evals") %>>
<a href="/docs/http/evals.html">/v1/evaluations</a>
</li>
<li<%= sidebar_current("docs-http-eval-") %>>
<a href="/docs/http/eval.html">/v1/evaluation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-eval-") %>>
<a href="/docs/http/eval.html">/v1/evaluation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-agent") %>>
<a href="#">Agent</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-agent-self") %>>
<a href="/docs/http/agent-self.html">/v1/agent/self</a>
</li>
<li<%= sidebar_current("docs-http-agent") %>>
<a href="#">Agent</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-agent-self") %>>
<a href="/docs/http/agent-self.html">/v1/agent/self</a>
</li>
<li<%= sidebar_current("docs-http-agent-join") %>>
<a href="/docs/http/agent-join.html">/v1/agent/join</a>
</li>
<li<%= sidebar_current("docs-http-agent-join") %>>
<a href="/docs/http/agent-join.html">/v1/agent/join</a>
</li>
<li<%= sidebar_current("docs-http-agent-members") %>>
<a href="/docs/http/agent-members.html">/v1/agent/members</a>
</li>
<li<%= sidebar_current("docs-http-agent-members") %>>
<a href="/docs/http/agent-members.html">/v1/agent/members</a>
</li>
<li<%= sidebar_current("docs-http-agent-force-leave") %>>
<a href="/docs/http/agent-force-leave.html">/v1/agent/force-leave</a>
</li>
<li<%= sidebar_current("docs-http-agent-force-leave") %>>
<a href="/docs/http/agent-force-leave.html">/v1/agent/force-leave</a>
</li>
<li<%= sidebar_current("docs-http-agent-servers") %>>
<a href="/docs/http/agent-servers.html">/v1/agent/servers</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-client") %>>
<a href="#">Client</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-client-fs") %>>
<a href="/docs/http/client-fs.html">/v1/client/fs</a>
</li>
<li<%= sidebar_current("docs-http-agent-servers") %>>
<a href="/docs/http/agent-servers.html">/v1/agent/servers</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-client") %>>
<a href="#">Client</a>
<ul class="nav nav-visible">
<li<%= sidebar_current("docs-http-client-fs") %>>
<a href="/docs/http/client-fs.html">/v1/client/fs</a>
</li>
<li<%= sidebar_current("docs-http-client-stats") %>>
<a href="/docs/http/client-stats.html">/v1/client/stats</a>
</li>
<li<%= sidebar_current("docs-http-client-stats") %>>
<a href="/docs/http/client-stats.html">/v1/client/stats</a>
</li>
<li<%= sidebar_current("docs-http-client-allocation-stats") %>>
<a href="/docs/http/client-allocation-stats.html">/v1/client/allocation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-client-allocation-stats") %>>
<a href="/docs/http/client-allocation-stats.html">/v1/client/allocation</a>
</li>
</ul>
</li>
<li<%= sidebar_current("docs-http-regions") %>>
<a href="/docs/http/regions.html">Regions</a>
</li>
<li<%= sidebar_current("docs-http-regions") %>>
<a href="/docs/http/regions.html">Regions</a>
</li>
<li<%= sidebar_current("docs-http-status") %>>
<a href="/docs/http/status.html">Status</a>
</li>
<li<%= sidebar_current("docs-http-status") %>>
<a href="/docs/http/status.html">Status</a>
</li>
<li<%= sidebar_current("docs-http-operator") %>>
<a href="/docs/http/operator.html">Operator</a>
</li>
<li<%= sidebar_current("docs-http-operator") %>>
<a href="/docs/http/operator.html">Operator</a>
</li>
<li<%= sidebar_current("docs-http-system") %>>
<a href="/docs/http/system.html">System</a>
</li>
</ul>
</div>
<% end %>
<li<%= sidebar_current("docs-http-system") %>>
<a href="/docs/http/system.html">System</a>
</li>
</ul>
<% end %>
<div class="bs-api-section">
<%= yield %>
</div>
<%= yield %>
<% end %>

View File

@ -1,14 +1,13 @@
<% wrap_layout :layout do %>
<div class="container">
<div class="row">
<div class="col-md-3 col-sm-3 col-xs-12">
<%= yield_content :sidebar %>
</div> <!-- /col-md-4 -->
<div id="main-content" class="col-sm-9 col-md-8 col-xs-12" role="main">
<div class="bs-docs-section">
<%= yield %>
</div>
</div>
</div>
<div class="row">
<div id="docs-sidebar" class="col-sm-3 col-md-3 col-xs-12 hidden-print" role="complementary">
<%= yield_content :sidebar %>
</div>
<div id="inner" class="col-sm-9 col-md-9 col-xs-12" role="main">
<%= yield %>
</div>
</div>
</div>
<% end %>

View File

@ -1,79 +1,77 @@
<% wrap_layout :inner do %>
<% content_for :sidebar do %>
<div class="docs-sidebar hidden-print affix-top" role="complementary">
<ul class="nav docs-sidenav">
<li<%= sidebar_current("what") %>>
<a href="/intro/index.html">What is Nomad?</a>
</li>
<% content_for :sidebar do %>
<ul class="nav docs-sidenav">
<li<%= sidebar_current("what") %>>
<a href="/intro/index.html">What is Nomad?</a>
</li>
<li<%= sidebar_current("use-cases") %>>
<a href="/intro/use-cases.html">Use Cases</a>
</li>
<li<%= sidebar_current("use-cases") %>>
<a href="/intro/use-cases.html">Use Cases</a>
</li>
<li<%= sidebar_current("vs-other") %>>
<a href="/intro/vs/index.html">Nomad vs. Other Software</a>
<ul class="nav">
<li<%= sidebar_current("vs-other-ecs") %>>
<a href="/intro/vs/ecs.html">AWS ECS</a>
</li>
<li<%= sidebar_current("vs-other") %>>
<a href="/intro/vs/index.html">Nomad vs. Other Software</a>
<ul class="nav">
<li<%= sidebar_current("vs-other-ecs") %>>
<a href="/intro/vs/ecs.html">AWS ECS</a>
</li>
<li<%= sidebar_current("vs-other-swarm") %>>
<a href="/intro/vs/swarm.html">Docker Swarm</a>
</li>
<li<%= sidebar_current("vs-other-swarm") %>>
<a href="/intro/vs/swarm.html">Docker Swarm</a>
</li>
<li<%= sidebar_current("vs-other-htcondor") %>>
<a href="/intro/vs/htcondor.html">HTCondor</a>
</li>
<li<%= sidebar_current("vs-other-htcondor") %>>
<a href="/intro/vs/htcondor.html">HTCondor</a>
</li>
<li<%= sidebar_current("vs-other-kubernetes") %>>
<a href="/intro/vs/kubernetes.html">Kubernetes</a>
</li>
<li<%= sidebar_current("vs-other-kubernetes") %>>
<a href="/intro/vs/kubernetes.html">Kubernetes</a>
</li>
<li<%= sidebar_current("vs-other-mesos") %>>
<a href="/intro/vs/mesos.html">Mesos with Aurora, Marathon, etc</a>
</li>
<li<%= sidebar_current("vs-other-mesos") %>>
<a href="/intro/vs/mesos.html">Mesos with Aurora, Marathon, etc</a>
</li>
<li<%= sidebar_current("vs-other-terraform") %>>
<a href="/intro/vs/terraform.html">Terraform</a>
</li>
<li<%= sidebar_current("vs-other-terraform") %>>
<a href="/intro/vs/terraform.html">Terraform</a>
</li>
<li<%= sidebar_current("vs-other-yarn") %>>
<a href="/intro/vs/yarn.html">Hadoop YARN</a>
</li>
<li<%= sidebar_current("vs-other-yarn") %>>
<a href="/intro/vs/yarn.html">Hadoop YARN</a>
</li>
<li<%= sidebar_current("vs-other-custom") %>>
<a href="/intro/vs/custom.html">Custom Solutions</a>
</li>
</ul>
</li>
<li<%= sidebar_current("vs-other-custom") %>>
<a href="/intro/vs/custom.html">Custom Solutions</a>
</li>
</ul>
</li>
<li<%= sidebar_current("getting-started") %>>
<a href="/intro/getting-started/install.html">Getting Started</a>
<ul class="nav">
<li<%= sidebar_current("getting-started-install") %>>
<a href="/intro/getting-started/install.html">Install Nomad</a>
</li>
<li<%= sidebar_current("getting-started") %>>
<a href="/intro/getting-started/install.html">Getting Started</a>
<ul class="nav">
<li<%= sidebar_current("getting-started-install") %>>
<a href="/intro/getting-started/install.html">Install Nomad</a>
</li>
<li<%= sidebar_current("getting-started-running") %>>
<a href="/intro/getting-started/running.html">Running Nomad</a>
</li>
<li<%= sidebar_current("getting-started-running") %>>
<a href="/intro/getting-started/running.html">Running Nomad</a>
</li>
<li<%= sidebar_current("getting-started-jobs") %>>
<a href="/intro/getting-started/jobs.html">Jobs</a>
</li>
<li<%= sidebar_current("getting-started-jobs") %>>
<a href="/intro/getting-started/jobs.html">Jobs</a>
</li>
<li<%= sidebar_current("getting-started-cluster") %>>
<a href="/intro/getting-started/cluster.html">Clustering</a>
</li>
<li<%= sidebar_current("getting-started-cluster") %>>
<a href="/intro/getting-started/cluster.html">Clustering</a>
</li>
<li<%= sidebar_current("getting-started-nextsteps") %>>
<a href="/intro/getting-started/next-steps.html">Next Steps</a>
</li>
</ul>
</li>
</ul>
</div>
<% end %>
<li<%= sidebar_current("getting-started-nextsteps") %>>
<a href="/intro/getting-started/next-steps.html">Next Steps</a>
</li>
</ul>
</li>
</ul>
<% end %>
<%= yield %>
<%= yield %>
<% end %>

View File

@ -1,8 +1,153 @@
<%= partial "layouts/meta" %>
<%= mega_nav :nomad %>
<%= partial "layouts/header" %>
<%= partial "layouts/sidebar" %>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="mobile-web-app-capable" content="yes">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="<%= description_for(current_page) %>">
<%= yield %>
<link rel="apple-touch-icon" sizes="180x180" href="<%= image_path("favicons/apple-touch-icon.png") %>">
<link rel="icon" type="image/png" href="<%= image_path("favicons/favicon-32x32.png") %>" sizes="32x32">
<link rel="icon" type="image/png" href="<%= image_path("favicons/favicon-16x16.png") %>" sizes="16x16">
<link rel="manifest" href="/android-manifest.json">
<link rel="mask-icon" href="<%= image_path("favicons/safari-pinned-tab.svg") %>" color="#5BBAD5">
<meta name="msapplication-config" content="/microsoft-tile.xml" />
<meta name="theme-color" content="#ffffff">
<%= partial "layouts/footer" %>
<title><%= title_for(current_page) %></title>
<%= stylesheet_link_tag "application" %>
<!--[if lt IE 9]>
<%= javascript_include_tag "ie-compat" %>
<![endif]-->
<%= javascript_include_tag "application" %>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-NR2SD7C');</script>
<!-- Typekit script to import Klavika font -->
<script src="https://use.typekit.net/wxf7mfi.js"></script>
<script>try{Typekit.load({ async: true });}catch(e){}</script>
<%= yield_content :head %>
</head>
<body id="<%= body_id_for(current_page) %>" class="<%= body_classes_for(current_page) %>">
<%= mega_nav :nomad %>
<div id="header" class="navigation navbar-static-top hidden-print">
<div class="container">
<div class="row">
<div class="col-xs-12">
<div class="navbar-header">
<div class="navbar-brand">
<a href="/">
<%= inline_svg "logo-text.svg", height: 50, class: "logo" %>
</a>
</div>
<button class="navbar-toggle" type="button">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
</div>
<div class="buttons hidden-xs">
<nav class="navigation-links" role="navigation">
<ul class="main-links nav navbar-nav navbar-right">
<li><a href="/intro/index.html">Intro</a></li>
<li><a href="/guides/index.html">Guides</a></li>
<li><a href="/docs/index.html">Docs</a></li>
<li><a href="/community.html">Community</a></li>
<li>
<a href="/downloads.html">
<%= inline_svg "download.svg" %> Download
</a>
</li>
<li>
<a href="https://github.com/hashicorp/nomad">
<%= inline_svg "github.svg" %> GitHub
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</div>
</div>
<%= partial "layouts/sidebar" %>
<%= yield %>
<div id="footer" class="navigation hidden-print">
<div class="container">
<div class="row">
<div class="col-xs-12">
<ul class="footer-links nav navbar-nav">
<li><a href="/intro/index.html">Intro</a></li>
<li><a href="/guides/index.html">Guides</a></li>
<li><a href="/docs/index.html">Docs</a></li>
<li><a href="/community.html">Community</a></li>
<li><a href="/security.html">Security</a></li>
</ul>
<ul class="footer-links nav navbar-nav navbar-right">
<li><a href="<%= github_url :current_page %>">Edit this page</a></li>
</ul>
</div>
</div>
</div>
</div>
<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', 'UA-68490725-1', 'nomadproject.io');
ga('require', 'linkid');
ga('send', 'pageview');
</script>
<script type="text/javascript">
adroll_adv_id = "6QAAFJDIWBG3DJBDRJ7BEX";
adroll_pix_id = "PYT5HSNKNRDS7LMUR5B6YG";
(function () {
var oldonload = window.onload;
window.onload = function(){
__adroll_loaded=true;
var scr = document.createElement("script");
var host = (("https:" == document.location.protocol) ? "https://s.adroll.com" : "http://a.adroll.com");
scr.setAttribute('async', 'true');
scr.type = "text/javascript";
scr.src = host + "/j/roundtrip.js";
((document.getElementsByTagName('head') || [null])[0] ||
document.getElementsByTagName('script')[0].parentNode).appendChild(scr);
if(oldonload){oldonload()}};
}());
</script>
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"name": "Nomad",
"alternateName": "Nomad by HashiCorp",
"manufacturer": "HashiCorp",
"url": "https://www.nomadproject.io",
"logo": "<%= File.join(base_url, image_path("logo-text.svg")) %>",
"sameAs": [
"https://github.com/hashicorp/nomad"
]
}
</script>
</body>
</html>

View File

@ -1,17 +0,0 @@
<svg class="svg-by" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Layer_1" x="0px" y="0px" viewBox="-1337.4 1130.1 73.8 16.1" xml:space="preserve" enable-background="new -1337.4 1130.1 73.8 16.1">
<g>
<path d="M-1329.6 1142.4v-4.9h-4.3v4.9h-2.2v-11.6h2.2v4.8h4.3v-4.8h2.2v11.6H-1329.6z"/>
<path d="M-1318.8 1142.4h-1.7l-0.2-0.6c-0.8 0.5-1.7 0.8-2.5 0.8 -1.6 0-2.2-1.1-2.2-2.5 0-1.7 0.8-2.4 2.5-2.4h2v-0.9c0-0.9-0.3-1.3-1.6-1.3 -0.8 0-1.6 0.1-2.4 0.3l-0.3-1.6c0.8-0.2 2-0.4 2.9-0.4 2.7 0 3.5 0.9 3.5 3.1V1142.4zM-1321 1139.2h-1.6c-0.7 0-0.9 0.2-0.9 0.8 0 0.6 0.2 0.9 0.9 0.9 0.6 0 1.2-0.2 1.6-0.4V1139.2z"/>
<path d="M-1314.2 1142.6c-0.9 0-2.1-0.2-2.9-0.5l0.3-1.6c0.7 0.2 1.7 0.4 2.5 0.4 0.9 0 1.1-0.2 1.1-0.9 0-0.5-0.1-0.8-1.5-1.1 -2.1-0.5-2.3-1-2.3-2.7s0.8-2.5 3.2-2.5c0.8 0 1.8 0.1 2.5 0.3l-0.2 1.7c-0.6-0.1-1.7-0.2-2.3-0.2 -0.9 0-1.1 0.2-1.1 0.7 0 0.7 0.1 0.7 1.2 1 2.4 0.6 2.6 0.9 2.6 2.7C-1311.1 1141.6-1311.6 1142.6-1314.2 1142.6z"/>
<path d="M-1304.3 1142.4v-5.9c0-0.5-0.2-0.7-0.7-0.7s-1.4 0.3-2.2 0.7v5.9h-2.1v-12l2.1-0.3v4.4c0.9-0.5 2.2-0.8 3.1-0.8 1.4 0 1.9 1 1.9 2.5v6.2H-1304.3L-1304.3 1142.4z"/>
<path d="M-1300.1 1132.7v-2.5h2.1v2.5H-1300.1zM-1300.1 1142.4v-8.5h2.1v8.5H-1300.1z"/>
<path d="M-1296 1134c0-2.1 1.2-3.4 4.1-3.4 1.1 0 2.2 0.1 3.2 0.4l-0.2 1.9c-0.9-0.2-2-0.3-2.8-0.3 -1.5 0-2 0.5-2 1.8v4.5c0 1.2 0.5 1.8 2 1.8 0.8 0 1.9-0.1 2.8-0.3l0.2 1.9c-1 0.2-2.1 0.4-3.2 0.4 -2.9 0-4.1-1.2-4.1-3.4V1134z"/>
<path d="M-1283.8 1142.6c-2.9 0-3.7-1.6-3.7-3.3v-2.1c0-1.7 0.8-3.4 3.7-3.4s3.7 1.6 3.7 3.4v2.1C-1280.1 1141-1280.9 1142.6-1283.8 1142.6zM-1283.8 1135.6c-1.1 0-1.6 0.5-1.6 1.5v2.3c0 1 0.4 1.5 1.6 1.5 1.1 0 1.6-0.5 1.6-1.5v-2.4C-1282.2 1136.1-1282.7 1135.6-1283.8 1135.6z"/>
<path d="M-1273.9 1135.7c-0.8 0.4-1.5 0.8-2.3 1.2v5.5h-2.1v-8.5h1.8l0.1 0.9c0.5-0.3 1.5-0.9 2.2-1.1L-1273.9 1135.7z"/>
<path d="M-1265.6 1139.6c0 1.9-0.8 3-2.8 3 -0.8 0-1.6-0.1-2.3-0.2v3.5l-2.1 0.3V1134h1.7l0.2 0.7c0.8-0.5 1.6-0.9 2.7-0.9 1.7 0 2.6 1 2.6 2.9V1139.6L-1265.6 1139.6zM-1270.6 1140.5c0.6 0.1 1.3 0.2 1.9 0.2 0.8 0 1.1-0.4 1.1-1.1v-3c0-0.7-0.3-1.1-1-1.1 -0.7 0-1.4 0.3-1.9 0.8L-1270.6 1140.5 -1270.6 1140.5z"/>
</g>
<g class="svg-bg-line">
<rect x="-1268" y="1145" width="4.3" height="1"/>
<rect x="-1338" y="1145" width="63" height="1"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.3 KiB

View File

@ -1,4 +0,0 @@
<svg id="svg-download" xmlns="http://www.w3.org/2000/svg" viewBox="-345 275 28 28" style="enable-background:new -345 275 28 28;">
<path d="M-319,275h-24c-1.1,0-2,0.9-2,2v24c0,1.1,0.9,2,2,2h24c1.1,0,2-0.9,2-2v-24C-317,275.9-317.9,275-319,275z M-331.2,297.9
l-6.8-5.6l2-2.4l3.2,2.6V282h3.2v10.5l3.2-2.6l2,2.4L-331.2,297.9z"/>
</svg>

Before

Width:  |  Height:  |  Size: 333 B

View File

@ -1,9 +0,0 @@
<svg id="svg-download" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14" style="enable-background:new 0 0 14 14;">
<style type="text/css">
</style>
<path class="" d="M13,0H1C0.5,0,0,0.5,0,1v12c0,0.5,0.5,1,1,1h4.7c0,0,0,0,0-0.1c0-0.2,0-0.6,0-1.1c-1.8,0.4-2.2-0.9-2.2-0.9
c-0.3-0.8-0.7-1-0.7-1c-0.6-0.4,0-0.4,0-0.4c0.7,0,1,0.7,1,0.7c0.6,1,1.5,0.7,1.9,0.5c0.1-0.4,0.2-0.7,0.4-0.9c-1.5-0.2-3-0.7-3-3.2
c0-0.7,0.3-1.3,0.7-1.8C3.7,5.8,3.5,5.1,3.9,4.2c0,0,0.6-0.2,1.8,0.7c0.5-0.1,1.1-0.2,1.6-0.2c0.6,0,1.1,0.1,1.6,0.2
c1.3-0.8,1.8-0.7,1.8-0.7c0.4,0.9,0.1,1.6,0.1,1.7c0.4,0.5,0.7,1,0.7,1.8c0,2.5-1.5,3.1-3,3.2C8.7,11.1,9,11.5,9,12.1
c0,0.9,0,1.6,0,1.8c0,0,0,0,0,0.1h4c0.5,0,1-0.5,1-1V1C14,0.5,13.5,0,13,0z"/>
</svg>

Before

Width:  |  Height:  |  Size: 735 B

View File

@ -1,7 +0,0 @@
<svg class="svg-logo" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" id="Isolation_Mode" x="0px" y="0px" viewBox="-344 273 29.4 32" xml:space="preserve" enable-background="new -344 273 29.4 32">
<g>
<polygon points="-326.2 296.7 -321.4 294.1 -321.4 275.8 -326.2 273 -326.2 286.6 -332.4 286.6 -332.4 281.3 -337.3 283.9 -337.3 302.2 -332.4 305 -332.4 291.4 -326.2 291.4 "/>
<polygon points="-319.1 277.1 -319.1 295.6 -326.2 299.5 -326.2 305 -314.6 298.3 -314.6 279.7 "/>
<polygon points="-332.4 273 -344 279.7 -344 298.3 -339.5 300.9 -339.5 282.4 -332.4 278.6 "/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 635 B