diff --git a/landing-pages/.stylelintignore b/landing-pages/.stylelintignore new file mode 100644 index 00000000000..4c4f891f126 --- /dev/null +++ b/landing-pages/.stylelintignore @@ -0,0 +1,2 @@ +_rst-content.scss +_roadmap.scss diff --git a/landing-pages/site/assets/icons/content-hamburger-icon.svg b/landing-pages/site/assets/icons/content-hamburger-icon.svg new file mode 100644 index 00000000000..8d5ad37195a --- /dev/null +++ b/landing-pages/site/assets/icons/content-hamburger-icon.svg @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + + diff --git a/landing-pages/site/assets/scss/_content-drawer.scss b/landing-pages/site/assets/scss/_content-drawer.scss new file mode 100644 index 00000000000..c92964bfe7d --- /dev/null +++ b/landing-pages/site/assets/scss/_content-drawer.scss @@ -0,0 +1,82 @@ +/** + * 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. + */ + +.content-drawer-wrapper { + display: none; + @media (max-width: 1024px) { + display: block; + margin-bottom: 30px; + } + + .navbar { + justify-content: space-between; + left: 0; + + &--hidden { + display: none; + } + } +} + +.content-drawer-container { + position: fixed; + top: 77px; + left: 0; + width: 100%; + height: 100%; + background-color: white; + transform: translateX(-100%); + transition: 0.2s ease-out; + z-index: 100; + + &--open { + transform: translateX(0); + } +} + +.content-drawer { + padding: 20px 40px; + + &__toggle-button { + border: none; + background: none; + padding: 0; + position: relative; + width: 26px; + height: 20px; + + &--icon { + display: flex; + width: fit-content; + align-items: center; + visibility: hidden; + opacity: 0; + transition: 0.2s ease-out; + + svg { + margin-right: 10px; + } + + &.visible { + visibility: visible; + opacity: 1; + } + } + } +} diff --git a/landing-pages/site/assets/scss/_pygments.scss b/landing-pages/site/assets/scss/_pygments.scss new file mode 100644 index 00000000000..035f95cef81 --- /dev/null +++ b/landing-pages/site/assets/scss/_pygments.scss @@ -0,0 +1,88 @@ +/** + * 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. + */ + +.highlight .hll { background-color: #ffffcc } +.highlight { background: #eeffcc; } +.highlight .c { color: #408090; font-style: italic } /* Comment */ +.highlight .err { border: 1px solid #FF0000 } /* Error */ +.highlight .k { color: #007020; font-weight: bold } /* Keyword */ +.highlight .o { color: #666666 } /* Operator */ +.highlight .ch { color: #408090; font-style: italic } /* Comment.Hashbang */ +.highlight .cm { color: #408090; font-style: italic } /* Comment.Multiline */ +.highlight .cp { color: #007020 } /* Comment.Preproc */ +.highlight .cpf { color: #408090; font-style: italic } /* Comment.PreprocFile */ +.highlight .c1 { color: #408090; font-style: italic } /* Comment.Single */ +.highlight .cs { color: #408090; background-color: #fff0f0 } /* Comment.Special */ +.highlight .gd { color: #A00000 } /* Generic.Deleted */ +.highlight .ge { font-style: italic } /* Generic.Emph */ +.highlight .gr { color: #FF0000 } /* Generic.Error */ +.highlight .gh { color: #000080; font-weight: bold } /* Generic.Heading */ +.highlight .gi { color: #00A000 } /* Generic.Inserted */ +.highlight .go { color: #333333 } /* Generic.Output */ +.highlight .gp { color: #c65d09; font-weight: bold } /* Generic.Prompt */ +.highlight .gs { font-weight: bold } /* Generic.Strong */ +.highlight .gu { color: #800080; font-weight: bold } /* Generic.Subheading */ +.highlight .gt { color: #0044DD } /* Generic.Traceback */ +.highlight .kc { color: #007020; font-weight: bold } /* Keyword.Constant */ +.highlight .kd { color: #007020; font-weight: bold } /* Keyword.Declaration */ +.highlight .kn { color: #007020; font-weight: bold } /* Keyword.Namespace */ +.highlight .kp { color: #007020 } /* Keyword.Pseudo */ +.highlight .kr { color: #007020; font-weight: bold } /* Keyword.Reserved */ +.highlight .kt { color: #902000 } /* Keyword.Type */ +.highlight .m { color: #208050 } /* Literal.Number */ +.highlight .s { color: #4070a0 } /* Literal.String */ +.highlight .na { color: #4070a0 } /* Name.Attribute */ +.highlight .nb { color: #007020 } /* Name.Builtin */ +.highlight .nc { color: #0e84b5; font-weight: bold } /* Name.Class */ +.highlight .no { color: #60add5 } /* Name.Constant */ +.highlight .nd { color: #555555; font-weight: bold } /* Name.Decorator */ +.highlight .ni { color: #d55537; font-weight: bold } /* Name.Entity */ +.highlight .ne { color: #007020 } /* Name.Exception */ +.highlight .nf { color: #06287e } /* Name.Function */ +.highlight .nl { color: #002070; font-weight: bold } /* Name.Label */ +.highlight .nn { color: #0e84b5; font-weight: bold } /* Name.Namespace */ +.highlight .nt { color: #062873; font-weight: bold } /* Name.Tag */ +.highlight .nv { color: #bb60d5 } /* Name.Variable */ +.highlight .ow { color: #007020; font-weight: bold } /* Operator.Word */ +.highlight .w { color: #bbbbbb } /* Text.Whitespace */ +.highlight .mb { color: #208050 } /* Literal.Number.Bin */ +.highlight .mf { color: #208050 } /* Literal.Number.Float */ +.highlight .mh { color: #208050 } /* Literal.Number.Hex */ +.highlight .mi { color: #208050 } /* Literal.Number.Integer */ +.highlight .mo { color: #208050 } /* Literal.Number.Oct */ +.highlight .sa { color: #4070a0 } /* Literal.String.Affix */ +.highlight .sb { color: #4070a0 } /* Literal.String.Backtick */ +.highlight .sc { color: #4070a0 } /* Literal.String.Char */ +.highlight .dl { color: #4070a0 } /* Literal.String.Delimiter */ +.highlight .sd { color: #4070a0; font-style: italic } /* Literal.String.Doc */ +.highlight .s2 { color: #4070a0 } /* Literal.String.Double */ +.highlight .se { color: #4070a0; font-weight: bold } /* Literal.String.Escape */ +.highlight .sh { color: #4070a0 } /* Literal.String.Heredoc */ +.highlight .si { color: #70a0d0; font-style: italic } /* Literal.String.Interpol */ +.highlight .sx { color: #c65d09 } /* Literal.String.Other */ +.highlight .sr { color: #235388 } /* Literal.String.Regex */ +.highlight .s1 { color: #4070a0 } /* Literal.String.Single */ +.highlight .ss { color: #517918 } /* Literal.String.Symbol */ +.highlight .bp { color: #007020 } /* Name.Builtin.Pseudo */ +.highlight .fm { color: #06287e } /* Name.Function.Magic */ +.highlight .vc { color: #bb60d5 } /* Name.Variable.Class */ +.highlight .vg { color: #bb60d5 } /* Name.Variable.Global */ +.highlight .vi { color: #bb60d5 } /* Name.Variable.Instance */ +.highlight .vm { color: #bb60d5 } /* Name.Variable.Magic */ +.highlight .il { color: #208050 } /* Literal.Number.Integer.Long */ diff --git a/landing-pages/site/assets/scss/_roadmap.scss b/landing-pages/site/assets/scss/_roadmap.scss new file mode 100644 index 00000000000..2c2563e2b3e --- /dev/null +++ b/landing-pages/site/assets/scss/_roadmap.scss @@ -0,0 +1,262 @@ +/** + * 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. + */ +@import "colors"; +@import "media"; + +.roadmap { + margin-top: 40px; + + main { + padding-left: 40px; + } + + .breadcrumb { + padding-bottom: 0; + margin-bottom: 30px; + } + + .breadcrumb-item { + a { + @extend .bodytext__medium--brownish-grey; + } + + & + .breadcrumb-item { + padding-left: 4px; + + &::before { + color: map-get($colors, brownish-grey); + padding-right: 0; + } + } + } + + .td-sidebar { + position: sticky; + top: 163px; + height: 630px; + max-width: 270px; + width: 100%; + overflow-y: scroll; + padding-top: 12px; + padding-left: 15px; + padding-bottom: 30px; + margin-left: 40px; + background-color: #f9f9f9; + border: none; + + &__inner { + position: static; + height: unset; + } + + li > a { + @extend .bodytext__medium--brownish-grey; + + &.active { + color: map-get($colors, cerulean-blue); + } + } + + nav > ul > li > a { + @extend .subtitle__medium--greyish-brown; + } + + .searchb-box { + margin-bottom: 26px; + + .search-form { + width: 100%; + } + } + + .toctree { + li { + list-style: none; + font-family: "Roboto", sans-serif; + font-size: 16px; + font-weight: normal; + font-stretch: normal; + font-style: normal; + line-height: 1.63; + letter-spacing: normal; + color: #707070; + } + + ul { + padding-left: 15px; + display: none; + } + + & > ul, li.current > ul { + display: block; + } + + .caption { + font-family: "Roboto", sans-serif; + font-size: 18px; + font-weight: bold; + font-stretch: normal; + font-style: normal; + line-height: 1.33; + letter-spacing: normal; + color: #51504f; + padding-bottom: 13px; + text-transform: uppercase; + margin-bottom: 0; + } + + .current { + color: #017cee; + font-weight: 500; + + & > a:not([href="#"]) { + color: #017cee; + } + } + + a .toctree-expand { + display: inline-block; + position: relative; + height: 1em; + + &::before { + position: absolute; + top: 6px; + left: -12px; + content: '►'; + font-size: 7px; + } + } + + .current > a > .toctree-expand:before { + content: '▼'; + } + } + } + + .td-sidebar-nav__section { + padding-right: 0; + } + + .td-sidebar-nav > .td-sidebar-nav__section .td-sidebar-nav__section { + list-style: none; + position: relative; + margin-left: 10px; + + &::before { + content: '►'; + position: absolute; + top: 6px; + left: -12px; + font-size: 8px; + color: #707070; + } + + & > ul { + display: none; + } + + &.current-section { + &::before { + content: '▼'; + } + + & > ul { + display: block; + } + } + } + + .wy-nav-side-toc { + position: sticky; + top: 163px; + overflow: hidden; + width: 280px; + height: fit-content; + font-size: 14px; + line-height: 1.43; + + ul, ol { + padding: 0; + list-style: none none; + } + + li { + list-style: none; + } + + .wy-side-scroll { + overflow-y: scroll; + + .wy-menu-vertical { + & > ul, li.current > ul { + padding-left: 1px; + } + + a { + display: inline-block; + padding: .4045em 0; + color: #707070; + } + + li a { + border-left: solid 2px #cbcbcb; + padding-left: calc(1.25em + 1px); + } + + li.current { + margin-left: -1px; + } + + li.current > a { + border-left: solid 4px #017cee; + color: #017cee; + padding-left: 1.25em; + } + + li.toctree-l2 > a { + padding-left: 2.427em; + } + + li.toctree-l3 > a { + padding-left: 4.045em; + } + + li.toctree-l4 > a { + padding-left: 5.663em; + } + } + } + } + + @media (max-width: $mobile) { + main { + padding-left: 0; + } + + .td-sidebar { + position: static; + background-color: transparent; + padding: 0; + margin: 0; + max-width: unset; + height: 530px; + } + } +} diff --git a/landing-pages/site/assets/scss/_rst-content.scss b/landing-pages/site/assets/scss/_rst-content.scss new file mode 100644 index 00000000000..8b3168403af --- /dev/null +++ b/landing-pages/site/assets/scss/_rst-content.scss @@ -0,0 +1,660 @@ +/** + * 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. + */ + +.rst-content { + color: #707070; + + h1 { + margin-top: 0; + margin-bottom: 30px; + font-weight: 500; + font-family: "Rubik", sans-serif; + color: #51504f; + font-size: 225%; + } + + h2, h3, h4, h5, h6, p { + font-family: 'Roboto', sans-serif; + color: #707070; + } + + h2, h3, h4, h5, h6 { + margin-top: 40px; + margin-bottom: 20px; + font-weight: 500; + } + + p { + line-height: 1.63; + margin: 0 0 30px; + font-size: 16px; + overflow-wrap: break-word; + } + + h2 { + font-size: 150% + } + + h3 { + font-size: 125% + } + + h4 { + font-size: 115% + } + + h5 { + font-size: 110% + } + + h6 { + font-size: 100% + } + + code { + white-space: nowrap; + max-width: 100%; + background: #fff; + border: solid 1px #e1e4e5; + font-size: 75%; + padding: 0 5px; + font-family: 'Roboto Mono', monospace; + color: #E74C3C; + overflow-x: auto + } + + .note, .attention, .caution, .danger, .error, .hint, .important, .tip, .warning, .admonition-todo, .admonition { + padding: 9px 10px; + line-height: 24px; + margin-bottom: 24px; + background: #e7f2fa; + } + + @media (max-width: 768px) { + .admonition p:not(.admonition-title) { + font-size: 12px; + line-height: 1.83; + } + } + + .admonition-title:before { + content: "!"; + background-color: white; + border-radius: 50%; + padding: 0 4px; + margin-right: 5px; + } + + .admonition-title { + color: #fff; + font-weight: 500; + font-size: 10px; + line-height: 2.1; + display: block; + background: #68d1ff; + margin: -10px; + padding: 0 12px; + margin-bottom: 9px; + } + + .danger, .error { + background: #fdece9; + + &::before { + color: #fdece9; + } + } + + .danger .admonition-title, .error .admonition-title { + background: #ee8170; + + &::before { + color: #ee8170; + } + } + + .attention, .caution { + background: #fff8f6; + } + + .warning { + background: #f8f8f8; + } + + .attention .admonition-title, .caution .admonition-title { + background: #ffa996; + + &::before { + color: #ffa996; + } + } + + .warning .admonition-title { + background: #a6a6a6; + + &::before { + color: #a6a6a6; + } + } + + .note, .seealso { + background: #f3fbff; + } + + .note .admonition-title, .seealso .admonition-title { + background: #68d2fe; + + &::before { + color: #68d2fe; + } + } + + .hint { + background: #f2fef6; + } + + .important { + background: #e6f9fc; + } + + .tip { + background: #e5f7ec; + } + + .hint .admonition-title { + background: #63e598; + + &::before { + color: #63e598; + } + } + + .important .admonition-title { + background: #5bdae3; + + &::before { + color: #5bdae3; + } + } + + .tip .admonition-title { + background: #5bcb88; + + &::before { + color: #5bcb88; + } + } + + .note p:last-child, .attention p:last-child, .caution p:last-child, .danger p:last-child, .error p:last-child, .hint p:last-child, .important p:last-child, .tip p:last-child, .warning p:last-child, .seealso p:last-child, .admonition p:last-child { + margin-bottom: 0 + } + + img { + max-width: 100%; + height: auto + } + + div.figure { + margin-bottom: 24px + } + + div.figure p.caption { + font-style: italic + } + + div.figure p:last-child.caption { + margin-bottom: 0; + } + + div.figure.align-center { + text-align: center + } + + .section > img, .section > a > img { + margin-bottom: 24px + } + + abbr[title] { + text-decoration: none + } + + blockquote { + margin-left: 24px; + line-height: 24px; + margin-bottom: 24px + } + + div[class^='highlight'] { + border: 1px solid #e1e4e5; + border-radius: 5px; + overflow-x: auto; + margin: 1px 0 24px 0; + background-color: #f2f8fe; + } + + div[class^='highlight'] div[class^='highlight'] { + padding: 0; + border: none; + margin: 0 + } + + div[class^='highlight'] td.code { + width: 100% + } + + div[class^='highlight'] pre { + white-space: pre; + margin: 0; + padding: 12px 12px; + display: block; + overflow: auto + } + + div[class^='highlight'] pre .hll { + display: block; + margin: 0 -12px; + padding: 0 12px + } + + pre.literal-block, div[class^='highlight'] pre, .linenodiv pre { + font-family: 'Roboto Mono', monospace; + font-size: 12px; + line-height: 1.4 + } + + @media print { + div[class^='highlight'], div[class^='highlight'] pre { + white-space: pre-wrap + } + } + + .admonition table { + border-color: rgba(0, 0, 0, 0.1) + } + + .admonition table td, .admonition table th { + background: transparent !important; + border-color: rgba(0, 0, 0, 0.1) !important + } + + .section ol p, .section ul p { + margin-bottom: 12px + } + + .section ol li p:last-child, .section ul li p:last-child { + margin-bottom: 0; + } + + .section ol p:last-child, .section ul p:last-child { + margin-bottom: 24px + } + + .topic-title { + font-weight: bold; + margin-bottom: 12px + } + + .toc-backref { + color: inherit; + } + + h1 .headerlink, h2 .headerlink, .toctree-wrapper p.caption .headerlink, h3 .headerlink, h4 .headerlink, h5 .headerlink, h6 .headerlink, dl dt .headerlink, p.caption .headerlink, table > caption .headerlink, .code-block-caption .headerlink { + visibility: hidden; + font-size: 14px + } + + h1 .headerlink:after, h2 .headerlink:after, .toctree-wrapper p.caption .headerlink:after, h3 .headerlink:after, h4 .headerlink:after, h5 .headerlink:after, h6 .headerlink:after, dl dt .headerlink:after, p.caption .headerlink:after, table > caption .headerlink:after, .code-block-caption .headerlink:after { + content: ""; + } + + h1:hover .headerlink:after, h2:hover .headerlink:after, .toctree-wrapper p.caption:hover .headerlink:after, h3:hover .headerlink:after, h4:hover .headerlink:after, h5:hover .headerlink:after, h6:hover .headerlink:after, dl dt:hover .headerlink:after, p.caption:hover .headerlink:after, table > caption:hover .headerlink:after, .code-block-caption:hover .headerlink:after { + visibility: visible + } + + table > caption .headerlink:after { + font-size: 12px + } + + .footnote-reference, .citation-reference { + vertical-align: baseline; + position: relative; + top: -0.4em; + line-height: 0; + font-size: 90% + } + + table.docutils, table.field-list { + border-collapse: collapse; + border-spacing: 0; + empty-cells: show; + margin-bottom: 24px + } + + table.docutils caption, table.field-list caption { + padding: 1em 0; + text-align: center; + } + + table.docutils td, table.docutils th, table.field-list th { + margin: 0; + overflow: visible; + } + + table.docutils td { + padding: 10px 31px; + } + + table.docutils th, table.field-list th { + padding: 11px 31px; + } + + table.docutils td:first-child, table.field-list td:first-child, table.docutils th:first-child, table.field-list th:first-child { + border-left-width: 0 + } + + table.docutils thead, table.field-list thead { + text-align: left; + vertical-align: bottom; + white-space: nowrap + } + + table.docutils thead th, table.field-list thead th { + border-bottom: solid 1px rgba(81, 80, 79, 0.3); + border-left: solid 1px rgba(81, 80, 79, 0.3); + } + + table.docutils thead th p, table.field-list thead th p { + font-weight: bold; + font-size: 18px; + color: #51504f; + line-height: 1.33; + margin-bottom: 0; + } + + table.docutils td, table.field-list td { + background-color: transparent; + vertical-align: middle + } + + td p:last-child, table.docutils td p:last-child, table.field-list td p:last-child { + margin-bottom: 0 + } + + table.docutils:not(.field-list) tr:nth-child(2n-1) td { + background-color: rgba(112, 112, 112, 0.05); + } + + table.docutils { + border: 1px solid rgba(81, 80, 79, 0.3); + } + + table.docutils td { + border-bottom: 1px solid rgba(81, 80, 79, 0.3); + border-left: 1px solid rgba(81, 80, 79, 0.3); + } + + table.docutils tbody > tr:last-child td { + border-bottom-width: 0 + } + + .wy-table-responsive { + margin-bottom: 24px; + max-width: 100%; + overflow: auto + } + + .wy-table-responsive table { + margin-bottom: 0 !important + } + + .wy-table-responsive table td, .wy-table-responsive table th { + white-space: nowrap + } + + code { + color: #51504f; + font-family: 'Roboto Mono', monospace; + padding: 2px 5px + } + + code big, tt em, code em { + font-size: 100% !important; + line-height: normal + } + + code.literal { + color: #E74C3C + } + + code.xref, a code { + font-weight: bold; + color: #707070; + } + + pre, kbd { + font-family: "Roboto Mono", monospace; + } + + kbd { + background-color: inherit; + color: inherit; + box-shadow: none; + border: none; + font-size: 100%; + } + + a code { + color: #2980B9 + } + + dl { + margin-bottom: 24px + } + + dl dt { + font-weight: bold; + margin-bottom: 12px; + word-break: break-word; + } + + dl p, dl table, dl ul, dl ol { + margin-bottom: 12px !important + } + + dl dd { + margin: 0 0 12px 24px; + line-height: 24px + } + + dl:not(.docutils) { + margin-bottom: 24px + } + + dl:not(.docutils) dt { + font-family: "Roboto Mono", monospace; + display: table; + margin: 6px 0; + font-size: 100%; + line-height: 1.63; + background: #f3fbff; + color: #51504f; + border-top: solid 4px #68d1ff; + padding: 8px 10px; + position: relative; + + @media (max-width: 768px) { + font-size: 10px; + } + } + + dl:not(.docutils) dt:before { + color: #68d1ff + } + + dl:not(.docutils) dt .headerlink { + color: #707070; + font-size: 100% !important + } + + dl:not(.docutils) dt .fn-backref { + color: #0cb6ff; + } + + dl:not(.docutils) dl dt { + margin-bottom: 6px; + border: none; + border-left: solid 8px #a6a6a6; + background: #f8f8f8; + color: #707070 + } + + dl:not(.docutils) dl dt .headerlink { + color: #707070; + font-size: 100% !important + } + + dl:not(.docutils) dt:first-child { + margin-top: 0 + } + + dl:not(.docutils) code { + font-weight: bold + } + + dl:not(.docutils) code.descname, dl:not(.docutils) code.descclassname { + background-color: transparent; + border: none; + padding: 0; + font-size: 100% !important + } + + dl:not(.docutils) code.descname { + font-weight: bold + } + + dl:not(.docutils) .optional { + display: inline-block; + padding: 0 4px; + color: #51504f; + font-weight: bold + } + + dl:not(.docutils) .property { + display: inline-block; + padding-right: 8px + } + + p.rubric { + margin-bottom: 12px; + font-weight: bold + } + + .versionmodified { + font-style: italic + } + + .example-header { + position: relative; + background: #017cee; + padding: 8px 16px; + margin-bottom: 0; + } + + .example-header ~ div[class^='highlight'] { + border-top-left-radius: 0; + border-top-right-radius: 0; + } + + .example-header--with-button { + padding-right: 166px; + @media (max-width: 768px) { + padding-right: 100px + } + } + + .example-header:after { + content: ''; + display: table; + clear: both; + } + + .example-title { + display: block; + padding: 4px; + margin-right: 16px; + color: white; + overflow-x: auto; + + @media (max-width: 768px) { + overflow-wrap: initial; + font-size: 12px; + } + } + + .example-header-button { + top: 8px; + right: 16px; + position: absolute; + } + + .example-header + .highlight-python { + margin-top: 0 !important; + } + + .viewcode-button { + display: inline-block; + padding: 8px 16px; + border: 0; + margin: 0; + color: white; + font-weight: bold; + line-height: 1; + text-decoration: underline; + text-overflow: ellipsis; + overflow: hidden; + text-transform: lowercase; + vertical-align: middle; + white-space: nowrap; + + @media (max-width: 768px) { + font-size: 12px; + padding: 7px 0; + } + } + + .viewcode-button:visited { + color: #404040; + } + + .viewcode-button:hover, .viewcode-button:focus { + color: #404040; + } + + .section { + @media (min-width: 1024px) { + &::before { + display: block; + content: " "; + margin-top: -83px; + height: 83px; + visibility: hidden; + } + } + } +} diff --git a/landing-pages/site/assets/scss/_typography.scss b/landing-pages/site/assets/scss/_typography.scss index 88c99b4d72a..c37efe7484c 100644 --- a/landing-pages/site/assets/scss/_typography.scss +++ b/landing-pages/site/assets/scss/_typography.scss @@ -52,6 +52,7 @@ $bodytext-styles: ( "font-weight": 400, "sizes": ( "medium": ("size": 16px, "line-height": 1.63), + "mobile": ("size": 14px, "line-height": 1.57), "small": ("size": 12px, "line-height": 1.33), "xsmall": ("size": 10px, "line-height": 2.6) ) diff --git a/landing-pages/site/assets/scss/main-custom.scss b/landing-pages/site/assets/scss/main-custom.scss index f3c13568412..8a1ed45fec1 100644 --- a/landing-pages/site/assets/scss/main-custom.scss +++ b/landing-pages/site/assets/scss/main-custom.scss @@ -19,7 +19,7 @@ @import url('https://fonts.googleapis.com/css?family=Rubik:500&display=swap'); @import url('https://fonts.googleapis.com/css?family=Roboto:400,400i,500,700&display=swap'); -@import url('https://fonts.googleapis.com/css?family=Roboto+Mono&display=swap'); +@import url('https://fonts.googleapis.com/css?family=Roboto+Mono:400,700&display=swap'); @import "typography"; @import "accordion"; @@ -43,5 +43,9 @@ @import "footer"; @import "navbar"; @import "header"; +@import "roadmap"; @import "search"; @import "rating"; +@import "rst-content"; +@import "pygments"; +@import "content-drawer"; diff --git a/landing-pages/site/content/en/roadmap/Concepts/_index.md b/landing-pages/site/content/en/roadmap/Concepts/_index.md new file mode 100644 index 00000000000..861a457befc --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Concepts/_index.md @@ -0,0 +1,15 @@ +--- +title: "Concepts" +linkTitle: "Concepts" +weight: 4 +description: > + What does your user need to understand about your project in order to use it - or potentially contribute to it? +--- + +{{% pageinfo %}} +This is a placeholder page that shows you how to use this template site. +{{% /pageinfo %}} + +For many projects, users may not need much information beyond the information in the [Overview](/docs/overview/), so this section is **optional**. However if there are areas where your users will need a more detailed understanding of a given term or feature in order to do anything useful with your project (or to not make mistakes when using it) put that information in this section. For example, you may want to add some conceptual pages if you have a large project with many components and a complex architecture. + +Remember to focus on what the user needs to know, not just what you think is interesting about your project! If they don’t need to understand your original design decisions to use or contribute to the project, don’t put them in, or include your design docs in your repo and link to them. Similarly, most users will probably need to know more about how features work when in use rather than how they are implemented. Consider a separate architecture page for more detailed implementation and system design information that potential project contributors can consult. diff --git a/landing-pages/site/content/en/roadmap/Contribution guidelines/_index.md b/landing-pages/site/content/en/roadmap/Contribution guidelines/_index.md new file mode 100644 index 00000000000..0333e3caecf --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Contribution guidelines/_index.md @@ -0,0 +1,79 @@ +--- +title: "Contribution Guidelines" +linkTitle: "Contribution Guidelines" +weight: 10 +description: > + How to contribute to the docs +--- + +{{% pageinfo %}} +These basic sample guidelines assume that your Docsy site is deployed using Netlify and your files are stored in GitHub. You can use the guidelines "as is" or adapt them with your own instructions: for example, other deployment options, information about your doc project's file structure, project-specific review guidelines, versioning guidelines, or any other information your users might find useful when updating your site. [Kubeflow](https://github.com/kubeflow/website/blob/master/README.md) has a great example. + +Don't forget to link to your own doc repo rather than our example site! Also make sure users can find these guidelines from your doc repo README: either add them there and link to them from this page, add them here and link to them from the README, or include them in both locations. +{{% /pageinfo %}} + +We use [Hugo](https://gohugo.io/) to format and generate our website, the +[Docsy](https://github.com/google/docsy) theme for styling and site structure, +and [Netlify](https://www.netlify.com/) to manage the deployment of the site. +Hugo is an open-source static site generator that provides us with templates, +content organisation in a standard directory structure, and a website generation +engine. You write the pages in Markdown (or HTML if you want), and Hugo wraps them up into a website. + +All submissions, including submissions by project members, require review. We +use GitHub pull requests for this purpose. Consult +[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more +information on using pull requests. + +## Quick start with Netlify + +Here's a quick guide to updating the docs. It assumes you're familiar with the +GitHub workflow and you're happy to use the automated preview of your doc +updates: + +1. Fork the [Goldydocs repo](https://github.com/google/docsy-example) on GitHub. +1. Make your changes and send a pull request (PR). +1. If you're not yet ready for a review, add "WIP" to the PR name to indicate + it's a work in progress. (**Don't** add the Hugo property + "draft = true" to the page front matter, because that prevents the + auto-deployment of the content preview described in the next point.) +1. Wait for the automated PR workflow to do some checks. When it's ready, + you should see a comment like this: **deploy/netlify — Deploy preview ready!** +1. Click **Details** to the right of "Deploy preview ready" to see a preview + of your updates. +1. Continue updating your doc and pushing your changes until you're happy with + the content. +1. When you're ready for a review, add a comment to the PR, and remove any + "WIP" markers. + +## Updating a single page + +If you've just spotted something you'd like to change while using the docs, Docsy has a shortcut for you: + +1. Click **Edit this page** in the top right hand corner of the page. +1. If you don't already have an up to date fork of the project repo, you are prompted to get one - click **Fork this repository and propose changes** or **Update your Fork** to get an up to date version of the project to edit. The appropriate page in your fork is displayed in edit mode. +1. Follow the rest of the [Quick start with Netlify](#quick-start-with-netlify) process above to make, preview, and propose your changes. + +## Previewing your changes locally + +If you want to run your own local Hugo server to preview your changes as you work: + +1. Follow the instructions in [Getting started](/docs/getting-started) to install Hugo and any other tools you need. You'll need at least **Hugo version 0.45** (we recommend using the most recent available version), and it must be the **extended** version, which supports SCSS. +1. Fork the [Goldydocs repo](https://github.com/google/docsy-example) repo into your own project, then create a local copy using `git clone`. Don’t forget to use `--recurse-submodules` or you won’t pull down some of the code you need to generate a working site. + + ``` + git clone --recurse-submodules --depth 1 https://github.com/google/docsy-example.git + ``` + +1. Run `hugo server` in the site root directory. By default your site will be available at http://localhost:1313/. Now that you're serving your site locally, Hugo will watch for changes to the content and automatically refresh your site. +1. Continue with the usual GitHub workflow to edit files, commit them, push the + changes up to your fork, and create a pull request. + +## Creating an issue + +If you've found a problem in the docs, but you're not sure how to fix it yourself, please create an issue in the [Goldydocs repo](https://github.com/google/docsy-example/issues). You can also create an issue about a specific page by clicking the **Create Issue** button in the top right hand corner of the page. + +## Useful resources + +* [Docsy user guide](wherever it goes): All about Docsy, including how it manages navigation, look and feel, and multi-language support. +* [Hugo documentation](https://gohugo.io/documentation/): Comprehensive reference for Hugo. +* [Github Hello World!](https://guides.github.com/activities/hello-world/): A basic introduction to GitHub concepts and workflow. diff --git a/landing-pages/site/content/en/roadmap/Getting started/_index.md b/landing-pages/site/content/en/roadmap/Getting started/_index.md new file mode 100644 index 00000000000..c35a97f6071 --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Getting started/_index.md @@ -0,0 +1,35 @@ +--- +title: "Getting Started" +linkTitle: "Getting Started" +weight: 2 +description: > + What does your user need to know to try your project? +--- + +{{% pageinfo %}} +This is a placeholder page that shows you how to use this template site. +{{% /pageinfo %}} + +Information in this section helps your user try your project themselves. + +* What do your users need to do to start using your project? This could include downloading/installation instructions, including any prerequisites or system requirements. + +* Introductory “Hello World” example, if appropriate. More complex tutorials should live in the Tutorials section. + +Consider using the headings below for your getting started page. You can delete any that are not applicable to your project. + +## Prerequisites + +Are there any system requirements for using your project? What languages are supported (if any)? Do users need to already have any software or tools installed? + +## Installation + +Where can your user find your project code? How can they install it (binaries, installable package, build from source)? Are there multiple options/versions they can install and how should they choose the right one for them? + +## Setup + +Is there any initial setup users need to do after installation to try your project? + +## Try it out! + +Can your users test their installation, for example by running a commmand or deploying a Hello World example? diff --git a/landing-pages/site/content/en/roadmap/Getting started/example-page.md b/landing-pages/site/content/en/roadmap/Getting started/example-page.md new file mode 100644 index 00000000000..99da343ec0b --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Getting started/example-page.md @@ -0,0 +1,239 @@ +--- +title: "Example Page" +linkTitle: "Example Page" +date: 2017-01-05 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Overview/_index.html b/landing-pages/site/content/en/roadmap/Overview/_index.html new file mode 100644 index 00000000000..7d4bf3e9dbb --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Overview/_index.html @@ -0,0 +1,868 @@ +--- +title: "Overview" +linkTitle: "Overview" +weight: 1 +description: > + Here's where your user finds out if your project is for them. +--- + +
+ +
+
+ +
+
+
+

1 Playground

+ +
+

1.1 Inline markup

+

text - emphasis (italics), + text - emphasis (boldface), and + text - code samples.

+
+
+

1.2 List and quotes blocks

+
    +
  • This is a bulleted list.

  • +
  • It has two items, the second + item uses two lines.

  • +
+
    +
  1. This is a numbered list.

  2. +
  3. It has two items too.

  4. +
  5. This is a numbered list.

  6. +
  7. It has two items too.

  8. +
+
    +
  • this is

  • +
  • a list

    +
      +
    • with a nested list

    • +
    • and some subitems

    • +
    +
  • +
  • and here the parent list continues

  • +
+
+
+

1.3 Definitions list

+
+
term (up to a line of text)

Definition of the term, which must be indented

+

and can even consist of multiple paragraphs

+
+
next term

Description.

+
+
+
+
+

1.4 Parameter list

+
+
Date
+

2001-08-16

+
+
Version
+

1

+
+
Authors
+
    +
  • Me

  • +
  • Myself

  • +
  • I

  • +
+
+
Indentation
+

Since the field marker may be quite long, the second + and subsequent lines of the field body do not have to line up + with the first line, but they must be indented relative to the + field name marker, and they must line up with each other.

+
+
Parameter i
+

integer

+
+
+
+
+

1.5 Option list

+
+
-a
+

Output all.

+
+
-b
+

Output both (this description is + quite long).

+
+
-c arg
+

Output just arg.

+
+
--long
+

Output all day long.

+
+
-p
+

This option has two paragraphs in the description. + This is the first.

+

This is the second. Blank lines may be omitted between + options (as above) or left in (as here and below).

+
+
--very-long-option
+

A VMS-style option. Note the adjustment for + the required two spaces.

+
+
--an-even-longer-option
+

The description can also start on the next line.

+
+
-2, --two
+

This option has two variants.

+
+
-f FILE, --file=FILE
+

These two options are synonyms; both have + arguments.

+
+
/V
+

A VMS/DOS-style option.

+
+
+
+
+

1.6 Literal blocks

+

This is a typical paragraph. An indented literal block follows.

+
for a in [5,4,3,2,1]:   # this is program code, shown as-is
+    print a
+print "it's..."
+# a literal block continues until the indentation ends
+
+
+

This text has returned to the indentation of the first paragraph, + is outside of the literal block, and is therefore treated as an + ordinary paragraph.

+
+
+

1.7 Quoted literal blocks

+

John Doe wrote:

+
>> Great idea!
+>
+> Why didn't I think of that?
+
+
+

You just did! ;-)

