You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mnemonic.apache.org by ga...@apache.org on 2017/06/19 18:08:50 UTC
[4/7] incubator-mnemonic-site git commit: MNEMONIC-282: Update
Mnemonic site info
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/fonts/fontawesome-webfont.woff
----------------------------------------------------------------------
diff --git a/fonts/fontawesome-webfont.woff b/fonts/fontawesome-webfont.woff
deleted file mode 100755
index 628b6a5..0000000
Binary files a/fonts/fontawesome-webfont.woff and /dev/null differ
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/help/index.md
----------------------------------------------------------------------
diff --git a/help/index.md b/help/index.md
deleted file mode 100644
index 5ece410..0000000
--- a/help/index.md
+++ /dev/null
@@ -1,32 +0,0 @@
----
-layout: page
-title: Getting Help
----
-
-Need help with mnemonic? Try these resources.
-
-## Mailing Lists
-
-The best option is to send email to the user list
-[user@mnemonic.incubator.apache.org](mailto:user@mnemonic.incubator.apache.org), which is for user
-discussions. All of the historic traffic is available in the
-[archive](http://mail-archives.apache.org/mod_mbox/incubator-mnemonic-user/). To
-subscribe to the user list, please send email to
-[user-subscribe@mnemonic.incubator.apache.org](mailto:user-subscribe@mnemonic.incubator.apache.org).
-
-## Bug Reports
-
-Please file any issues you encounter or fixes you'd like on the
-[Apache mnemonic Jira](https://issues.apache.org/jira/browse/mnemonic). We welcome
-patches!
-
-## StackOverflow
-
-[StackOverflow](http://stackoverflow.com) is a wonderful resource for
-any developer. Take a look over there to see if someone has answered
-your question.
-
-## Browse the code
-
-One of the advantages of open source software is that you can browse the code.
-The code is available on [github](https://github.com/apache/incubator-mnemonic/tree/master).
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/img/apache-egg-logo.png
----------------------------------------------------------------------
diff --git a/img/apache-egg-logo.png b/img/apache-egg-logo.png
deleted file mode 100644
index c04e70d..0000000
Binary files a/img/apache-egg-logo.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/img/mnemonic_logo.png
----------------------------------------------------------------------
diff --git a/img/mnemonic_logo.png b/img/mnemonic_logo.png
deleted file mode 100644
index 7e73e8c..0000000
Binary files a/img/mnemonic_logo.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/img/mnemonic_logo_square.png
----------------------------------------------------------------------
diff --git a/img/mnemonic_logo_square.png b/img/mnemonic_logo_square.png
deleted file mode 100644
index 5522901..0000000
Binary files a/img/mnemonic_logo_square.png and /dev/null differ
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/index.html
----------------------------------------------------------------------
diff --git a/index.html b/index.html
deleted file mode 100644
index ac629a1..0000000
--- a/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
----
-layout: default
-title: Apache Incubator Mnemonic • Non-volatile memory
-overview: true
----
-
-<section class="intro">
- <div class="grid">
- <div class="unit whole center-on-mobiles">
- <div class="first titlehead">
- if <span>(</span> Mnemonic.inUse() <span>)</span> <span>{</span>
- <div class="ifbody">
- assert availMemory >= sysMemory;<br/>
- assert DurableObjectModal.takeEffect();<br/>
- assert serDe.bypass();<br/>
- assert cache.bypass();<br/>
- </div>
- <span>}</span>
- </div>
- </div>
- </div>
-</section>
-<section class="features">
- <div class="grid">
- <div class="unit one-third">
- <h2>Multi-Device</h2>
- <p>Leverages Off-heap, NVMe, SSD, SpinDisk and etc.</p>
- <a href="/docs/devices.html">Devices →</a>
- </div>
- <div class="unit one-third">
- <h2>Speeds up the Apache Big Data Ecosystem</h2>
- <p>Helps speed up big data applications including graphs.</p>
- <a href="/docs/arch.html">Architecture →</a>
- </div>
- <div class="unit one-third">
- <h2>Future Work</h2>
- <p>Works on new features</p>
- <a href="/docs/future.html">Future →</a>
- </div>
- <div class="clear"></div>
- </div>
-</section>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/js/html5shiv.min.js
----------------------------------------------------------------------
diff --git a/js/html5shiv.min.js b/js/html5shiv.min.js
deleted file mode 100644
index d4c731a..0000000
--- a/js/html5shiv.min.js
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
-* @preserve HTML5 Shiv 3.7.2 | @afarkas @jdalton @jon_neal @rem | MIT/GPL2 Licensed
-*/
-!function(a,b){function c(a,b){var c=a.createElement("p"),d=a.getElementsByTagName("head")[0]||a.documentElement;return c.innerHTML="x<style>"+b+"</style>",d.insertBefore(c.lastChild,d.firstChild)}function d(){var a=t.elements;return"string"==typeof a?a.split(" "):a}function e(a,b){var c=t.elements;"string"!=typeof c&&(c=c.join(" ")),"string"!=typeof a&&(a=a.join(" ")),t.elements=c+" "+a,j(b)}function f(a){var b=s[a[q]];return b||(b={},r++,a[q]=r,s[r]=b),b}function g(a,c,d){if(c||(c=b),l)return c.createElement(a);d||(d=f(c));var e;return e=d.cache[a]?d.cache[a].cloneNode():p.test(a)?(d.cache[a]=d.createElem(a)).cloneNode():d.createElem(a),!e.canHaveChildren||o.test(a)||e.tagUrn?e:d.frag.appendChild(e)}function h(a,c){if(a||(a=b),l)return a.createDocumentFragment();c=c||f(a);for(var e=c.frag.cloneNode(),g=0,h=d(),i=h.length;i>g;g++)e.createElement(h[g]);return e}function i(a,b){b.cache||(b.cache={},b.createElem=a.createElement,b.createFrag=a.createDocumentFragment,b.frag=b.createFrag
()),a.createElement=function(c){return t.shivMethods?g(c,a,b):b.createElem(c)},a.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+d().join().replace(/[\w\-:]+/g,function(a){return b.createElem(a),b.frag.createElement(a),'c("'+a+'")'})+");return n}")(t,b.frag)}function j(a){a||(a=b);var d=f(a);return!t.shivCSS||k||d.hasCSS||(d.hasCSS=!!c(a,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||i(a,d),a}var k,l,m="3.7.2",n=a.html5||{},o=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,q="_html5shiv",r=0,s={};!function(){try{var a=b.createElement("a");a.innerHTML="<xyz></xyz>",k="hidden"in a,l=1==a.childNodes.length||function(){b.createElement("a");var a=b.createDocumentFragment();return"undefined"
==typeof a.cloneNode||"undefined"==typeof a.createDocumentFragment||"undefined"==typeof a.createElement}()}catch(c){k=!0,l=!0}}();var t={elements:n.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output picture progress section summary template time video",version:m,shivCSS:n.shivCSS!==!1,supportsUnknownElements:l,shivMethods:n.shivMethods!==!1,type:"default",shivDocument:j,createElement:g,createDocumentFragment:h,addElements:e};a.html5=t,j(b)}(this,document);
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/js/respond.min.js
----------------------------------------------------------------------
diff --git a/js/respond.min.js b/js/respond.min.js
deleted file mode 100644
index 80a7b69..0000000
--- a/js/respond.min.js
+++ /dev/null
@@ -1,5 +0,0 @@
-/*! Respond.js v1.4.2: min/max-width media query polyfill * Copyright 2013 Scott Jehl
- * Licensed under https://github.com/scottjehl/Respond/blob/master/LICENSE-MIT
- * */
-
-!function(a){"use strict";a.matchMedia=a.matchMedia||function(a){var b,c=a.documentElement,d=c.firstElementChild||c.firstChild,e=a.createElement("body"),f=a.createElement("div");return f.id="mq-test-1",f.style.cssText="position:absolute;top:-100em",e.style.background="none",e.appendChild(f),function(a){return f.innerHTML='­<style media="'+a+'"> #mq-test-1 { width: 42px; }</style>',c.insertBefore(e,d),b=42===f.offsetWidth,c.removeChild(e),{matches:b,media:a}}}(a.document)}(this),function(a){"use strict";function b(){u(!0)}var c={};a.respond=c,c.update=function(){};var d=[],e=function(){var b=!1;try{b=new a.XMLHttpRequest}catch(c){b=new a.ActiveXObject("Microsoft.XMLHTTP")}return function(){return b}}(),f=function(a,b){var c=e();c&&(c.open("GET",a,!0),c.onreadystatechange=function(){4!==c.readyState||200!==c.status&&304!==c.status||b(c.responseText)},4!==c.readyState&&c.send(null))};if(c.ajax=f,c.queue=d,c.regex={media:/@media[^\{]+\{([^\{\}]*\{[^\}\{]*\})+/gi,keyframes:/@(?:\-(?:
o|moz|webkit)\-)?keyframes[^\{]+\{(?:[^\{\}]*\{[^\}\{]*\})+[^\}]*\}/gi,urls:/(url\()['"]?([^\/\)'"][^:\)'"]+)['"]?(\))/g,findStyles:/@media *([^\{]+)\{([\S\s]+?)$/,only:/(only\s+)?([a-zA-Z]+)\s?/,minw:/\([\s]*min\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/,maxw:/\([\s]*max\-width\s*:[\s]*([\s]*[0-9\.]+)(px|em)[\s]*\)/},c.mediaQueriesSupported=a.matchMedia&&null!==a.matchMedia("only all")&&a.matchMedia("only all").matches,!c.mediaQueriesSupported){var g,h,i,j=a.document,k=j.documentElement,l=[],m=[],n=[],o={},p=30,q=j.getElementsByTagName("head")[0]||k,r=j.getElementsByTagName("base")[0],s=q.getElementsByTagName("link"),t=function(){var a,b=j.createElement("div"),c=j.body,d=k.style.fontSize,e=c&&c.style.fontSize,f=!1;return b.style.cssText="position:absolute;font-size:1em;width:1em",c||(c=f=j.createElement("body"),c.style.background="none"),k.style.fontSize="100%",c.style.fontSize="100%",c.appendChild(b),f&&k.insertBefore(c,k.firstChild),a=b.offsetWidth,f?k.removeChild(c):c.removeC
hild(b),k.style.fontSize=d,e&&(c.style.fontSize=e),a=i=parseFloat(a)},u=function(b){var c="clientWidth",d=k[c],e="CSS1Compat"===j.compatMode&&d||j.body[c]||d,f={},o=s[s.length-1],r=(new Date).getTime();if(b&&g&&p>r-g)return a.clearTimeout(h),h=a.setTimeout(u,p),void 0;g=r;for(var v in l)if(l.hasOwnProperty(v)){var w=l[v],x=w.minw,y=w.maxw,z=null===x,A=null===y,B="em";x&&(x=parseFloat(x)*(x.indexOf(B)>-1?i||t():1)),y&&(y=parseFloat(y)*(y.indexOf(B)>-1?i||t():1)),w.hasquery&&(z&&A||!(z||e>=x)||!(A||y>=e))||(f[w.media]||(f[w.media]=[]),f[w.media].push(m[w.rules]))}for(var C in n)n.hasOwnProperty(C)&&n[C]&&n[C].parentNode===q&&q.removeChild(n[C]);n.length=0;for(var D in f)if(f.hasOwnProperty(D)){var E=j.createElement("style"),F=f[D].join("\n");E.type="text/css",E.media=D,q.insertBefore(E,o.nextSibling),E.styleSheet?E.styleSheet.cssText=F:E.appendChild(j.createTextNode(F)),n.push(E)}},v=function(a,b,d){var e=a.replace(c.regex.keyframes,"").match(c.regex.media),f=e&&e.length||0;b=b.substr
ing(0,b.lastIndexOf("/"));var g=function(a){return a.replace(c.regex.urls,"$1"+b+"$2$3")},h=!f&&d;b.length&&(b+="/"),h&&(f=1);for(var i=0;f>i;i++){var j,k,n,o;h?(j=d,m.push(g(a))):(j=e[i].match(c.regex.findStyles)&&RegExp.$1,m.push(RegExp.$2&&g(RegExp.$2))),n=j.split(","),o=n.length;for(var p=0;o>p;p++)k=n[p],l.push({media:k.split("(")[0].match(c.regex.only)&&RegExp.$2||"all",rules:m.length-1,hasquery:k.indexOf("(")>-1,minw:k.match(c.regex.minw)&&parseFloat(RegExp.$1)+(RegExp.$2||""),maxw:k.match(c.regex.maxw)&&parseFloat(RegExp.$1)+(RegExp.$2||"")})}u()},w=function(){if(d.length){var b=d.shift();f(b.href,function(c){v(c,b.href,b.media),o[b.href]=!0,a.setTimeout(function(){w()},0)})}},x=function(){for(var b=0;b<s.length;b++){var c=s[b],e=c.href,f=c.media,g=c.rel&&"stylesheet"===c.rel.toLowerCase();e&&g&&!o[e]&&(c.styleSheet&&c.styleSheet.rawCssText?(v(c.styleSheet.rawCssText,e,f),o[e]=!0):(!/^([a-zA-Z:]*\/\/)/.test(e)&&!r||e.replace(RegExp.$1,"").split("/")[0]===a.location.host)&&("
//"===e.substring(0,2)&&(e=a.location.protocol+e),d.push({href:e,media:f})))}w()};x(),c.update=x,c.getEmValue=t,a.addEventListener?a.addEventListener("resize",b,!1):a.attachEvent&&a.attachEvent("onresize",b)}}(this);
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
new file mode 100644
index 0000000..8548caa
--- /dev/null
+++ b/package.json
@@ -0,0 +1,25 @@
+{
+ "name": "mnemonic",
+ "version": "1.0.0",
+ "description": "This branch contains the generated HTML for the [Mnemonic website](https://mnemonic.incubator.apache.org).",
+ "main": "index.js",
+ "scripts": {
+ "test": "echo \"Error: no test specified\" && exit 1"
+ },
+ "repository": {
+ "type": "git",
+ "url": "https://garyw@git-wip-us.apache.org/repos/asf/incubator-mnemonic-site.git"
+ },
+ "author": "Gang(Gary) Wang",
+ "license": "LicenseRef-LICENSE",
+ "devDependencies": {
+ "babel-core": "^6.25.0",
+ "babel-loader": "^7.0.0",
+ "babel-preset-es2015": "^6.24.1",
+ "babel-preset-react": "^6.24.1",
+ "react": "^15.6.1",
+ "react-addons-update": "^15.6.0",
+ "react-dom": "^15.6.1",
+ "webpack": "^2.6.1"
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/Gemfile
----------------------------------------------------------------------
diff --git a/src/Gemfile b/src/Gemfile
new file mode 100644
index 0000000..30817db
--- /dev/null
+++ b/src/Gemfile
@@ -0,0 +1,4 @@
+source 'https://rubygems.org'
+gem 'github-pages'
+gem 'rouge'
+gem 'rack-jekyll'
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_data/docs.yml
----------------------------------------------------------------------
diff --git a/src/_data/docs.yml b/src/_data/docs.yml
new file mode 100644
index 0000000..a647f23
--- /dev/null
+++ b/src/_data/docs.yml
@@ -0,0 +1,7 @@
+- title: Overview
+ docs:
+ - arch
+
+- title: Usage
+ docs:
+ - ui-usage
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/arch.md
----------------------------------------------------------------------
diff --git a/src/_docs/arch.md b/src/_docs/arch.md
new file mode 100644
index 0000000..9b3687e
--- /dev/null
+++ b/src/_docs/arch.md
@@ -0,0 +1,5 @@
+---
+layout: page
+title: Mnemonic Architecture
+permalink: /docs/arch.html
+---
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/devices.md
----------------------------------------------------------------------
diff --git a/src/_docs/devices.md b/src/_docs/devices.md
new file mode 100644
index 0000000..c05803f
--- /dev/null
+++ b/src/_docs/devices.md
@@ -0,0 +1,11 @@
+---
+layout: docs
+title: Device Support
+permalink: /docs/devices.html
+---
+ * Dynamic Random-Access Memory (DRAM)
+ * NVM Express (NVMe)
+ * Solid-State Drive (SSD)
+ * Hard Disk Drive (HDD)
+ * Network Attached Storage (NAS)
+
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/disclaimer.md
----------------------------------------------------------------------
diff --git a/src/_docs/disclaimer.md b/src/_docs/disclaimer.md
new file mode 100644
index 0000000..49bb4da
--- /dev/null
+++ b/src/_docs/disclaimer.md
@@ -0,0 +1,6 @@
+---
+layout: docs
+title: Disclaimer
+permalink: /docs/disclaimer.html
+---
+Apache Mnemonic is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incubation status is not necessarily a reflection of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/future.md
----------------------------------------------------------------------
diff --git a/src/_docs/future.md b/src/_docs/future.md
new file mode 100644
index 0000000..5d89d11
--- /dev/null
+++ b/src/_docs/future.md
@@ -0,0 +1,5 @@
+---
+layout: docs
+title: Future
+permalink: /docs/future.html
+---
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/index.md
----------------------------------------------------------------------
diff --git a/src/_docs/index.md b/src/_docs/index.md
new file mode 100644
index 0000000..4fe56eb
--- /dev/null
+++ b/src/_docs/index.md
@@ -0,0 +1,13 @@
+---
+layout: docs
+title: Wiki
+permalink: /docs/index.html
+---
+
+
+How to Contribute to Mnemonic [Wiki](https://cwiki.apache.org/confluence/display/MNEMONIC/How+to+Contribute+to+Mnemonic)
+
+
+How to Release [Wiki](https://cwiki.apache.org/confluence/display/MNEMONIC/How+to+Release)
+
+
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/indexes.md
----------------------------------------------------------------------
diff --git a/src/_docs/indexes.md b/src/_docs/indexes.md
new file mode 100644
index 0000000..58e7239
--- /dev/null
+++ b/src/_docs/indexes.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: Arch
+permalink: /docs/indexes.html
+---
+
+Intro the Arch
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_docs/ui-usage.md
----------------------------------------------------------------------
diff --git a/src/_docs/ui-usage.md b/src/_docs/ui-usage.md
new file mode 100644
index 0000000..b30a232
--- /dev/null
+++ b/src/_docs/ui-usage.md
@@ -0,0 +1,7 @@
+---
+layout: docs
+title: Arch
+permalink: /docs/hive-ddl.html
+---
+
+Mnemonic has both a UI as well as an API.
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/anchor_links.html
----------------------------------------------------------------------
diff --git a/src/_includes/anchor_links.html b/src/_includes/anchor_links.html
new file mode 100644
index 0000000..c584ce5
--- /dev/null
+++ b/src/_includes/anchor_links.html
@@ -0,0 +1,33 @@
+<script>
+ var anchorForId = function (id) {
+ var anchor = document.createElement("a");
+ anchor.className = "header-link";
+ anchor.href = "#" + id;
+ anchor.innerHTML = "<span class=\"sr-only\">Permalink</span><i class=\"fa fa-link\"></i>";
+ anchor.title = "Permalink";
+ return anchor;
+ };
+
+ var linkifyAnchors = function (level, containingElement) {
+ var headers = containingElement.getElementsByTagName("h" + level);
+ for (var h = 0; h < headers.length; h++) {
+ var header = headers[h];
+
+ if (typeof header.id !== "undefined" && header.id !== "") {
+ header.appendChild(anchorForId(header.id));
+ }
+ }
+ };
+
+ document.onreadystatechange = function () {
+ if (this.readyState === "complete") {
+ var contentBlock = document.getElementsByClassName("docs")[0] || document.getElementsByClassName("news")[0];
+ if (!contentBlock) {
+ return;
+ }
+ for (var level = 1; level <= 6; level++) {
+ linkifyAnchors(level, contentBlock);
+ }
+ }
+ };
+</script>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/docs_contents.html
----------------------------------------------------------------------
diff --git a/src/_includes/docs_contents.html b/src/_includes/docs_contents.html
new file mode 100644
index 0000000..2ac64bb
--- /dev/null
+++ b/src/_includes/docs_contents.html
@@ -0,0 +1,8 @@
+<div class="unit one-fifth hide-on-mobiles">
+ <aside>
+ {% for section in site.data.docs %}
+ <h4>{{ section.title }}</h4>
+ {% include docs_ul.html items=section.docs %}
+ {% endfor %}
+ </aside>
+</div>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/docs_contents_mobile.html
----------------------------------------------------------------------
diff --git a/src/_includes/docs_contents_mobile.html b/src/_includes/docs_contents_mobile.html
new file mode 100644
index 0000000..b3e0110
--- /dev/null
+++ b/src/_includes/docs_contents_mobile.html
@@ -0,0 +1,10 @@
+<div class="docs-nav-mobile unit whole show-on-mobiles">
+ <select onchange="if (this.value) window.location.href=this.value">
+ <option value="">Navigate the docs…</option>
+ {% for section in site.data.docs %}
+ <optgroup label="{{ section.title }}">
+ {% include docs_option.html items=section.docs %}
+ </optgroup>
+ {% endfor %}
+ </select>
+</div>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/docs_option.html
----------------------------------------------------------------------
diff --git a/src/_includes/docs_option.html b/src/_includes/docs_option.html
new file mode 100644
index 0000000..0913a59
--- /dev/null
+++ b/src/_includes/docs_option.html
@@ -0,0 +1,11 @@
+{% assign items = include.items %}
+
+{% for item in items %}
+ {% assign item_url = item | prepend:"/docs/" | append:".html" %}
+
+ {% for p in site.docs %}
+ {% if p.url == item_url %}
+ <option value="{{ site.url }}{{ p.url }}">{{ p.title }}</option>
+ {% endif %}
+ {% endfor %}
+{% endfor %}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/docs_ul.html
----------------------------------------------------------------------
diff --git a/src/_includes/docs_ul.html b/src/_includes/docs_ul.html
new file mode 100644
index 0000000..fa585e6
--- /dev/null
+++ b/src/_includes/docs_ul.html
@@ -0,0 +1,21 @@
+{% assign items = include.items %}
+
+<ul>
+{% for item in items %}
+ {% assign item_url = item | prepend:"/docs/" | append:".html" %}
+
+ {% if item_url == page.url %}
+ {% assign c = "current" %}
+ {% else %}
+ {% assign c = "" %}
+ {% endif %}
+
+ {% for p in site.docs %}
+ {% if p.url == item_url %}
+ <li class="{{ c }}"><a href="{{ site.url }}{{ p.url }}">{{ p.title }}</a></li>
+ {% break %}
+ {% endif %}
+ {% endfor %}
+
+{% endfor %}
+</ul>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/footer.html
----------------------------------------------------------------------
diff --git a/src/_includes/footer.html b/src/_includes/footer.html
new file mode 100644
index 0000000..161eb05
--- /dev/null
+++ b/src/_includes/footer.html
@@ -0,0 +1,9 @@
+<footer role="contentinfo">
+ <p><img src="/img/apache-egg-logo.png" alt="Apache Incubator" align="left" hspace="10" vspace="3" style="background-color:#aaa;"/>
+Apache Mnemonic(incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by the Apache Incubator PMC.
+Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with other successful ASF projects.
+While incubation status is not necessarily a reflection of the completeness or stability of the code,
+it does indicate that the project has yet to be fully endorsed by the ASF.
+<div align="center"> Copyright © {{ site.time | date: '%Y' }} <a href="https://www.apache.org/">The Apache Software Foundation</a></div></p>
+</footer>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/header.html
----------------------------------------------------------------------
diff --git a/src/_includes/header.html b/src/_includes/header.html
new file mode 100644
index 0000000..2629ec2
--- /dev/null
+++ b/src/_includes/header.html
@@ -0,0 +1,20 @@
+<header role="banner">
+ <nav class="mobile-nav show-on-mobiles">
+ {% include primary-nav-items.html %}
+ </nav>
+ <div class="grid">
+ <div class="unit one-third center-on-mobiles">
+ <h1>
+ <a href="/">
+ <span class="sr-only">Apache Incubator Mnemonic</span>
+ <img src="/img/mnemonic_logo.png" width="289" alt="Mnemonic Logo" class="logo">
+ </a>
+ </h1>
+ </div>
+ <nav class="main-nav unit two-thirds hide-on-mobiles">
+ {% include primary-nav-items.html %}
+ </nav>
+ <span><a href="https://github.com/apache/incubator-mnemonic"><img style="position: absolute; top: 0; right: 0; border: 0;" src="https://camo.githubusercontent.com/e7bbb0521b397edbd5fe43e7f760759336b5e05f/68747470733a2f2f73332e616d617a6f6e6177732e636f6d2f6769746875622f726962626f6e732f666f726b6d655f72696768745f677265656e5f3030373230302e706e67" alt="Fork me on GitHub" data-canonical-src="https://s3.amazonaws.com/github/ribbons/forkme_right_green_007200.png"></a></span>
+ <div align="right"><font style="background-color:yellow;">This site is under construction... Please learn it from Github instead.</font></div>
+ </div>
+</header>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/primary-nav-items.html
----------------------------------------------------------------------
diff --git a/src/_includes/primary-nav-items.html b/src/_includes/primary-nav-items.html
new file mode 100644
index 0000000..361b66b
--- /dev/null
+++ b/src/_includes/primary-nav-items.html
@@ -0,0 +1,20 @@
+<ul>
+ <li class="{% if page.overview %}current{% endif %}">
+ <a href="/">Home</a>
+ </li>
+ <li class="{% if page.url contains '/docs/' %}current{% endif %}">
+ <a href="/docs/">Doc<span class="show-on-mobiles">s</span><span class="hide-on-mobiles">umentation</span></a>
+ </li>
+ <li class="{% if page.url contains '/talks/' %}current{% endif %}">
+ <a href="/talks/">Talks</a>
+ </li>
+ <!-- <li class="{% if page.url contains '/news/' %}current{% endif %}">
+ <a href="/news/">News</a>
+ </li> -->
+ <li class="{% if page.url contains '/help/' %}current{% endif %}">
+ <a href="/help/">Help</a>
+ </li>
+ <li class="{% if page.url contains '/develop/' %}current{% endif %}">
+ <a href="/develop/">Develop</a>
+ </li>
+</ul>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/section_nav.html
----------------------------------------------------------------------
diff --git a/src/_includes/section_nav.html b/src/_includes/section_nav.html
new file mode 100644
index 0000000..072a21e
--- /dev/null
+++ b/src/_includes/section_nav.html
@@ -0,0 +1,39 @@
+{% comment %}
+Map grabs the doc sections, giving us an array of arrays. Join, flattens all
+the items to a comma delimited string. Split turns it into an array again.
+{% endcomment %}
+{% assign docs = site.data.docs | map: 'docs' | join: ',' | split: ',' %}
+
+{% comment %}
+Because this is built for every page, lets find where we are in the ordered
+document list by comparing url strings. Then if there's something previous or
+next, lets build a link to it.
+{% endcomment %}
+
+{% for document in docs %}
+ {% assign document_url = document | prepend:"/docs/" | append:".html" %}
+ {% if document_url == page.url %}
+ <div class="section-nav">
+ <div class="left align-right">
+ {% if forloop.first %}
+ <span class="prev disabled">Back</span>
+ {% else %}
+ {% assign previous = forloop.index0 | minus: 1 %}
+ {% assign previous_page = docs[previous] | prepend:"/docs/" | append:".html" %}
+ <a href="{{ previous_page }}" class="prev">Back</a>
+ {% endif %}
+ </div>
+ <div class="right align-left">
+ {% if forloop.last %}
+ <span class="next disabled">Next</span>
+ {% else %}
+ {% assign next = forloop.index0 | plus: 1 %}
+ {% assign next_page = docs[next] | prepend:"/docs/" | append:".html" %}
+ <a href="{{ next_page }}" class="next">Next</a>
+ {% endif %}
+ </div>
+ </div>
+ <div class="clear"></div>
+ {% break %}
+ {% endif %}
+{% endfor %}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_includes/top.html
----------------------------------------------------------------------
diff --git a/src/_includes/top.html b/src/_includes/top.html
new file mode 100644
index 0000000..a4c04e7
--- /dev/null
+++ b/src/_includes/top.html
@@ -0,0 +1,15 @@
+<!DOCTYPE HTML>
+<html lang="en-US">
+<head>
+ <meta charset="UTF-8">
+ <title>{{ page.title }}</title>
+ <meta name="viewport" content="width=device-width,initial-scale=1">
+ <meta name="generator" content="Jekyll v{{ jekyll.version }}">
+ <link rel="stylesheet" href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic,900">
+ <link rel="stylesheet" href="/css/screen.css">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <!--[if lt IE 9]>
+ <script src="/js/html5shiv.min.js"></script>
+ <script src="/js/respond.min.js"></script>
+ <![endif]-->
+</head>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_layouts/default.html
----------------------------------------------------------------------
diff --git a/src/_layouts/default.html b/src/_layouts/default.html
new file mode 100644
index 0000000..5cec816
--- /dev/null
+++ b/src/_layouts/default.html
@@ -0,0 +1,13 @@
+{% include top.html %}
+
+<body class="wrap">
+ <script type="text/javascript" src="/assets/javascripts/bundle.js" charset="utf-8"></script>
+ {% include header.html %}
+
+ {{ content }}
+
+ {% include footer.html %}
+ {% include anchor_links.html %}
+
+</body>
+</html>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_layouts/docs.html
----------------------------------------------------------------------
diff --git a/src/_layouts/docs.html b/src/_layouts/docs.html
new file mode 100644
index 0000000..a0a8a5c
--- /dev/null
+++ b/src/_layouts/docs.html
@@ -0,0 +1,23 @@
+---
+layout: default
+---
+
+ <section class="docs">
+ <div class="grid">
+
+ {% include docs_contents_mobile.html %}
+
+ <div class="unit four-fifths">
+ <article>
+ <h1>{{ page.title }}</h1>
+ {{ content }}
+ {% include section_nav.html %}
+ </article>
+ </div>
+
+ {% include docs_contents.html %}
+
+ <div class="clear"></div>
+
+ </div>
+ </section>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_layouts/page.html
----------------------------------------------------------------------
diff --git a/src/_layouts/page.html b/src/_layouts/page.html
new file mode 100644
index 0000000..bae31bb
--- /dev/null
+++ b/src/_layouts/page.html
@@ -0,0 +1,18 @@
+---
+layout: default
+---
+
+<section class="standalone">
+ <div class="grid">
+
+ <div class="unit whole">
+ <article>
+ <h1>{{ page.title }}</h1>
+ {{ content }}
+ </article>
+ </div>
+
+ <div class="clear"></div>
+
+ </div>
+</section>
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_sass/_font-awesome.scss
----------------------------------------------------------------------
diff --git a/src/_sass/_font-awesome.scss b/src/_sass/_font-awesome.scss
new file mode 100644
index 0000000..d90676c
--- /dev/null
+++ b/src/_sass/_font-awesome.scss
@@ -0,0 +1,25 @@
+/*!
+ * Font Awesome 4.2.0 by @davegandy - http://fontawesome.io - @fontawesome
+ * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
+ */
+@font-face {
+ font-family: 'FontAwesome';
+ src: url('../fonts/fontawesome-webfont.eot?v=4.2.0');
+ src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.2.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.2.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.2.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.2.0#fontawesomeregular') format('svg');
+ font-weight: normal;
+ font-style: normal;
+}
+.fa {
+ display: inline-block;
+ font: normal normal normal 14px/1 FontAwesome;
+ font-size: inherit;
+ text-rendering: auto;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+.fa-link:before {
+ content: "\f0c1";
+}
+.fa-pencil:before {
+ content: "\f040";
+}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_sass/_gridism.scss
----------------------------------------------------------------------
diff --git a/src/_sass/_gridism.scss b/src/_sass/_gridism.scss
new file mode 100644
index 0000000..61698ef
--- /dev/null
+++ b/src/_sass/_gridism.scss
@@ -0,0 +1,124 @@
+/*
+ * Gridism
+ * A simple, responsive, and handy CSS grid by @cobyism
+ * https://github.com/cobyism/gridism
+ */
+
+/* Preserve some sanity */
+.grid,
+.unit {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+/* Set up some rules to govern the grid */
+.grid {
+ display: block;
+ clear: both;
+}
+.grid .unit {
+ float: left;
+ width: 100%;
+ padding: 10px;
+}
+
+/* This ensures the outer gutters are equal to the (doubled) inner gutters. */
+.grid .unit:first-child { padding-left: 20px; }
+.grid .unit:last-child { padding-right: 20px; }
+
+/* Nested grids already have padding though, so let’s nuke it */
+.unit .unit:first-child { padding-left: 0; }
+.unit .unit:last-child { padding-right: 0; }
+.unit .grid:first-child > .unit { padding-top: 0; }
+.unit .grid:last-child > .unit { padding-bottom: 0; }
+
+/* Let people nuke the gutters/padding completely in a couple of ways */
+.no-gutters .unit,
+.unit.no-gutters {
+ padding: 0 !important;
+}
+
+/* Wrapping at a maximum width is optional */
+.wrap .grid,
+.grid.wrap {
+ max-width: 978px;
+ margin: 0 auto;
+}
+
+/* Width classes also have shorthand versions numbered as fractions
+ * For example: for a grid unit 1/3 (one third) of the parent width,
+ * simply apply class="w-1-3" to the element. */
+.grid .whole, .grid .w-1-1 { width: 100%; }
+.grid .half, .grid .w-1-2 { width: 50%; }
+.grid .one-third, .grid .w-1-3 { width: 33.3332%; }
+.grid .two-thirds, .grid .w-2-3 { width: 66.6665%; }
+.grid .one-quarter,
+.grid .one-fourth, .grid .w-1-4 { width: 25%; }
+.grid .three-quarters,
+.grid .three-fourths, .grid .w-3-4 { width: 75%; }
+.grid .one-fifth, .grid .w-1-5 { width: 20%; }
+.grid .two-fifths, .grid .w-2-5 { width: 40%; }
+.grid .three-fifths, .grid .w-3-5 { width: 60%; }
+.grid .four-fifths, .grid .w-4-5 { width: 80%; }
+.grid .golden-small, .grid .w-g-s { width: 38.2716%; } /* Golden section: smaller piece */
+.grid .golden-large, .grid .w-g-l { width: 61.7283%; } /* Golden section: larger piece */
+
+/* Clearfix after every .grid */
+.grid {
+ *zoom: 1;
+}
+.grid:before, .grid:after {
+ display: table;
+ content: "";
+ line-height: 0;
+}
+.grid:after {
+ clear: both;
+}
+
+/* Utility classes */
+.align-center { text-align: center; }
+.align-left { text-align: left; }
+.align-right { text-align: right; }
+.pull-left { float: left; }
+.pull-right { float: right; }
+
+/* A property for a better rendering of images in units: in
+ this way bigger pictures are just resized if the unit
+ becomes smaller */
+.unit img {
+ max-width: 100%;
+}
+
+/* Responsive Stuff */
+@media screen and (max-width: 568px) {
+ /* Stack anything that isn’t full-width on smaller screens
+ and doesn't provide the no-stacking-on-mobiles class */
+ .grid:not(.no-stacking-on-mobiles) > .unit {
+ width: 100% !important;
+ padding-left: 20px;
+ padding-right: 20px;
+ }
+ .unit .grid .unit {
+ padding-left: 0px;
+ padding-right: 0px;
+ }
+
+ /* Sometimes, you just want to be different on small screens */
+ .center-on-mobiles {
+ text-align: center !important;
+ }
+ .hide-on-mobiles {
+ display: none !important;
+ }
+}
+
+/* Expand the wrap a bit further on larger screens */
+@media screen and (min-width: 1180px) {
+ .wider .grid,
+ .grid.wider {
+ max-width: 1180px;
+ margin: 0 auto;
+ }
+}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_sass/_mixins.scss
----------------------------------------------------------------------
diff --git a/src/_sass/_mixins.scss b/src/_sass/_mixins.scss
new file mode 100644
index 0000000..5b9bb43
--- /dev/null
+++ b/src/_sass/_mixins.scss
@@ -0,0 +1,38 @@
+@mixin box-shadow($shadow...) {
+ -webkit-box-shadow: $shadow;
+ -moz-box-shadow: $shadow;
+ box-shadow: $shadow;
+}
+
+@mixin border-radius($radius...) {
+ -webkit-border-radius: $radius;
+ -moz-border-radius: $radius;
+ border-radius: $radius;
+}
+
+@mixin border-top-left-radius($radius...) {
+ -webkit-border-top-left-radius: $radius;
+ -moz-border-radius-topleft: $radius;
+ border-top-left-radius: $radius;
+}
+
+@mixin border-top-right-radius($radius...) {
+ -webkit-border-top-right-radius: $radius;
+ -moz-border-radius-topright: $radius;
+ border-top-right-radius: $radius;
+}
+
+@mixin transition($transition...) {
+ -webkit-transition: $transition;
+ -moz-transition: $transition;
+ -o-transition: $transition;
+ transition: $transition;
+}
+
+@mixin user-select($select...) {
+ -webkit-user-select: $select; /* Chrome all / Safari all */
+ -moz-user-select: $select; /* Firefox all */
+ -ms-user-select: $select; /* IE 10+ */
+ -o-user-select: $select;
+ user-select: $select;
+}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_sass/_normalize.scss
----------------------------------------------------------------------
diff --git a/src/_sass/_normalize.scss b/src/_sass/_normalize.scss
new file mode 100644
index 0000000..f6e0b65
--- /dev/null
+++ b/src/_sass/_normalize.scss
@@ -0,0 +1 @@
+/*! normalize.css v3.0.2 | MIT License | git.io/normalize */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{
color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/_sass/_pygments.scss
----------------------------------------------------------------------
diff --git a/src/_sass/_pygments.scss b/src/_sass/_pygments.scss
new file mode 100644
index 0000000..2858bcd
--- /dev/null
+++ b/src/_sass/_pygments.scss
@@ -0,0 +1,78 @@
+.highlight {
+ .hll { background-color: #ffffcc }
+ .c { color: #87ceeb} /* Comment */
+ .err { color: #ffffff} /* Error */
+ .g { color: #ffffff} /* Generic */
+ .k { color: #f0e68c} /* Keyword */
+ .l { color: #ffffff} /* Literal */
+ .n { color: #ffffff} /* Name */
+ .o { color: #ffffff} /* Operator */
+ .x { color: #ffffff} /* Other */
+ .p { color: #ffffff} /* Punctuation */
+ .cm { color: #87ceeb} /* Comment.Multiline */
+ .cp { color: #cd5c5c} /* Comment.Preproc */
+ .c1 { color: #87ceeb} /* Comment.Single */
+ .cs { color: #87ceeb} /* Comment.Special */
+ .gd { color: #0000c0; font-weight: bold; background-color: #008080 } /* Generic.Deleted */
+ .ge { color: #c000c0; text-decoration: underline} /* Generic.Emph */
+ .gr { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Error */
+ .gh { color: #cd5c5c} /* Generic.Heading */
+ .gi { color: #ffffff; background-color: #0000c0 } /* Generic.Inserted */
+ span.go { color: #add8e6; font-weight: bold; background-color: #4d4d4d } /* Generic.Output, qualified with span to prevent applying this style to the Go language, see #1153. */
+ .gp { color: #ffffff} /* Generic.Prompt */
+ .gs { color: #ffffff} /* Generic.Strong */
+ .gu { color: #cd5c5c} /* Generic.Subheading */
+ .gt { color: #c0c0c0; font-weight: bold; background-color: #c00000 } /* Generic.Traceback */
+ .kc { color: #f0e68c} /* Keyword.Constant */
+ .kd { color: #f0e68c} /* Keyword.Declaration */
+ .kn { color: #f0e68c} /* Keyword.Namespace */
+ .kp { color: #f0e68c} /* Keyword.Pseudo */
+ .kr { color: #f0e68c} /* Keyword.Reserved */
+ .kt { color: #bdb76b} /* Keyword.Type */
+ .ld { color: #ffffff} /* Literal.Date */
+ .m { color: #ffffff} /* Literal.Number */
+ .s { color: #ffffff} /* Literal.String */
+ .na { color: #ffffff} /* Name.Attribute */
+ .nb { color: #ffffff} /* Name.Builtin */
+ .nc { color: #ffffff} /* Name.Class */
+ .no { color: #ffa0a0} /* Name.Constant */
+ .nd { color: #ffffff} /* Name.Decorator */
+ .ni { color: #ffdead} /* Name.Entity */
+ .ne { color: #ffffff} /* Name.Exception */
+ .nf { color: #ffffff} /* Name.Function */
+ .nl { color: #ffffff} /* Name.Label */
+ .nn { color: #ffffff} /* Name.Namespace */
+ .nx { color: #ffffff} /* Name.Other */
+ .py { color: #ffffff} /* Name.Property */
+ .nt { color: #f0e68c} /* Name.Tag */
+ .nv { color: #98fb98} /* Name.Variable */
+ .ow { color: #ffffff} /* Operator.Word */
+ .w { color: #ffffff} /* Text.Whitespace */
+ .mf { color: #ffffff} /* Literal.Number.Float */
+ .mh { color: #ffffff} /* Literal.Number.Hex */
+ .mi { color: #ffffff} /* Literal.Number.Integer */
+ .mo { color: #ffffff} /* Literal.Number.Oct */
+ .sb { color: #ffffff} /* Literal.String.Backtick */
+ .sc { color: #ffffff} /* Literal.String.Char */
+ .sd { color: #ffffff} /* Literal.String.Doc */
+ .s2 { color: #ffffff} /* Literal.String.Double */
+ .se { color: #ffffff} /* Literal.String.Escape */
+ .sh { color: #ffffff} /* Literal.String.Heredoc */
+ .si { color: #ffffff} /* Literal.String.Interpol */
+ .sx { color: #ffffff} /* Literal.String.Other */
+ .sr { color: #ffffff} /* Literal.String.Regex */
+ .s1 { color: #ffffff} /* Literal.String.Single */
+ .ss { color: #ffffff} /* Literal.String.Symbol */
+ .bp { color: #ffffff} /* Name.Builtin.Pseudo */
+ .vc { color: #98fb98} /* Name.Variable.Class */
+ .vg { color: #98fb98} /* Name.Variable.Global */
+ .vi { color: #98fb98} /* Name.Variable.Instance */
+ .il { color: #ffffff} /* Literal.Number.Integer.Long */
+ .bash .nv {
+ -webkit-user-select: none;
+ -moz-user-select: none;
+ -ms-user-select: none;
+ -o-user-select: none;
+ user-select: none;
+ }
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/config.ru
----------------------------------------------------------------------
diff --git a/src/config.ru b/src/config.ru
new file mode 100644
index 0000000..fba6cf6
--- /dev/null
+++ b/src/config.ru
@@ -0,0 +1,4 @@
+require "rack/jekyll"
+
+run Rack::Jekyll.new
+
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/css/screen.scss
----------------------------------------------------------------------
diff --git a/src/css/screen.scss b/src/css/screen.scss
new file mode 100644
index 0000000..324aba4
--- /dev/null
+++ b/src/css/screen.scss
@@ -0,0 +1,1023 @@
+---
+---
+
+@import "mixins";
+@import "normalize";
+@import "gridism";
+@import "pygments";
+@import "font-awesome";
+
+/* Base */
+
+* {
+ -webkit-box-sizing: border-box;
+ -moz-box-sizing: border-box;
+ box-sizing: border-box;
+}
+
+body {
+ font: 300 21px Lato, 'Helvetica Neue', Helvetica, Arial, sans-serif;
+ color: #333;
+ background-color: #fff;
+ border-top: 5px solid {{ site.highlight_color }};
+ @include box-shadow(inset 0 3px 30px rgba(0,0,0,.3));
+ text-shadow: 0 1px 1px rgba(0,0,0,.5);
+ -webkit-font-feature-settings: "kern" 1;
+ -moz-font-feature-settings: "kern" 1;
+ -o-font-feature-settings: "kern" 1;
+ font-feature-settings: "kern" 1;
+ font-kerning: normal;
+}
+
+.clear {
+ display: block;
+}
+
+.clear:after {
+ content: " ";
+ display: block;
+ height: 0;
+ clear: both;
+ visibility: hidden;
+}
+
+.logo {
+ padding-top: 8px;
+}
+
+.grid .titlehead {
+ background: #fff;
+ padding: 40px 20px 50px;
+ text-align: left;
+ text-transform: none;
+ font-size: 50px;
+ span {
+ color: #f1f1f1;
+ font-size: 60px;
+ padding: 0 2px;
+ position: relative;
+ top: 2px;
+ }
+ .ifbody {
+ font-size: 31px;
+ padding-left: 72px;
+ }
+}
+
+/* Sections */
+
+header,
+section,
+footer {
+ float: left;
+ width: 100%;
+ clear: both;
+}
+
+/* Header */
+
+header {
+
+ h1,
+ nav { display: inline-block; }
+
+}
+
+nav {
+
+ ul {
+ padding: 0;
+ margin: 0;
+ }
+
+ li { display: inline-block; }
+}
+
+.main-nav {
+ margin-top: 52px;
+
+ li {
+ margin-right: 10px;
+
+ a {
+ @include border-radius(10px);
+ font-weight: 900;
+ font-size: 14px;
+ padding: 0.5em 1em;
+ text-shadow: none;
+ text-transform: uppercase;
+ @include transition(all .25s);
+
+ &:hover {
+ background-color: #252525;
+ // @include box-shadow(inset 0 1px 3px rgba(0,0,0,.5), 0 1px 0 rgba(255,255,255,.1));
+ // text-shadow: 0 1px 3px rgba(0,0,0,.5);
+ }
+ }
+
+ &.current {
+
+ a {
+ background-color: {{ site.highlight_color }};
+ color: #FFF;
+ // @include box-shadow(inset 0 1px 0 rgba(255,255,255,.5), 0 1px 5px rgba(0,0,0,.5));
+ // text-shadow: 0 1px 0 rgba(255,255,255,.3);
+ }
+ }
+ }
+}
+
+.pitch-add {
+ font-size: 0.4em;
+ float: right;
+}
+
+.mobile-nav {
+
+ ul {
+ overflow: hidden;
+ width: 100%;
+ display: table;
+ }
+
+ a {
+ float: left;
+ width: 100%;
+ background-color: #333;
+ color: {{ site.highlight_color }};
+ text-align: center;
+ text-transform: uppercase;
+ font-size: 14px;
+ font-weight: 900;
+ padding: 5px;
+ @include border-radius(5px);
+ }
+
+ li {
+ display: table-cell;
+ width: 20%;
+ padding: 8px 2px;
+ }
+
+ .current {
+
+ a {
+ background-color: {{ site.highlight_color }};
+ color: #222;
+ @include box-shadow(inset 0 1px 0 rgba(255,255,255,.5), 0 1px 5px rgba(0,0,0,.5));
+ text-shadow: 0 1px 0 rgba(255,255,255,.3);
+ }
+ }
+}
+
+/*
+ * This code is courtesy Ben Balter, modified by Parker Moore.
+ * http://ben.balter.com/2014/03/13/pages-anchor-links/
+ */
+.header-link {
+ position: relative;
+ left: 0.5em;
+ opacity: 0;
+ font-size: 0.8em;
+ @include transition(opacity 0.2s ease-in-out 0.1s);
+}
+h2:hover .header-link,
+h3:hover .header-link,
+h4:hover .header-link,
+h5:hover .header-link,
+h6:hover .header-link {
+ opacity: 1;
+}
+
+@media (max-width: 768px) {
+ .main-nav ul {
+ text-align: right;
+ }
+}
+@media (max-width: 830px) {
+ .main-nav {
+ .show-on-mobiles { display: inline; }
+ .hide-on-mobiles { display: none; }
+ }
+}
+
+/* Footer */
+
+footer {
+ background-color: #212121;
+ font-size: 16px;
+ padding-bottom: 5px;
+ color: #c0c0c0;
+ margin-top: 40px;
+
+ a {
+ color: #fff;
+
+ &:hover {
+
+ img { opacity: 1; }
+ }
+ }
+
+ p {
+ max-width: 800px;
+ margin-left: auto;
+ margin-right: auto;
+ }
+
+ .align-right {
+
+ p { display: inline-block; }
+ }
+
+ img {
+ display: inline-block;
+ position: relative;
+ top: 8px;
+ margin-left: 5px;
+ opacity: .8;
+ padding: 1px;
+ @include transition(opacity .2s);
+ }
+}
+
+@media (max-width: 568px) {
+ footer {
+ .one-third p { margin-bottom: 0; }
+ .two-thirds p { margin-top: -20px; }
+ }
+}
+
+/* Intro */
+
+.intro {
+
+ .unit { padding: 10px 0 40px; }
+
+ p {
+ font-size: 1.75em;
+ line-height: 1em;
+ margin: 0;
+ }
+}
+
+@media (min-width: 569px) {
+ .intro p { font-size: 3.2em; }
+}
+
+/* Quickstart */
+
+.quickstart {
+ background-color: #3F1F1F;
+ color: #fff;
+ margin: 60px 0;
+ @include box-shadow(inset 0 3px 10px rgba(0,0,0,.4));
+
+ .content { padding: 0; }
+
+ h3 {
+ font-size: 24px;
+ line-height: 24px;
+ margin-top: 20px;
+ text-shadow: 0 1px 3px rgba(0,0,0,.8);
+ }
+
+ .code {
+ font-size: 12px;
+ display: block;
+ margin: 0 0 -30px;
+ }
+}
+
+@media (min-width: 768px) {
+ .quickstart {
+
+ .code {
+ font-size: 18px;
+ margin: -30px 0;
+ float: right;
+ }
+
+ h3 {
+ margin: 50px 0 0;
+ text-align: center;
+ }
+ }
+}
+
+/* Code */
+
+.quickstart {
+
+ .code {
+ display: block;
+ padding: 0;
+ font-family: Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
+ line-height: 1.3em;
+
+ .title {
+ display: block;
+ text-align: center;
+ margin: 0 20px;
+ padding: 5px 0;
+ @include border-radius(5px 5px 0 0);
+ @include box-shadow(0 3px 10px rgba(0,0,0,.5));
+ font: 400 16px/24px 'Helvetica Neue', Helvetica, Arial, sans-serif;
+ color: #444;
+ text-shadow: 0 1px 0 rgba(255,255,255,.5);
+ background-color: #f7f7f7;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2Y3ZjdmNyIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjclIiBzdG9wLWNvbG9yPSIjY2ZjZmNmIiBzdG9wLW9wYWNpdHk9IjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2FhYWFhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#f7f7f7), color-stop(7%, #cfcfcf), to(#aaaaaa));
+ background-image: -webkit-linear-gradient(top, #f7f7f7 0%, #cfcfcf 7%, #aaaaaa 100%);
+ background-image: -moz-linear-gradient(top, #f7f7f7 0%, #cfcfcf 7%, #aaaaaa 100%);
+ background-image: -o-linear-gradient(top, #f7f7f7 0%, #cfcfcf 7%, #aaaaaa 100%);
+ background-image: linear-gradient(top, #f7f7f7 0%,#cfcfcf 7%,#aaaaaa 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f7f7f7', endColorstr='#aaaaaa',GradientType=0 );
+ border-bottom: 1px solid #111;
+ }
+
+ .shell {
+ padding: 20px;
+ text-shadow: none;
+ margin: 0 20px;
+ background-color: #171717;
+ @include border-radius(0 0 5px 5px);
+ @include box-shadow(0 5px 30px rgba(0,0,0,.3));
+ }
+
+ .line {
+ display: block;
+ margin: 0;
+ padding: 0;
+
+ span { display: inline-block; }
+ }
+
+ .path {
+ color: #87ceeb;
+ @include user-select(none);
+ }
+
+ .prompt {
+ color: #cd5c5c;
+ -webkit-user-select: none; /* Chrome all / Safari all */
+ -moz-user-select: none; /* Firefox all */
+ -ms-user-select: none; /* IE 10+ */
+ -o-user-select: none;
+ user-select: none;
+ }
+
+ .command { color: #f0e68c; }
+
+ .output { color: #888; }
+ }
+}
+
+@media (min-width: 768px) {
+ .free-hosting {
+
+ img {
+ float: left;
+ margin: -20px -30px -30px -50px;
+ width: 300px;
+ height: 251px;
+ }
+
+ .pane-content {
+ margin-top: 35px;
+ padding-right: 30px;
+ }
+
+ p,
+ a { font-size: 18px; }
+
+ .pane:after {
+ content: " ";
+ float: right;
+ background: url(../img/footer-arrow.png) top left no-repeat;
+ width: 73px;
+ height: 186px;
+ position: absolute;
+ right: 0;
+ bottom: -30px;
+ }
+ }
+}
+
+/* Article - Used for both docs and news */
+
+
+article {
+ background-color: #fff;
+ @include border-radius(10px);
+ padding: 20px;
+ margin: 0 10px;
+// @include box-shadow(0 3px 10px rgba(0,0,0,.1));
+ border-left: thick double #199acf;
+ border-right: thick double #199acf;
+ font-size: 16px;
+}
+
+@media (max-width: 480px) {
+ article ul { padding-left: 20px; }
+}
+
+@media (max-width: 568px) {
+ article { margin: 0; }
+}
+
+@media (min-width: 768px) {
+ article {
+ padding: 40px 40px 30px;
+ font-size: 21px;
+ }
+}
+
+/* Right-side nav - used by both docs and news */
+
+aside {
+ padding-top: 30px;
+
+ h4 {
+ text-transform: uppercase;
+ font-size: 14px;
+ font-weight: 700;
+ padding: 0 0 10px 30px;
+ margin-left: -30px;
+ display: inline-block;
+ border-bottom: 1px solid #199ACF;
+ }
+
+ ul {
+ padding-left: 0;
+
+ &:first-child { margin-top: 0; }
+ }
+
+ li {
+ list-style-type: none;
+
+ a {
+ font-size: 16px;
+ position: relative
+ }
+
+ &.current a:before {
+ content: "";
+ border-color: transparent transparent transparent #444;
+ border-style: solid;
+ border-width: 10px;
+ width: 0;
+ height: 0;
+ position: absolute;
+ top: 0;
+ left: -30px;
+ }
+ }
+}
+
+/* Documentation */
+
+.docs {
+
+ article { min-height: 800px; }
+
+ .content { padding: 0; }
+}
+
+.section-nav {
+ text-align: center;
+ padding-top: 40px;
+ position: relative;
+ background: url(../img/article-footer.png) top center no-repeat;
+ margin: 40px -20px 10px;
+
+ > div { width: 49.5%; }
+
+ a,
+ span {
+ color: #fff;
+ font-size: 16px;
+ text-transform: uppercase;
+ font-weight: 700;
+ padding: 8px 12px 10px;
+ @include border-radius(5px);
+ /*border: 1px solid #333;*/
+ @include box-shadow(0 1px 3px rgba(0,0,0,.3), inset 0 1px 1px rgba(255,255,255,.5));
+ background-color: #767676;
+ }
+
+ a:hover {
+ color: #fff;
+ background-color: #888;
+ }
+
+ .next,
+ .prev { position: relative; }
+
+ .next:after,
+ .prev:before {
+ font-size: 36px;
+ color: #222;
+ font-weight: 900;
+ text-shadow: 0 1px 0 rgba(255,255,255,.4);
+ position: absolute;
+ top: -7px;
+ }
+
+ .next:after {
+ content: '\203A';
+ right: 10px;
+ }
+
+ .prev:before {
+ content: '\2039';
+ left: 10px;
+ }
+
+ .prev,
+ .prev:hover { padding-left: 30px; }
+
+ .next,
+ .next:hover { padding-right: 30px; }
+
+ .disabled {
+ opacity: .5;
+ cursor: default;
+ }
+}
+
+.improve {
+ padding-top: 25px;
+ font-size: 16px;
+ a {
+ color: #999;
+ }
+}
+
+.docs-nav-mobile select {
+ color: #000;
+ width: 100%;
+}
+
+/* News */
+
+article h2:first-child { margin-top: 0; }
+
+.post-category,
+.post-meta {
+ display: inline-block;
+ vertical-align: middle;
+ font-size: .8em;
+}
+
+.post-category {
+ display: inline-block;
+ margin-left: -30px;
+ padding: 6px 10px 8px;
+ padding-left: 50px;
+ @include border-radius(0 5px 5px 0);
+ position: relative;
+ @include box-shadow(0 1px 5px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(0,0,0,.3));
+ background-color: #1B3850;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzllMjgxMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM2ZjBkMGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#1B3850), to(#204c69));
+ background-image: -webkit-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: -moz-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: -o-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: linear-gradient(to bottom, #1B3850 0%,#204c69 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1B3850', endColorstr='#204c69',GradientType=0 );
+
+ &:before {
+ content: "";
+ position: absolute;
+ top: -10px;
+ left: 0;
+ border-color: transparent #204c69 #204c69 transparent;
+ border-style: solid;
+ border-width: 5px;
+ width: 0;
+ height: 0;
+ }
+}
+
+.post-content img { max-width: 100% }
+
+.label {
+ float: left;
+ text-transform: uppercase;
+ font-weight: 700;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
+}
+
+@media (max-width: 568px) {
+ .post-category { padding-left: 30px; }
+}
+
+@media (min-width: 768px) {
+ .post-category { margin-left: -50px; }
+}
+
+.avatar {
+ @include border-radius(3px);
+ display: inline-block;
+ vertical-align: middle;
+}
+
+.post-meta {
+ padding: 5px 0;
+ color: #c0c0c0;
+ font-weight: 600;
+ text-shadow: 0 -1px 0 #000;
+}
+
+.post-date,
+.post-author { margin-left: 10px; }
+
+.news article + article {
+ margin-top: -10px;
+ @include border-radius(0 0 10px 10px);
+ border-top: 1px solid #555;
+ @include box-shadow(0 -1px 0 #2f2f2f);
+}
+
+/* Code Highlighting */
+
+
+pre,
+code {
+ white-space: pre;
+ display: inline-block;
+ margin: 0;
+ font: 14px/1.8em Menlo, Consolas, "Courier New", Courier, "Liberation Mono", monospace;
+ padding: 0 0.5em;
+}
+
+@media (min-width: 768px) {
+ pre, code { font-size: 16px; }
+}
+
+.highlight,
+p > pre,
+p > code,
+p > nobr > code,
+li > code,
+h5 > code,
+.note > code {
+ background-color: #2b2b2b;
+ color: #fff;
+ @include border-radius(5px);
+ @include box-shadow(inset 0 1px 10px rgba(0,0,0,.3),
+ 0 1px 0 rgba(255,255,255,.1),
+ 0 -1px 0 rgba(0,0,0,.5));
+}
+
+.note code {
+ background-color: #333;
+ background-color: rgba(0,0,0,0.2);
+ margin-left: 2.5px;
+ margin-right: 2.5px;
+ font-size: 0.8em;
+}
+
+.highlight {
+ margin: 1em 0;
+ padding: 10px 0;
+ width: 100%;
+ overflow: auto;
+}
+
+/* HTML Elements */
+
+h1, h2, h3, h4, h5, h6 { margin: 0; }
+
+a {
+ color: {{ site.highlight_color }};
+ text-decoration: none;
+ @include transition(all .25s);
+
+ &:hover { color: {{ site.highlight_color}}; }
+}
+
+strong { font-weight: 700; }
+
+p { line-height: 1.5em; }
+
+.left { float: left; }
+.right { float: right; }
+.align-right { text-align: right; }
+.align-left { text-align: left; }
+.align-center { text-align: center; }
+
+/* Article HTML */
+
+article {
+
+ h2, h3, h4, h5, h6 { margin: 1em 0; }
+
+ h4 { color: #fff; }
+
+ ul li {
+
+ p { margin: 0; }
+
+ blockquote { margin: 10px 0; }
+ }
+
+ ul li,
+ ol li {
+ line-height: 1.5em;
+ margin-bottom: 0.5em;
+ }
+
+}
+
+h5, h6 {
+ font-size: 1em;
+ font-style: italic;
+}
+
+blockquote {
+ border-left: 2px solid #777;
+ padding-left: 20px;
+ font-style: italic;
+ font-size: 18px;
+ font-weight: 500;
+}
+
+
+/* Tables */
+
+table {
+ width: 100%;
+ background-color: #555;
+ margin: .5em 0;
+ @include border-radius(5px);
+ @include box-shadow(0 1px 3px rgba(0,0,0,.3));
+}
+
+thead {
+ @include border-top-left-radius(5px);
+ @include border-top-right-radius(5px);
+ color: #fff;
+ background-color: #ddd;
+/* background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzNhM2EzYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMxZTFlMWUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#3a3a3a), to(#1e1e1e));
+ background-image: -webkit-linear-gradient(top, #3a3a3a 0%, #1e1e1e 100%);
+ background-image: -moz-linear-gradient(top, #3a3a3a 0%, #1e1e1e 100%);
+ background-image: -o-linear-gradient(top, #3a3a3a 0%, #1e1e1e 100%);
+ background-image: linear-gradient(to bottom, #3a3a3a 0%,#1e1e1e 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3a3a3a', endColorstr='#1e1e1e',GradientType=0 );
+*/
+ th {
+ position: relative;
+ @include box-shadow(inset 0 1px 0 rgba(255,255,255,.1));
+
+ &:first-child {
+ @include border-top-left-radius(5px);
+ }
+
+ &:last-child {
+ @include border-top-right-radius(5px);
+ }
+ }
+}
+
+td { padding: .5em .75em; }
+
+td p { margin: 0; }
+
+th {
+ text-transform: uppercase;
+ font-size: 16px;
+ padding: .5em .75em;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.9);
+ color: #888;
+}
+
+tbody td {
+ border-top: 1px solid #747474;
+ border-top: 1px solid rgba(0,0,0,.1);
+ @include box-shadow(inset 0 1px 0 rgba(255,255,255,.1));
+ background-color: #eee;
+/* background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjEiLz4KICAgIDxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,0.1)), to(rgba(255,255,255,0)));
+ background-image: -webkit-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
+ background-image: -moz-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
+ background-image: -o-linear-gradient(top, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 100%);
+ background-image: linear-gradient(to bottom, rgba(255,255,255,0.1) 0%,rgba(255,255,255,0) 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1affffff', endColorstr='#00ffffff',GradientType=0 );
+*/
+
+ p {
+ font-size: 16px;
+
+ code { font-size: 14px; }
+ }
+}
+
+code.option,
+th .option,
+code.filter,
+th .filter {
+ color: #50B600;
+}
+
+code.flag,
+th .flag,
+code.output,
+th .output {
+ color: #049DCE;
+}
+
+code.option,
+code.flag,
+code.filter,
+code.output {
+ margin-bottom: 2px;
+}
+
+/* Note types */
+
+.note {
+ margin: 30px 0;
+ margin-left: -30px;
+ padding: 20px 20px 24px;
+ padding-left: 50px;
+ @include border-radius(0 5px 5px 0);
+ position: relative;
+ @include box-shadow(0 1px 5px rgba(0, 0, 0, .3), inset 0 1px 0 rgba(255,255,255,.2), inset 0 -1px 0 rgba(0,0,0,.3));
+ background-color: #7e6d42;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzdlNmQ0MiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM1YzRlMzUiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#7e6d42), to(#5c4e35));
+ background-image: -webkit-linear-gradient(top, #7e6d42 0%, #5c4e35 100%);
+ background-image: -moz-linear-gradient(top, #7e6d42 0%, #5c4e35 100%);
+ background-image: -o-linear-gradient(top, #7e6d42 0%, #5c4e35 100%);
+ background-image: linear-gradient(to bottom, #7e6d42 0%,#5c4e35 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#7e6d42', endColorstr='#5c4e35',GradientType=0 );
+}
+
+@media (max-width: 568px) {
+ .note { margin-right: -30px; }
+}
+
+@media (min-width: 768px) {
+ .note { margin-left: -50px; }
+}
+
+.configtable {
+ font-size: 14px;
+}
+
+.note {
+ &:before {
+ content: "";
+ position: absolute;
+ top: -10px;
+ left: 0;
+ border-color: transparent #222 #222 transparent;
+ border-style: solid;
+ border-width: 5px;
+ width: 0;
+ height: 0;
+ }
+
+ h5,
+ p {
+ margin: 0;
+ color: #fff;
+ }
+
+ h5 {
+ line-height: 1.5em;
+ font-weight: 900;
+ font-style: normal;
+ }
+
+ p {
+ font-weight: 400;
+ font-size: .75em;
+ }
+
+ &:after {
+ content: '\2605';
+ color: {{ site.highlight_color }};
+ position: absolute;
+ top: 14px;
+ left: 14px;
+ font-size: 28px;
+ font-weight: 700;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
+ }
+}
+
+.info {
+ background-color: #0389aa;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAzODlhYSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDYxN2YiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#0389aa), to(#00617f));
+ background-image: -webkit-linear-gradient(top, #0389aa 0%, #00617f 100%);
+ background-image: -moz-linear-gradient(top, #0389aa 0%, #00617f 100%);
+ background-image: -o-linear-gradient(top, #0389aa 0%, #00617f 100%);
+ background-image: linear-gradient(to bottom, #0389aa 0%,#00617f 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0389aa', endColorstr='#00617f',GradientType=0 );
+}
+
+.warning {
+ background-color: #1B3850;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzllMjgxMiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiM2ZjBkMGQiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(#1B3850), to(#204c69));
+ background-image: -webkit-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: -moz-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: -o-linear-gradient(top, #1B3850 0%, #204c69 100%);
+ background-image: linear-gradient(to bottom, #1B3850 0%,#204c69 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1B3850', endColorstr='#204c69',GradientType=0 );
+}
+
+.unreleased {
+ background-color: #cd9239;
+ background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2NkOTIzOSIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiNhMjc1MjgiIHN0b3Atb3BhY2l0eT0iMSIvPgogIDwvbGluZWFyR3JhZGllbnQ+CiAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEiIGhlaWdodD0iMSIgZmlsbD0idXJsKCNncmFkLXVjZ2ctZ2VuZXJhdGVkKSIgLz4KPC9zdmc+);
+ background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(205,146,57,1)), to(rgba(162,117,40,1)));
+ background-image: -webkit-linear-gradient(top, rgba(205,146,57,1) 0%, rgba(162,117,40,1) 100%);
+ background-image: -moz-linear-gradient(top, rgba(205,146,57,1) 0%, rgba(162,117,40,1) 100%);
+ background-image: -o-linear-gradient(top, rgba(205,146,57,1) 0%, rgba(162,117,40,1) 100%);
+ background-image: linear-gradient(to bottom, rgba(205,146,57,1) 0%,rgba(162,117,40,1) 100%);
+ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cd9239', endColorstr='#a27528',GradientType=0 );
+}
+
+.info:before { border-color: transparent #00617f #00617f transparent; }
+
+.warning:before { border-color: transparent #204c69 #204c69 transparent; }
+
+.unreleased:before { border-color: transparent #664719 #664719 transparent; }
+
+.info:after {
+ content: '\24D8';
+ color: #fff;
+ position: absolute;
+ top: 15px;
+ left: 15px;
+ font-size: 28px;
+ font-weight: 700;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
+}
+
+.warning:after {
+ content: '\203C';
+ color: {{ site.highlight_color }};
+ position: absolute;
+ top: 15px;
+ left: 15px;
+ font-size: 32px;
+ font-weight: 700;
+ text-shadow: 0 -1px 0 rgba(0,0,0,.5);
+}
+
+.unreleased:after {
+ content: '\2692';
+ color: #2b2a12;
+ position: absolute;
+ top: 8px;
+ left: 15px;
+ font-size: 38px;
+ font-weight: 700;
+ text-shadow: 0 1px 0 rgba(255,255,255,.25);
+}
+
+/* Responsive tables */
+
+@media (max-width: 768px) {
+ .mobile-side-scroller {
+ overflow-x: scroll;
+ margin: 0 -40px;
+ padding: 0 10px;
+ }
+}
+
+
+.show-on-mobiles {
+ display: none;
+}
+
+@media screen and (max-width: 568px) {
+ .show-on-mobiles {
+ display: block !important;
+ }
+ a .show-on-mobiles {
+ display: inline !important;
+ }
+}
+
+
+/* Helper class taken from Bootstrap.
+ Hides an element to all devices except screen readers.
+*/
+.sr-only {
+ position: absolute;
+ width: 1px;
+ height: 1px;
+ padding: 0;
+ margin: -1px;
+ overflow: hidden;
+ clip: rect(0, 0, 0, 0);
+ border: 0;
+}
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/develop/bylaws.md
----------------------------------------------------------------------
diff --git a/src/develop/bylaws.md b/src/develop/bylaws.md
new file mode 100644
index 0000000..922de2a
--- /dev/null
+++ b/src/develop/bylaws.md
@@ -0,0 +1,281 @@
+---
+layout: page
+title: Apache Mnemonic Bylaws
+---
+
+## Introduction
+
+This document defines the bylaws under which the Apache mnemonic project
+operates. It defines the roles and responsibilities of the project,
+who may vote, how voting works, how conflicts are resolved, etc.
+
+mnemonic is a project of the Apache Software Foundation (ASF) and the foundation
+holds the trademark on the name "mnemonic" and copyright on the combined
+code base. The [Apache Foundation
+FAQ](http://www.apache.org/foundation/faq.html) and
+[How-It-Works](http://www.apache.org/foundation/how-it-works.html)
+explain the operation and background of the foundation.
+
+Apache has a [code of
+conduct](http://www.apache.org/foundation/policies/conduct.html) that
+it expects its members to follow. In particular:
+
+* Be **open and welcoming**. It is important that we grow and
+ encourage the community of users and developers for our project.
+
+* Be **collaborative**. Working together on the open mailing lists and
+ bug database to make decisions helps the project grow.
+
+* Be **respectful** of others. Everyone is volunteering their time and
+ efforts to work on this project. Please be respectful of everyone
+ and their views.
+
+mnemonic is typical of Apache projects in that it operates under a set of
+principles, known collectively as the "Apache Way". If you are new to
+Apache development, please refer to the [Incubator
+project](http://incubator.apache.org/) for more
+information on how Apache projects operate.
+
+## Roles and Responsibilities
+
+Apache projects define a set of roles with associated rights and
+responsibilities. These roles govern what tasks an individual may
+perform within the project. The roles are defined in the following
+sections.
+
+### Users
+
+The most important participants in the project are people who use our
+software. The majority of our developers start out as users and guide
+their development efforts from the user's perspective. Users
+contribute to the Apache projects by providing feedback to developers
+in the form of bug reports and feature suggestions. As well, users
+participate in the Apache community by helping other users on mailing
+lists and user support forums.
+
+### Contributors
+
+Contributors include all of the volunteers who donate time, code,
+documentation,
+or resources to the mnemonic Project. A contributor that makes sustained,
+welcome contributions to the project may be invited to become a
+committer, though the exact timing of such invitations depends on many
+factors.
+
+### Committers
+
+The project's committers are responsible for the project's technical
+management. Committers have the right to commit to the project's git
+repository. Committers may cast binding votes on any technical
+discussion.
+
+Committer access is by invitation only and must be approved by
+consensus approval of the active Project Management Committee (PMC)
+members.
+
+If a committer wishes to leave the project or does not contribute to
+the project in any form for six months, the PMC may make them emeritus.
+Emeritus committers lose their ability to commit code or cast binding
+votes. An emeritus committer may
+request reinstatement of commit access from the PMC. Such
+reinstatement is subject to consensus approval of active PMC members.
+
+All Apache committers are required to have a signed [Individual
+Contributor License
+Agreement](https://www.apache.org/licenses/icla.txt) (ICLA) on file
+with the Apache Software Foundation. There is a [Committer
+FAQ](http://www.apache.org/dev/committers.html) which provides more
+details on the requirements for Committers.
+
+A committer who makes a
+sustained contribution to the project may be invited to become a
+member of the PMC. The form of contribution
+is not limited to code. It can also include code review, helping out
+users on the mailing lists, documentation, testing, etc.
+
+### Release Manager
+
+A Release Manager (RM) is a committer who volunteers to produce a
+Release Candidate. The RM shall publish a Release Plan on the
+dev mailing list stating the branch from which they intend to
+make a Release Candidate.
+
+### Project Management Committee
+
+The Project Management Committee (PMC) for Apache mnemonic was created by
+the Apache Board in February 2016 when mnemonic moved out of Intel's github
+repositories and became an incubated project at Apache.
+The PMC is responsible to the board and
+the ASF for the management and oversight of the Apache mnemonic
+codebase. The responsibilities of the PMC include
+
+ * Deciding what is distributed as products of the Apache mnemonic
+ project. In particular all releases must be approved by the PMC.
+
+ * Maintaining the project's shared resources, including the codebase
+ repository, mailing lists, and websites.
+
+ * Speaking on behalf of the project.
+
+ * Resolving license disputes regarding products of the project
+
+ * Nominating new PMC members and committers
+
+ * Maintaining these bylaws and other guidelines of the project
+
+Membership of the PMC is by invitation only and must be approved by a
+consensus approval of active PMC members.
+
+A PMC member is considered
+emeritus by their own declaration or by not contributing in any form
+to the project for over six months. An emeritus member may request
+reinstatement to the PMC. Such reinstatement is subject to consensus
+approval of the active PMC members.
+
+The chair of the PMC is appointed by the ASF board. The chair is an
+office holder of the Apache Software Foundation (Vice President,
+Apache mnemonic) and has primary responsibility to the board for the
+management of the project within the scope of the mnemonic PMC. The
+chair reports to the board quarterly on developments within the mnemonic
+project.
+
+When the project desires a new PMC chair, the PMC votes to recommend a
+new chair using [Single Transferable
+Vote](http://wiki.apache.org/general/BoardVoting) voting. The decision
+must be ratified by the Apache board.
+
+## Decision Making
+
+Within the mnemonic project, different types of decisions require
+different forms of approval. For example, the previous section
+describes several decisions which require "consensus approval."
+This section defines how voting is performed, the types of
+approvals, and which types of decision require which type of approval.
+
+### Voting
+
+Decisions regarding the project are made by votes on the primary
+project development mailing list (dev@mnemonic.apache.org). Where
+necessary, PMC voting may take place on the private mnemonic PMC mailing
+list. Votes are clearly indicated by subject line starting with
+[VOTE]. Votes may contain multiple items for approval and these should
+be clearly separated. Voting is carried out by replying to the vote
+mail. Voting may take five flavors:
+
+* **+1** -- "Yes," "Agree," or "the action should be performed." In general,
+ this vote also indicates a willingness on the behalf of the voter in
+ "making it happen."
+
+* **+0** -- This vote indicates a willingness for the action under
+ consideration to go ahead. The voter, however, will not be able to
+ help.
+
+* **0** -- The voter is neutral on the topic under discussion.
+
+* **-0** -- This vote indicates that the voter does not, in general, agree
+ with the proposed action but is not concerned enough to prevent the
+ action going ahead.
+
+* **-1** -- This is a negative vote. On issues where consensus is required,
+ this vote counts as a veto. All vetoes must contain an explanation
+ of why the veto is appropriate. Vetoes with no explanation are
+ void. It may also be appropriate for a -1 vote to include an
+ alternative course of action.
+
+All participants in the mnemonic project are encouraged to show their
+agreement for or against a particular action by voting, regardless of
+whether their vote is binding. Nonbinding votes are useful for
+encouraging discussion and understanding the scope of opinions within
+the project.
+
+### Approvals
+
+These are the types of approvals that can be sought. Different actions
+require different types of approvals.
+
+* **Consensus Approval** -- Consensus approval requires 3 binding +1
+ votes and no binding vetoes.
+
+* **Lazy Consensus** -- Lazy consensus requires at least one +1 vote and
+ no -1 votes ('silence gives assent').
+
+* **Lazy Majority** -- A lazy majority vote requires 3 binding +1 votes
+ and more binding +1 votes than -1 votes.
+
+* **Lazy 2/3 Majority** -- Lazy 2/3 majority votes requires at least 3
+ votes and twice as many +1 votes as -1 votes.
+
+### Vetoes
+
+A valid, binding veto cannot be overruled. If a veto is cast, it must
+be accompanied by a valid reason explaining the reasons for the
+veto. The validity of a veto, if challenged, can be confirmed by
+anyone who has a binding vote. This does not necessarily signify
+agreement with the veto - merely that the veto is valid. If you
+disagree with a valid veto, you must lobby the person casting the veto
+to withdraw their veto. If a veto is not withdrawn, any action that
+has already been taken must be reversed in a timely manner.
+
+### Actions
+
+This section describes the various actions which are undertaken within
+the project, the corresponding approval required for that action and
+those who have binding votes over the action.
+
+#### Code Change
+
+A change made to a codebase of the project requires *lazy consensus*
+of active committers other than the author of the patch. The code can
+be committed after the first +1.
+
+#### Product Release
+
+To make a release, the release manager creates a release candidate and
+a vote requiring a *lazy majority* of the active PMC members is
+required. Once the vote passes, the release candidate becomes an
+official release.
+
+#### Adoption of New Codebase
+
+When the codebase for an existing, released product is to be replaced
+with an alternative codebase, it requires a *lazy 2/3 majority* of PMC
+members. This also covers the creation of new sub-projects and
+submodules within the project.
+
+#### New Committer
+
+When a new committer is proposed for the project, *consensus approval*
+of the active PMC members is required.
+
+#### New PMC Member
+
+To promote a committer to a PMC member requires *consensus approval*
+of active PMC members.
+
+If the vote passes, the Apache Board must be notified to make the change
+official.
+
+#### Committer Removal
+
+Removal of commit privileges requires a *lazy 2/3 majority* of active
+PMC members.
+
+#### PMC Member Removal
+
+Removing a PMC member requires a *lazy 2/3 majority* of active PMC
+members, excluding the member in question.
+
+If the vote passes, the Apache Board must be notified to make the change
+official.
+
+#### Modifying Bylaws
+
+Modifying this document requires a *lazy majority* of active PMC members.
+
+### Voting Timeframes
+
+Votes are open for a minimum period of 72 hours to allow all active
+voters time to consider the vote. For holiday weekends or conferences,
+consider using a longer vote window. Votes relating to code changes are
+not subject to a strict timetable but should be made as timely as
+possible.
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/develop/coding.md
----------------------------------------------------------------------
diff --git a/src/develop/coding.md b/src/develop/coding.md
new file mode 100644
index 0000000..e256950
--- /dev/null
+++ b/src/develop/coding.md
@@ -0,0 +1,34 @@
+---
+layout: page
+title: Coding Guidelines
+---
+
+## General rules
+
+* All files must have an Apache copyright header at the top of the file.
+* Code should be removed rather than commented out.
+* All public functions should have javadoc comments.
+* Always use braces to surround branches.
+* try-finally should be avoided.
+
+## Formatting
+
+* All files must have an 80 character maximum line length.
+* Indentation should be 2 spaces.
+* Files should use spaces instead of tabs.
+* Wrapping lines
+ * Break after a comma.
+ * Break before an operator.
+ * Prefer higher-level breaks to lower-level breaks.
+ * Align the new line with beginning of the expression at the same level
+ on the previous line.
+ * If the above rules lead to confusing code, just indent 8 spaces.
+* One variable declaration per a line.
+
+## Naming
+
+* Packages should be all lowercase.
+ * Java code should be in `org.apache.,mnemonic`, except for compatibility classes
+* Classes should be in mixed case.
+* Variables should be in camel case.
+* Constants should be in upper case.
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/develop/index.md
----------------------------------------------------------------------
diff --git a/src/develop/index.md b/src/develop/index.md
new file mode 100644
index 0000000..07d5e47
--- /dev/null
+++ b/src/develop/index.md
@@ -0,0 +1,66 @@
+---
+layout: page
+title: Developing
+---
+
+Information about the Mnemonic project that is most important for
+developers working on the project. The project has created
+[bylaws](bylaws.html) for itself.
+
+## Project Members
+
+Name | Apache Id | Role
+:---------------------- | :------------- | :---
+Patrick Hunt | phunt | Champion, Mentor
+Andrew Purtell | apurtell | Mentor
+James Taylor | jamestaylor | Mentor
+Henry Saputra | hsaputra | Mentor, Committer
+Yanping Wang | yanpingw | Committer
+Gang(Gary) Wang | garyw | Committer
+Uma Maheswara Rao G | umamahesh | Committer
+Kai Zheng | drankye | Committer
+Rakesh Radhakrishnan Potty | rakeshr | Committer
+Sean Zhong | seanzhong | Committer
+Hao Cheng | chhao01 | Committer
+Debojyoti Dutta | ddutta | Committer, Release Mngr.
+Johnu George | johnu | Committer
+
+
+## Mailing Lists
+
+There are several development mailing lists for mnemonic
+
+* [dev@mnemonic.incubator.apache.org](mailto:dev@mnemonic.incubator.apache.org) - Development discussions
+ with archive [here](https://mail-archives.apache.org/mod_mbox/incubator-mnemonic-dev/)
+* [issues@mnemonic.incubator.apache.org](mailto:issues@mnemonic.incubator.apache.org) - Bug tracking
+ with archive [here](https://mail-archives.apache.org/mod_mbox/incubator-mnemonic-issues/)
+* [commits@mnemonic.incubator.apache.org](mailto:commits@mnemonic.incubator.apache.org) - Git tracking
+ with archive [here](https://mail-archives.apache.org/mod_mbox/incubator-mnemonic-commits/)
+
+You can subscribe to the lists by sending email to
+*list*-subscribe@mnemonic.incubator.apache.org and unsubscribe by sending email to
+*list*-unsubscribe@mnemonic.incubator.apache.org.
+
+## Source code
+
+mnemonic uses git for version control. Get the source code:
+
+`% git clone https://git-wip-us.apache.org/repos/asf/incubator-mnemonic.git`
+
+-- or --
+
+`% git clone https://github.com/apache/incubator-mnemonic.git`
+
+The important branches are:
+
+* [master](https://github.com/apache/incubator-mnemonic/tree/master) -
+ The trunk for all developement
+* [asf-site](https://github.com/apache/incubator-mnemonic/tree/asf-site) -
+ The pages that are deployed to https://mnemonic.apache.org/
+
+Please check our [coding guidelines](/src/develop/coding.html).
+
+## Reviews
+
+All code must be +1'ed by a committer other than the author prior to its
+commit.
http://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site/blob/0ce63473/src/docker/Dockerfile
----------------------------------------------------------------------
diff --git a/src/docker/Dockerfile b/src/docker/Dockerfile
new file mode 100644
index 0000000..01f2e32
--- /dev/null
+++ b/src/docker/Dockerfile
@@ -0,0 +1,49 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+FROM centos
+MAINTAINER Gang Wang (garyw@apache.org)
+
+#set up your proxy below, refer to readme in the Docker folder
+# ENV proxy_host "172.17.42.1"
+# ENV proxy_port "8668"
+ENV proxy_host ""
+ENV proxy_port ""
+
+#ENV http_proxy "http://${proxy_host}:${proxy_port}"
+#ENV https_proxy ${http_proxy}
+#ENV HTTP_PROXY ${http_proxy}
+#ENV HTTPS_PROXY ${http_proxy}
+#ENV proxy ${http_proxy}
+
+ENV LC_ALL en_US.UTF-8
+ENV LANG en_US.UTF-8
+ENV LANGUAGE en_US.UTF-8
+
+RUN yum -y update && yum -y groupinstall 'Development Tools' && \
+ yum -y install ruby ruby-devel rubygems zlib-devel && yum clean all
+
+RUN gem install jekyll bundler nokogiri
+
+RUN mkdir -p /ws && cd /ws && git clone https://git-wip-us.apache.org/repos/asf/incubator-mnemonic-site.git && \
+ cd incubator-mnemonic-site && bundle install
+
+ENV MNEMONIC_SITE_HOME /ws/incubator-mnemonic-site
+
+WORKDIR /ws
+CMD ["bash"]
+