+
+
+

1.8 Doc test blocks

+

This is an ordinary paragraph.

+
>>> print 'this is a Doctest block'
+this is a Doctest block
+
+
+

The following is a literal block:

+
>>> This is not recognized as a doctest block by
+reStructuredText.  It *will* be recognized by the doctest
+module, though!
+
+
+
+
+

1.9 Grid tables

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Service name

Guide

Hook

Operators

Sensors

Atlassian Jira

airflow.contrib.hooks.jira_hook

airflow.contrib.operators.jira_operator

airflow.contrib.sensors.jira_sensor

Databricks

airflow.contrib.hooks.databricks_hook

airflow.contrib.operators.databricks_operator

Datadog

airflow.contrib.hooks.datadog_hook

airflow.contrib.sensors.datadog_sensor

Dingding

How to use

airflow.contrib.hooks.dingding_hook

airflow.contrib.operators.dingding_operator

Discord

airflow.contrib.hooks.discord_webhook_hook

airflow.contrib.operators.discord_webhook_operator

Google Campaign Manager

How to use

airflow.providers.google.marketing_platform.hooks.campaign_manager

airflow.providers.google.marketing_platform.operators.campaign_manager

airflow.providers.google.marketing_platform.sensors.campaign_manager

Google Display&Video 360

How to use

airflow.providers.google.marketing_platform.hooks.display_video

airflow.providers.google.marketing_platform.operators.display_video

airflow.providers.google.marketing_platform.sensors.display_video

Google Drive

airflow.contrib.hooks.gdrive_hook

Google Search Ads 360

How to use

airflow.providers.google.marketing_platform.hooks.search_ads

airflow.providers.google.marketing_platform.operators.search_ads

airflow.providers.google.marketing_platform.sensors.search_ads

Google Spreadsheet

airflow.gcp.hooks.gsheets

IBM Cloudant

airflow.contrib.hooks.cloudant_hook

Jenkins

airflow.contrib.hooks.jenkins_hook

airflow.contrib.operators.jenkins_job_trigger_operator

Opsgenie

airflow.contrib.hooks.opsgenie_alert_hook

airflow.contrib.operators.opsgenie_alert_operator

Qubole

airflow.contrib.hooks.qubole_hook, + airflow.contrib.hooks.qubole_check_hook

airflow.contrib.operators.qubole_operator, + airflow.contrib.operators.qubole_check_operator

airflow.contrib.sensors.qubole_sensor

Salesforce

airflow.contrib.hooks.salesforce_hook

Segment

airflow.contrib.hooks.segment_hook

airflow.contrib.operators.segment_track_event_operator

Slack

airflow.hooks.slack_hook, + airflow.contrib.hooks.slack_webhook_hook

airflow.operators.slack_operator, + airflow.contrib.operators.slack_webhook_operator

Snowflake

airflow.contrib.hooks.snowflake_hook

airflow.contrib.operators.snowflake_operator

Vertica

airflow.contrib.hooks.vertica_hook

airflow.contrib.operators.vertica_operator

Zendesk

airflow.hooks.zendesk_hook

+
+
+

1.10 Footnotes

+

1 is a reference to footnote 1, and 3 is a reference to + footnote 2.

+
+
1
+

This is footnote 1.

+
+
3
+

This is footnote 2.

+
+
4
+

This is footnote 3.

+
+
+

4 is a reference to footnote 3.

+

2 will be “2” (manually numbered), + 6 will be “3” (anonymous auto-numbered), and + 5 will be “1” (labeled auto-numbered).

+
+
2
+

This footnote is labeled manually, so its number is fixed.

+
+
5
+

This autonumber-labeled footnote will be labeled “1”. + It is the first auto-numbered footnote and no other footnote + with label “1” exists. The order of the footnotes is used to + determine numbering, not the order of the footnote references.

+
+
6
+

This footnote will be labeled “3”. It is the second + auto-numbered footnote, but footnote label “2” is already used.

+
+
+

Here is a citation reference: [CIT2002].

+
+
CIT2002
+

This is the citation. It’s just like a footnote, + except the label is textual.

+
+
+

The biohazard symbol must be used on containers used to + dispose of medical waste.

+

Para.

+
+

Para.

+
+
+

1.11 Admonitions

+
+

Attention

+

Beware killer rabbits!

+
+
+

Caution

+

Beware killer rabbits!

+
+
+

Danger

+

Beware killer rabbits!

+
+
+

Error

+

Beware killer rabbits!

+
+
+

Hint

+

Beware killer rabbits!

+
+
+

Important

+

Beware killer rabbits!

+
+
+

Note

+

Beware killer rabbits!

+
+
+

Tip

+

Beware killer rabbits!

+
+
+

Warning

+

Beware killer rabbits!

+
+
+

Note

+

This is a note admonition. + This is the second line of the first paragraph.

+
    +
  • The note contains all indented body elements + following.

  • +
  • It includes this bullet list.

  • +
+
+
+

New in version 2.5: The spam parameter.

+
+
+

Changed in version 2.5: The spam parameter.

+
+
+

Deprecated since version 2.5: The spam parameter.

+
+
+

See also

+
+
Module zipfile

Documentation of the zipfile standard module.

+
+
GNU tar manual, Basic Tar Format

Documentation for tar archive files, including GNU tar extensions.

+
+
+
+
+

See also

+

modules zipfile, tarfile

+
+

AAAAAA

+
+
environment

A structure where information about all documents under the root is + saved, and used for cross-referencing. The environment is pickled + after the parsing stage, so that successive runs only need to read + and parse new and changed documents.

+
+
source directory

The directory which, including its subdirectories, contains all + source files for one Sphinx project.

+
+
+
+
+

1.12 Figure

+
+ map to buried treasure +

This is the caption of the figure (a simple paragraph).

+
+

The legend consists of all elements after the caption. In this + case, the legend consists of this paragraph and the following + table:

+
+ + + + + + + + + + + + + + + + + + + + +

Symbol

Meaning

tent.png +

Campground

waves.png +

Lake

peak.png +

Mountain

+
+
+
+
+

1.13 Topic

+
+

Topic Title

+

Subsequent indented lines comprise + the body of the topic, and are + interpreted as body elements.

+
+
+
+

1.15 Code

+
def my_function():
+    "just a test"
+    print 8/2
+
+
+
+
+

1.16 rubric

+

I like kitty

+
+
+

1.17 Epigraph

+
+

No matter where you go, there you are.

+

—Buckaroo Banzai

+
+
+
+

1.18 compound

+
+

The ‘rm’ command is very dangerous. If you are logged + in as root and enter

+
cd /
+rm -rf *
+
+
+

you will erase the entire contents of your file system.

+
+
+ + + +
+

1.22 Replacement Text

+

Yes, reStructuredText is a long word, so I can’t blame anyone for wanting to + abbreviate it.

+

I recommend you try Python, the best language around.

+
+
+

1.23 Unicode Character Codes

+

Copyright © 2003, BogusMegaCorp™—all rights reserved.

+
+
+

1.24 Date

+

Today’s date is 2019-09-16.

+

This document was generated on 2019-09-16 at 00:46.

+
+
+

1.25 Roles

+

envvar

+

… is installed in /usr/lib/python2.x/site-packages

+

The function datetime.datetime.today() does a similar thing.

+

The function datetime.datetime does a similar thing.

+

The function datetime.INVALID does a similar thing.

+
+
+

1.26 Class description

+

https://airflow.readthedocs.io/en/latest/_api/airflow/contrib/hooks/gcp_api_base_hook/index.html

+
+
+ class GoogleCloudBaseHookDDD(gcp_conn_id:str='google_cloud_default', delegate_to:str=None)
+

Bases: airflow.hooks.base_hook.BaseHook

+

A base hook for Google cloud-related hooks. Google cloud has a shared REST + API client that is built in the same way no matter which service you use. + This class helps construct and authorize the credentials needed to then + call googleapiclient.discovery.build() to actually discover and build a client + for a Google cloud service.

+

The class also contains some miscellaneous helper functions.

+

All hook derived from this base hook use the ‘Google Cloud Platform’ connection + type. Three ways of authentication are supported:

+

Default credentials: Only the ‘Project Id’ is required. You’ll need to + have set up default credentials, such as by the + GOOGLE_APPLICATION_DEFAULT environment variable or from the metadata + server on Google Compute Engine.

+

JSON key file: Specify ‘Project Id’, ‘Keyfile Path’ and ‘Scope’.

+

Legacy P12 key files are not supported.

+

JSON data provided in the UI: Specify ‘Keyfile JSON’.

+
+
Parameters
+
    +
  • gcp_conn_id (str) – The connection ID to use when fetching connection info.

  • +
  • delegate_to (str) – The account to impersonate, if any. + For this to work, the service account making the request must have + domain-wide delegation enabled.

  • +
+
+
+
+
+ send_message(sender, recipient, message_body[, priority=1])
+

Send a message to a recipient

+
+
Parameters
+
    +
  • sender (str) – The person sending the message

  • +
  • recipient (str) – The recipient of the message

  • +
  • message_body (str) – The body of the message

  • +
  • priority (integer or None) – The priority of the message, can be a number 1-5

  • +
+
+
Returns
+

the message id

+
+
Return type
+

int

+
+
Raises
+
    +
  • ValueError – if the message_body exceeds 160 characters

  • +
  • TypeError – if the message_body is not a basestring

  • +
+
+
+
+ +
+
+ static send_message()
+

Send a message to a recipient

+
+ +
+
+ static send_message()
+

Send a message to a recipient

+
+ +
+
+ classmethod send_message()
+

Send a message to a recipient

+
+ +
+
+ @send_message
+

Send a message to a recipient

+
+ +
+
+ @send_message
+

Send a message to a recipient

+
+ +
+
+ project_id
+

Returns project id.

+
+
Returns
+

id of the project

+
+
Return type
+

str

+
+
+
+ +
+
+ num_retries
+

Returns num_retries from Connection.

+
+
Returns
+

the number of times each API request should be retried

+
+
Return type
+

int

+
+
+
+ +
+
+ client_info
+

Return client information used to generate a user-agent for API calls.

+

It allows for better errors tracking.

+

This object is only used by the google-cloud-* libraries that are built specifically for + the Google Cloud Platform. It is not supported by The Google APIs Python Client that use Discovery + based APIs.

+
+ +
+
+ scopes
+

Return OAuth 2.0 scopes.

+
+
Returns
+

Returns the scope defined in the connection configuration, or the default scope

+
+
Return type
+

Sequence[str]

+
+
+
+ +
+
+ _get_credentials_and_project_id(self)
+

Returns the Credentials object for Google API and the associated project_id

+
+ +
+
+ _get_credentials(self)
+

Returns the Credentials object for Google API

+
+ +
+
+ _get_access_token(self)
+

Returns a valid access token from Google API Credentials

+
+ +
+
+ _authorize(self)
+

Returns an authorized HTTP object to be used to build a Google cloud + service hook connection.

+
+ +
+
+ _get_field(self, f:str, default:Any=None)
+

Fetches a field from extras, and returns it. This is some Airflow + magic. The google_cloud_platform hook type adds custom UI elements + to the hook page, which allow admins to specify service_account, + key_path, etc. They get formatted as shown below.

+
+ +
+
+ static catch_http_exception(func:Callable[..., RT])
+

Function decorator that intercepts HTTP Errors and raises AirflowException + with more informative message.

+
+ +
+
+ static fallback_to_default_project_id(func:Callable[..., RT])
+

Decorator that provides fallback for Google Cloud Platform project id. If + the project is None it will be replaced with the project_id from the + service account the Hook is authenticated with. Project id can be specified + either via project_id kwarg or via first parameter in positional args.

+
+
Parameters
+

func – function to wrap

+
+
Returns
+

result of the function call

+
+
+
+ +
+
+ static provide_gcp_credential_file(func:Callable[..., RT])
+

Function decorator that provides a GOOGLE_APPLICATION_CREDENTIALS + environment variable, pointing to file path of a JSON file of service + account key.

+
+ +
+ +
+
+

1.27 exampleinclude

+
+

airflow/gcp/example_dags/example_bigquery_dts.pyView Source

+

+# In the case of Airflow, the customer needs to create a transfer
+# config with the automatic scheduling disabled and then trigger
+# a transfer run using a specialized Airflow operator
+schedule_options = {"disable_auto_scheduling": True}
+
+PARAMS = {
+    "field_delimiter": ",",
+    "max_bad_records": "0",
+    "skip_leading_rows": "1",
+    "data_path_template": BUCKET_URI,
+    "destination_table_name_template": GCP_DTS_BQ_TABLE,
+    "file_format": "CSV",
+}
+
+TRANSFER_CONFIG = ParseDict(
+    {
+        "destination_dataset_id": GCP_DTS_BQ_DATASET,
+        "display_name": "GCS Test Config",
+        "data_source_id": "google_cloud_storage",
+        "schedule_options": schedule_options,
+        "params": PARAMS,
+    },
+    TransferConfig(),
+)
+
+
+
+
+
+
+ + +
+ +
+ +
diff --git a/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/_index.md b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/_index.md new file mode 100644 index 00000000000..9045da54932 --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/_index.md @@ -0,0 +1,15 @@ + +--- +title: "Working with Ponycopters" +linkTitle: "Working with Ponycopters" +date: 2017-01-05 +description: > + A short lead descripton about this section page. Text here can also be **bold** or _italic_ and can even be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + + +This is the section landing page. diff --git a/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/configuring-ponycopters.md b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/configuring-ponycopters.md new file mode 100644 index 00000000000..f70afc5caa1 --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/configuring-ponycopters.md @@ -0,0 +1,239 @@ +--- +title: "Configuring Ponycopters" +linkTitle: "Configuring Ponycopters" +date: 2017-01-05 +weight: 2 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/launching-ponycopters.md b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/launching-ponycopters.md new file mode 100644 index 00000000000..9a2a1cb74f4 --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/Ponycopters/launching-ponycopters.md @@ -0,0 +1,239 @@ +--- +title: "Launching Ponycopters" +linkTitle: "Launching Ponycopters" +date: 2017-01-05 +weight: 3 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tasks/_index.md b/landing-pages/site/content/en/roadmap/Tasks/_index.md new file mode 100644 index 00000000000..46f5ca6db9a --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/_index.md @@ -0,0 +1,24 @@ + +--- +title: "Core Tasks" +linkTitle: "Core Tasks" +weight: 6 +date: 2017-01-05 +description: > + What can your user do with your project? +--- + +{{% pageinfo %}} +This is a placeholder page that shows you how to use this template site. +{{% /pageinfo %}} + +Think about your project’s features and use cases. Use these to choose your core tasks. Each granular use case (enable x, configure y) should have a corresponding tasks page or tasks page section. Users should be able to quickly refer to your core tasks when they need to find out how to do one specific thing, rather than having to look for the instructions in a bigger tutorial or example. Think of your tasks pages as a cookbook with different procedures your users can combine to create something more substantial. + +You can give each task a page, or you can group related tasks together in a page, such as tasks related to a particular feature. As well as grouping related tasks in single pages, you can also group task pages in nested folders with an index page as an overview, as seen in this example site. Or if you have a small docset like the [Docsy User Guide](https://docsy.dev/docs/) with no Tutorials or Concepts pages, consider adding your feature-specific pages at the top level of your docs rather than in a Tasks section. + +Each task should give the user + +* The prerequisites for this task, if any (this can be specified at the top of a multi-task page if they're the same for all the page's tasks. "All these tasks assume that you understand....and that you have already...."). +* What this task accomplishes. +* Instructions for the task. If it involves editing a file, running a command, or writing code, provide code-formatted example snippets to show the user what to do! If there are multiple steps, provide them as a numbered list. +* If appropriate, links to related concept, tutorial, or example pages. diff --git a/landing-pages/site/content/en/roadmap/Tasks/beds.md b/landing-pages/site/content/en/roadmap/Tasks/beds.md new file mode 100644 index 00000000000..78331aea19a --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/beds.md @@ -0,0 +1,239 @@ +--- +title: "Bed and Chair Metrics" +date: 2017-01-05 +weight: 2 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tasks/porridge.md b/landing-pages/site/content/en/roadmap/Tasks/porridge.md new file mode 100644 index 00000000000..6cbdfc98cda --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/porridge.md @@ -0,0 +1,239 @@ +--- +title: "Porridge Assessment" +date: 2017-01-05 +weight: 4 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tasks/task.md b/landing-pages/site/content/en/roadmap/Tasks/task.md new file mode 100644 index 00000000000..dfaf2d9a10c --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tasks/task.md @@ -0,0 +1,239 @@ +--- +title: "Another Task" +date: 2017-01-05 +weight: 5 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tutorials/_index.md b/landing-pages/site/content/en/roadmap/Tutorials/_index.md new file mode 100644 index 00000000000..5ed21777e8e --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tutorials/_index.md @@ -0,0 +1,15 @@ + +--- +title: "Tutorials" +linkTitle: "Tutorials" +weight: 8 +date: 2017-01-04 +description: > + Show your user how to work through some end to end examples. +--- + +{{% pageinfo %}} +This is a placeholder page that shows you how to use this template site. +{{% /pageinfo %}} + +Tutorials are **complete worked examples** made up of **multiple tasks** that guide the user through a relatively simple but realistic scenario: building an application that uses some of your project’s features, for example. If you have already created some Examples for your project you can base Tutorials on them. This section is **optional**. However, remember that although you may not need this section at first, having tutorials can be useful to help your users engage with your example code, especially if there are aspects that need more explanation than you can easily provide in code comments. diff --git a/landing-pages/site/content/en/roadmap/Tutorials/multi-bear.md b/landing-pages/site/content/en/roadmap/Tutorials/multi-bear.md new file mode 100644 index 00000000000..6281c0aed2c --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tutorials/multi-bear.md @@ -0,0 +1,238 @@ +--- +title: "Multi-Bear Domicile Setup" +date: 2017-01-05 +weight: 4 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/Tutorials/tutorial2.md b/landing-pages/site/content/en/roadmap/Tutorials/tutorial2.md new file mode 100644 index 00000000000..d81f650eb7c --- /dev/null +++ b/landing-pages/site/content/en/roadmap/Tutorials/tutorial2.md @@ -0,0 +1,238 @@ +--- +title: "Another Tutorial" +date: 2017-01-05 +weight: 5 +description: > + A short lead descripton about this content page. It can be **bold** or _italic_ and can be split over multiple paragraphs. +--- + +{{% pageinfo %}} +This is a placeholder page. Replace it with your own content. +{{% /pageinfo %}} + +Text can be **bold**, _italic_, or ~~strikethrough~~. [Links](https://gohugo.io) should be blue with no underlines (unless hovered over). + +There should be whitespace between paragraphs. Vape migas chillwave sriracha poutine try-hard distillery. Tattooed shabby chic small batch, pabst art party heirloom letterpress air plant pop-up. Sustainable chia skateboard art party banjo cardigan normcore affogato vexillologist quinoa meggings man bun master cleanse shoreditch readymade. Yuccie prism four dollar toast tbh cardigan iPhone, tumblr listicle live-edge VHS. Pug lyft normcore hot chicken biodiesel, actually keffiyeh thundercats photo booth pour-over twee fam food truck microdosing banh mi. Vice activated charcoal raclette unicorn live-edge post-ironic. Heirloom vexillologist coloring book, beard deep v letterpress echo park humblebrag tilde. + +90's four loko seitan photo booth gochujang freegan tumeric listicle fam ugh humblebrag. Bespoke leggings gastropub, biodiesel brunch pug fashion axe meh swag art party neutra deep v chia. Enamel pin fanny pack knausgaard tofu, artisan cronut hammock meditation occupy master cleanse chartreuse lumbersexual. Kombucha kogi viral truffaut synth distillery single-origin coffee ugh slow-carb marfa selfies. Pitchfork schlitz semiotics fanny pack, ugh artisan vegan vaporware hexagon. Polaroid fixie post-ironic venmo wolf ramps **kale chips**. + +> There should be no margin above this first sentence. +> +> Blockquotes should be a lighter gray with a border along the left side in the secondary color. +> +> There should be no margin below this final sentence. + +## First Header 2 + +This is a normal paragraph following a header. Knausgaard kale chips snackwave microdosing cronut copper mug swag synth bitters letterpress glossier **craft beer**. Mumblecore bushwick authentic gochujang vegan chambray meditation jean shorts irony. Viral farm-to-table kale chips, pork belly palo santo distillery activated charcoal aesthetic jianbing air plant woke lomo VHS organic. Tattooed locavore succulents heirloom, small batch sriracha echo park DIY af. Shaman you probably haven't heard of them copper mug, crucifix green juice vape *single-origin coffee* brunch actually. Mustache etsy vexillologist raclette authentic fam. Tousled beard humblebrag asymmetrical. I love turkey, I love my job, I love my friends, I love Chardonnay! + +Deae legum paulatimque terra, non vos mutata tacet: dic. Vocant docuique me plumas fila quin afuerunt copia haec o neque. + +On big screens, paragraphs and headings should not take up the full container width, but we want tables, code blocks and similar to take the full width. + +Scenester tumeric pickled, authentic crucifix post-ironic fam freegan VHS pork belly 8-bit yuccie PBR&B. **I love this life we live in**. + + +## Second Header 2 + +> This is a blockquote following a header. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### Header 3 + +``` +This is a code block following a header. +``` + +Next level leggings before they sold out, PBR&B church-key shaman echo park. Kale chips occupy godard whatever pop-up freegan pork belly selfies. Gastropub Belinda subway tile woke post-ironic seitan. Shabby chic man bun semiotics vape, chia messenger bag plaid cardigan. + +#### Header 4 + +* This is an unordered list following a header. +* This is an unordered list following a header. +* This is an unordered list following a header. + +##### Header 5 + +1. This is an ordered list following a header. +2. This is an ordered list following a header. +3. This is an ordered list following a header. + +###### Header 6 + +| What | Follows | +|-----------|-----------------| +| A table | A header | +| A table | A header | +| A table | A header | + +---------------- + +There's a horizontal rule above and below this. + +---------------- + +Here is an unordered list: + +* Liverpool F.C. +* Chelsea F.C. +* Manchester United F.C. + +And an ordered list: + +1. Michael Brecker +2. Seamus Blake +3. Branford Marsalis + +And an unordered task list: + +- [x] Create a Hugo theme +- [x] Add task lists to it +- [ ] Take a vacation + +And a "mixed" task list: + +- [ ] Pack bags +- ? +- [ ] Travel! + +And a nested list: + +* Jackson 5 + * Michael + * Tito + * Jackie + * Marlon + * Jermaine +* TMNT + * Leonardo + * Michelangelo + * Donatello + * Raphael + +Definition lists can be used with Markdown syntax. Definition headers are bold. + +Name +: Godzilla + +Born +: 1952 + +Birthplace +: Japan + +Color +: Green + + +---------------- + +Tables should have bold headings and alternating shaded rows. + +| Artist | Album | Year | +|-------------------|-----------------|------| +| Michael Jackson | Thriller | 1982 | +| Prince | Purple Rain | 1984 | +| Beastie Boys | License to Ill | 1986 | + +If a table is too wide, it should scroll horizontally. + +| Artist | Album | Year | Label | Awards | Songs | +|-------------------|-----------------|------|-------------|----------|-----------| +| Michael Jackson | Thriller | 1982 | Epic Records | Grammy Award for Album of the Year, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Selling Album, Grammy Award for Best Engineered Album, Non-Classical | Wanna Be Startin' Somethin', Baby Be Mine, The Girl Is Mine, Thriller, Beat It, Billie Jean, Human Nature, P.Y.T. (Pretty Young Thing), The Lady in My Life | +| Prince | Purple Rain | 1984 | Warner Brothers Records | Grammy Award for Best Score Soundtrack for Visual Media, American Music Award for Favorite Pop/Rock Album, American Music Award for Favorite Soul/R&B Album, Brit Award for Best Soundtrack/Cast Recording, Grammy Award for Best Rock Performance by a Duo or Group with Vocal | Let's Go Crazy, Take Me With U, The Beautiful Ones, Computer Blue, Darling Nikki, When Doves Cry, I Would Die 4 U, Baby I'm a Star, Purple Rain | +| Beastie Boys | License to Ill | 1986 | Mercury Records | noawardsbutthistablecelliswide | Rhymin & Stealin, The New Style, She's Crafty, Posse in Effect, Slow Ride, Girls, (You Gotta) Fight for Your Right, No Sleep Till Brooklyn, Paul Revere, Hold It Now, Hit It, Brass Monkey, Slow and Low, Time to Get Ill | + +---------------- + +Code snippets like `var foo = "bar";` can be shown inline. + +Also, `this should vertically align` ~~`with this`~~ ~~and this~~. + +Code can also be shown in a block element. + +``` +foo := "bar"; +bar := "foo"; +``` + +Code can also use syntax highlighting. + +```go +func main() { + input := `var foo = "bar";` + + lexer := lexers.Get("javascript") + iterator, _ := lexer.Tokenise(nil, input) + style := styles.Get("github") + formatter := html.New(html.WithLineNumbers()) + + var buff bytes.Buffer + formatter.Format(&buff, style, iterator) + + fmt.Println(buff.String()) +} +``` + +``` +Long, single-line code blocks should not wrap. They should horizontally scroll if they are too long. This line should be long enough to demonstrate this. +``` + +Inline code inside table cells should still be distinguishable. + +| Language | Code | +|-------------|--------------------| +| Javascript | `var foo = "bar";` | +| Ruby | `foo = "bar"{` | + +---------------- + +Small images should be shown at their actual size. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/240px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +Large images should always scale down and fit in the content container. + +![](https://upload.wikimedia.org/wikipedia/commons/thumb/9/9e/Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg/1024px-Picea_abies_shoot_with_buds%2C_Sogndal%2C_Norway.jpg) + +_The photo above of the Spruce Picea abies shoot with foliage buds: Bjørn Erik Pedersen, CC-BY-SA._ + + +## Components + +### Alerts + +{{< alert >}}This is an alert.{{< /alert >}} +{{< alert title="Note" >}}This is an alert with a title.{{< /alert >}} +{{% alert title="Note" %}}This is an alert with a title and **Markdown**.{{% /alert %}} +{{< alert color="success" >}}This is a successful alert.{{< /alert >}} +{{< alert color="warning" >}}This is a warning.{{< /alert >}} +{{< alert color="warning" title="Warning" >}}This is a warning with a title.{{< /alert >}} + + +## Another Heading + +Add some sections here to see how the ToC looks like. Bacon ipsum dolor sit amet t-bone doner shank drumstick, pork belly porchetta chuck sausage brisket ham hock rump pig. Chuck kielbasa leberkas, pork bresaola ham hock filet mignon cow shoulder short ribs biltong. + +### This Document + +Inguina genus: Anaphen post: lingua violente voce suae meus aetate diversi. Orbis unam nec flammaeque status deam Silenum erat et a ferrea. Excitus rigidum ait: vestro et Herculis convicia: nitidae deseruit coniuge Proteaque adiciam *eripitur*? Sitim noceat signa *probat quidem*. Sua longis *fugatis* quidem genae. + + +### Pixel Count + +Tilde photo booth wayfarers cliche lomo intelligentsia man braid kombucha vaporware farm-to-table mixtape portland. PBR&B pickled cornhole ugh try-hard ethical subway tile. Fixie paleo intelligentsia pabst. Ennui waistcoat vinyl gochujang. Poutine salvia authentic affogato, chambray lumbersexual shabby chic. + +### Contact Info + +Plaid hell of cred microdosing, succulents tilde pour-over. Offal shabby chic 3 wolf moon blue bottle raw denim normcore poutine pork belly. + + +### External Links + +Stumptown PBR&B keytar plaid street art, forage XOXO pitchfork selvage affogato green juice listicle pickled everyday carry hashtag. Organic sustainable letterpress sartorial scenester intelligentsia swag bushwick. Put a bird on it stumptown neutra locavore. IPhone typewriter messenger bag narwhal. Ennui cold-pressed seitan flannel keytar, single-origin coffee adaptogen occupy yuccie williamsburg chillwave shoreditch forage waistcoat. + + + +``` +This is the final element on the page and there should be no margin below this. +``` diff --git a/landing-pages/site/content/en/roadmap/_index.md b/landing-pages/site/content/en/roadmap/_index.md new file mode 100644 index 00000000000..f451d7fe804 --- /dev/null +++ b/landing-pages/site/content/en/roadmap/_index.md @@ -0,0 +1,77 @@ +--- +title: "Overview" +linkTitle: "Roadmap" +menu: + main: + weight: 15 +--- + +## Primary Heading A + +One thing to wrap your head around (it may not be very intuitive for everyone at first) is that this Airflow Python +script is really just a configuration file specifying the DAG’s structure as code. The actual tasks defined here will +run in a different context from the context of this script. Different tasks run on different workers at different +points in time, which means that this script cannot be used to cross communicate between tasks. Note that for +this purpose we have a more advanced feature called XCom. + +People sometimes think of the DAG definition file as a place where they can do some actual data processing - +that is not the case at all! The script’s purpose is to define a DAG object. It needs to evaluate quickly (seconds, +not minutes) since the scheduler will execute it periodically to reflect the changes if any. + +People sometimes think of the DAG definition file as a place where they can do some actual data processing - that is not the case at all! The script’s purpose is to define a DAG object. It needs to evaluate quickly (seconds, not minutes) since the scheduler will execute it periodically to reflect the changes if any. + +## Primary Heading B + +One thing to wrap your head around (it may not be very intuitive for everyone at first) is that this Airflow Python +script is really just a configuration file specifying the DAG’s structure as code. The actual tasks defined here will +run in a different context from the context of this script. Different tasks run on different workers at different +points in time, which means that this script cannot be used to cross communicate between tasks. Note that for +this purpose we have a more advanced feature called XCom. + +{{< highlight js >}} +// Synchronize user data and set up +var currentUser = new Talk.User({ + id: 79302, // user id + name: "George Looney", // full name + email: "george@looney.net" // for offline email fallback +}); +var session = new Talk.Session({ + appId: "9352938974", // your TalkJS account id + me: currentUser // make George the active user +}); +{{< /highlight >}} + +## Primary Heading C + +One thing to wrap your head around (it may not be very intuitive for everyone at first) is that this Airflow Python +script is really just a configuration file specifying the DAG’s structure as code. The actual tasks defined here will +run in a different context from the context of this script. Different tasks run on different workers at different +points in time, which means that this script cannot be used to cross communicate between tasks. Note that for +this purpose we have a more advanced feature called XCom. + +{{< highlight js >}} +// Synchronize user data and set up +var currentUser = new Talk.User({ + id: 79302, // user id + name: “George Looney”, // full name + email: “george@looney.net” // for offline email fallback +}); +var session = new Talk.Session({ + appId: “9352938974”, // your TalkJS account id + me: currentUser // make George the active user +}); +{{< /highlight >}} + +## Primary Heading D + +One thing to wrap your head around (it may not be very intuitive for everyone at first) is that this Airflow Python +script is really just a configuration file specifying the DAG’s structure as code. The actual tasks defined here will +run in a different context from the context of this script. Different tasks run on different workers at different +points in time, which means that this script cannot be used to cross communicate between tasks. Note that for +this purpose we have a more advanced feature called XCom. + +People sometimes think of the DAG definition file as a place where they can do some actual data processing - +that is not the case at all! The script’s purpose is to define a DAG object. It needs to evaluate quickly (seconds, +not minutes) since the scheduler will execute it periodically to reflect the changes if any. + +People sometimes think of the DAG definition file as a place where they can do some actual data processing - that is not the case at all! The script’s purpose is to define a DAG object. It needs to evaluate quickly (seconds, not minutes) since the scheduler will execute it periodically to reflect the changes if any. diff --git a/landing-pages/site/layouts/_default/baseof.html b/landing-pages/site/layouts/_default/baseof.html index 1dcb2e88882..e91bf3698bb 100644 --- a/landing-pages/site/layouts/_default/baseof.html +++ b/landing-pages/site/layouts/_default/baseof.html @@ -45,11 +45,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/blog/baseof.html b/landing-pages/site/layouts/blog/baseof.html index 0fa1bf01a6f..817539281af 100644 --- a/landing-pages/site/layouts/blog/baseof.html +++ b/landing-pages/site/layouts/blog/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/case-studies/baseof.html b/landing-pages/site/layouts/case-studies/baseof.html index 8add970b9d8..817539281af 100644 --- a/landing-pages/site/layouts/case-studies/baseof.html +++ b/landing-pages/site/layouts/case-studies/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/community/baseof.html b/landing-pages/site/layouts/community/baseof.html index 8add970b9d8..817539281af 100644 --- a/landing-pages/site/layouts/community/baseof.html +++ b/landing-pages/site/layouts/community/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/install/baseof.html b/landing-pages/site/layouts/install/baseof.html index 8add970b9d8..817539281af 100644 --- a/landing-pages/site/layouts/install/baseof.html +++ b/landing-pages/site/layouts/install/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/meetups/baseof.html b/landing-pages/site/layouts/meetups/baseof.html index 8add970b9d8..817539281af 100644 --- a/landing-pages/site/layouts/meetups/baseof.html +++ b/landing-pages/site/layouts/meetups/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/layouts/partials/sidebar-tree.html b/landing-pages/site/layouts/partials/sidebar-tree.html new file mode 100644 index 00000000000..5d8217a12fb --- /dev/null +++ b/landing-pages/site/layouts/partials/sidebar-tree.html @@ -0,0 +1,69 @@ +{{/* + 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. +*/}} + +{{/* We cache this partial for bigger sites and set the active class client side. */}} +
+ +
+{{ define "section-tree-nav-section" }} + {{ $s := .section }} + {{ $p := .page }} + {{ $currentSection := eq $p.CurrentSection $s }} + {{ $active := eq $p.Permalink $s.Permalink }} + {{ $show := or (and (not $p.Site.Params.ui.sidebar_menu_compact) ($p.IsAncestor $s)) ($p.IsDescendant $s) }} + {{ $sid := $s.RelPermalink | anchorize }} + +{{ end }} diff --git a/landing-pages/site/layouts/partials/suggest-change.html b/landing-pages/site/layouts/partials/suggest-change.html new file mode 100644 index 00000000000..01fb0de2e55 --- /dev/null +++ b/landing-pages/site/layouts/partials/suggest-change.html @@ -0,0 +1,25 @@ +{{/* + 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. +*/}} + +
+ {{ $url := printf "https://github.com/apache/airflow-site/edit/aip-11/landing-pages/site/content/%s/%s" $.Site.Language.Lang .Path }} + + {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} + +
diff --git a/landing-pages/site/layouts/roadmap/baseof.html b/landing-pages/site/layouts/roadmap/baseof.html new file mode 100644 index 00000000000..3cb2dda9fd7 --- /dev/null +++ b/landing-pages/site/layouts/roadmap/baseof.html @@ -0,0 +1,77 @@ +{{/* + 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. +*/}} + + + + + {{ partial "head.html" . }} + + +
+ {{ partial "navbar.html" . }} +
+
+
+ + +
+
+
+ {{ partial "sidebar.html" . }} +
+
+
+
+
+
+ {{ partial "sidebar.html" . }} +
+
+ {{ if not .Site.Params.ui.breadcrumb_disable }}{{ partial "breadcrumb.html" . }}{{ end }} + {{ block "main" . }}{{ end }} +
+
+ {{ partial "suggest-change" . }} +
+{{ partialCached "footer.html" . }} +{{ partialCached "scripts.html" . }} + +{{ $script := .Site.Data.webpack.main }} +{{ with $script.js }} + +{{ end }} + diff --git a/landing-pages/site/layouts/roadmap/list.html b/landing-pages/site/layouts/roadmap/list.html new file mode 100644 index 00000000000..c4c194e603c --- /dev/null +++ b/landing-pages/site/layouts/roadmap/list.html @@ -0,0 +1,25 @@ +{{/* + 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. +*/}} + +{{ define "main" }} +
+

{{ .Title }}

+ {{ .Content }} +
+{{ end }} diff --git a/landing-pages/site/layouts/roadmap/single.html b/landing-pages/site/layouts/roadmap/single.html new file mode 100644 index 00000000000..c4c194e603c --- /dev/null +++ b/landing-pages/site/layouts/roadmap/single.html @@ -0,0 +1,25 @@ +{{/* + 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. +*/}} + +{{ define "main" }} +
+

{{ .Title }}

+ {{ .Content }} +
+{{ end }} diff --git a/landing-pages/site/layouts/taxonomy/baseof.html b/landing-pages/site/layouts/taxonomy/baseof.html index 8add970b9d8..817539281af 100644 --- a/landing-pages/site/layouts/taxonomy/baseof.html +++ b/landing-pages/site/layouts/taxonomy/baseof.html @@ -31,11 +31,7 @@
{{ block "main" . }}{{ end }}
-
- - {{ partial "buttons/button-with-icon" (dict "text" "Suggest a change on this page" "class" "button-fixed") }} - -
+ {{ partial "suggest-change" . }} {{ partialCached "footer.html" . }} diff --git a/landing-pages/site/static/icons/sidebar-arrow.svg b/landing-pages/site/static/icons/sidebar-arrow.svg new file mode 100644 index 00000000000..a40a81fd471 --- /dev/null +++ b/landing-pages/site/static/icons/sidebar-arrow.svg @@ -0,0 +1,3 @@ + + + diff --git a/landing-pages/src/index.js b/landing-pages/src/index.js index 82a4b68528e..9a871e75139 100644 --- a/landing-pages/src/index.js +++ b/landing-pages/src/index.js @@ -21,7 +21,10 @@ import {showMore} from "./js/showAllCommiters"; import {handleActiveVideo} from "./js/handleActiveVideo"; import "./js/navbarScroll"; import "./js/drawer"; +import "./js/contentDrawer"; +import "./js/progressTracking"; import "./js/rating"; +import "./js/makeTableResponsive"; if (document.querySelector("#search")) { import(/* webpackChunkName: "search" */ "./js/searchBlogPosts"); diff --git a/landing-pages/src/js/contentDrawer.js b/landing-pages/src/js/contentDrawer.js new file mode 100644 index 00000000000..748ac3b7203 --- /dev/null +++ b/landing-pages/src/js/contentDrawer.js @@ -0,0 +1,38 @@ +/** + * 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. + */ + +const handleContentDrawer = () => { + const drawer = window.document.querySelector("#content-drawer"); + const navbar = window.document.querySelector("#content-navbar"); + const openButton = window.document.querySelector("#content-open-button"); + const closeButton = window.document.querySelector("#content-close-button"); + + if (!(drawer && openButton && closeButton && navbar)) return; + + const toggleDrawer = () => { + drawer.classList.toggle("content-drawer-container--open"); + navbar.classList.toggle("navbar--hidden"); + }; + + openButton.addEventListener("click", toggleDrawer); + closeButton.addEventListener("click", toggleDrawer); + +}; + +handleContentDrawer(); diff --git a/landing-pages/src/js/makeTableResponsive.js b/landing-pages/src/js/makeTableResponsive.js new file mode 100644 index 00000000000..9abd97267e4 --- /dev/null +++ b/landing-pages/src/js/makeTableResponsive.js @@ -0,0 +1,38 @@ +/** + * 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. + */ + +const root = window.document.querySelector(".rst-content"); + +const makeTablesResponsive = () => { + if (!root) return; + + const tables = root.querySelectorAll("table"); + if (!tables || tables.length === 0) return; + + tables.forEach((table) => { + if (!table.parentNode.classList.contains("wy-table-responsive")) { + const responsiveTableWrapper = document.createElement("div"); + responsiveTableWrapper.classList.add("wy-table-responsive"); + table.parentNode.insertBefore(responsiveTableWrapper, table); + responsiveTableWrapper.appendChild(table); + } + }); +}; + +makeTablesResponsive(); diff --git a/landing-pages/src/js/progressTracking.js b/landing-pages/src/js/progressTracking.js new file mode 100644 index 00000000000..d730ed6b3a5 --- /dev/null +++ b/landing-pages/src/js/progressTracking.js @@ -0,0 +1,67 @@ +/** + * 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. + */ + +import throttle from "lodash/debounce"; + +const runProgressTracking = () => { + const sideNavRoot = document.querySelector(".wy-nav-side-toc"); + if (!sideNavRoot) { + return; + } + + const navTocElements = Array.from(sideNavRoot.querySelectorAll("li")); + const navItems = navTocElements.map((element) => { + const hash = element.querySelector("a").hash; + const target = hash.substr(1); + let targetElement; + if (target) { + targetElement = document.querySelector(`#${target}`); + } else { + targetElement = document.body; + } + return {navElement: element, targetElement}; + }); + + const navbarHeight = window.document.querySelector("header > nav").offsetHeight; + + const handleActiveSection = () => { + // The array should be sorted according to the position of the elements on the page + navItems.sort((a, b) => a.targetElement.offsetTop - b.targetElement.offsetTop); + + let currentActiveIndex; + + // If the top of the window is above the first element, select the first element + if (navItems[0].targetElement.offsetTop + navbarHeight > window.scrollY) { + currentActiveIndex = 0; + // If the top of the window is under the last element, select the last element + } else if (navItems[navItems.length - 1].targetElement.offsetTop + navbarHeight < window.scrollY) { + currentActiveIndex = navItems.length - 1; + } else { + // Try to determine the best element + currentActiveIndex = navItems.findIndex((item) => item.targetElement.offsetTop + navbarHeight > window.scrollY) - 1; + } + navItems.forEach((item) => item.navElement.classList.remove("current")); + navItems[currentActiveIndex].navElement.classList.add("current"); + }; + + window.addEventListener("scroll", throttle(handleActiveSection, 10)); + window.addEventListener("resize", throttle(handleActiveSection, 10)); + handleActiveSection(); +}; +runProgressTracking();