Massive rework and beautification
BIN
assets/icons/logo.png
Normal file
|
After Width: | Height: | Size: 279 KiB |
218
assets/scss/_nav.scss
Normal file
|
|
@ -0,0 +1,218 @@
|
||||||
|
//
|
||||||
|
// Main navbar
|
||||||
|
//
|
||||||
|
|
||||||
|
.td-navbar-cover {
|
||||||
|
background: $primary;
|
||||||
|
|
||||||
|
@include media-breakpoint-up(md) {
|
||||||
|
background: transparent !important;
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
text-shadow: 1px 1px 2px $dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
&.navbar-bg-onscroll .nav-link {
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.navbar-bg-onscroll {
|
||||||
|
background: $primary !important;
|
||||||
|
opacity: inherit;
|
||||||
|
}
|
||||||
|
|
||||||
|
.td-navbar {
|
||||||
|
background: #212121;
|
||||||
|
min-height: 4rem;
|
||||||
|
margin: 0;
|
||||||
|
z-index: 32;
|
||||||
|
|
||||||
|
@include media-breakpoint-up(md) {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.navbar-brand {
|
||||||
|
text-transform: none;
|
||||||
|
text-align: middle;
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
display: inline-block;
|
||||||
|
margin-right: -30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
svg {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 10px;
|
||||||
|
height: 30px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
text-transform: none;
|
||||||
|
font-weight: $font-weight-bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.td-search-input {
|
||||||
|
border: none;
|
||||||
|
color: $navbar-dark-color;
|
||||||
|
@include placeholder {
|
||||||
|
color: $navbar-dark-color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown {
|
||||||
|
min-width: 100px;
|
||||||
|
}
|
||||||
|
|
||||||
|
@include media-breakpoint-down(md) {
|
||||||
|
padding-right: .5rem;
|
||||||
|
padding-left: .75rem;
|
||||||
|
|
||||||
|
.td-navbar-nav-scroll {
|
||||||
|
max-width: 100%;
|
||||||
|
height: 2.5rem;
|
||||||
|
margin-top: .25rem;
|
||||||
|
overflow: hidden;
|
||||||
|
font-size: .875rem;
|
||||||
|
|
||||||
|
.nav-link {
|
||||||
|
padding-right: .25rem;
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.navbar-nav {
|
||||||
|
padding-bottom: 2rem;
|
||||||
|
overflow-x: auto;
|
||||||
|
white-space: nowrap;
|
||||||
|
-webkit-overflow-scrolling: touch;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Icons
|
||||||
|
#main_navbar {
|
||||||
|
li i {
|
||||||
|
padding-right: 0.5em;
|
||||||
|
|
||||||
|
&:before {
|
||||||
|
display: inline-block;
|
||||||
|
text-align: center;
|
||||||
|
min-width: 1em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.alert {
|
||||||
|
background-color: inherit;
|
||||||
|
padding:0;
|
||||||
|
color: $secondary;
|
||||||
|
border: 0;
|
||||||
|
font-weight: inherit;
|
||||||
|
|
||||||
|
&:before {
|
||||||
|
display: inline-block;
|
||||||
|
font-style: normal;
|
||||||
|
font-variant: normal;
|
||||||
|
text-rendering: auto;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
font-family: "Font Awesome 5 Free";
|
||||||
|
font-weight: 900;
|
||||||
|
content: "\f0d9";
|
||||||
|
padding-left: 0.5em;
|
||||||
|
padding-right: 0.5em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Foldable sidebar menu
|
||||||
|
nav.foldable-nav {
|
||||||
|
|
||||||
|
&#td-section-nav {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
&#td-section-nav label {
|
||||||
|
margin-bottom: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.td-sidebar-nav__section, .with-child ul {
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ul-1 > li {
|
||||||
|
padding-left: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
ul.foldable {
|
||||||
|
max-height: 0;
|
||||||
|
overflow: hidden;
|
||||||
|
transition: max-height 0.5s cubic-bezier(0, 1, 0, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
input:checked ~ ul.foldable {
|
||||||
|
max-height: 100000vmax;
|
||||||
|
transition: max-height 1s ease-in-out;
|
||||||
|
}
|
||||||
|
|
||||||
|
input[type=checkbox] { display: none; }
|
||||||
|
|
||||||
|
.with-child, .without-child {
|
||||||
|
position: relative;
|
||||||
|
padding-left: 1.5em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ul-1 .with-child > label:before {
|
||||||
|
display: inline-block;
|
||||||
|
font-style: normal;
|
||||||
|
font-variant: normal;
|
||||||
|
text-rendering: auto;
|
||||||
|
-webkit-font-smoothing: antialiased;
|
||||||
|
font-family: "Font Awesome 5 Free"; font-weight: 900; content: "\f0da";
|
||||||
|
position: absolute;
|
||||||
|
left: 0.1em;
|
||||||
|
padding-left: 0.4em;
|
||||||
|
padding-right: 0.4em;
|
||||||
|
font-size: 1em;
|
||||||
|
color: $gray-900;
|
||||||
|
transition: all 0.5s;
|
||||||
|
&:hover{
|
||||||
|
transform: rotate(90deg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.ul-1 .with-child > input:checked ~ label:before {
|
||||||
|
color: $primary;
|
||||||
|
transform: rotate(90deg);
|
||||||
|
transition: transform 0.5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.with-child ul { margin-top: 0.1em; }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (hover: hover) and (pointer: fine) {
|
||||||
|
|
||||||
|
nav.foldable-nav {
|
||||||
|
|
||||||
|
.ul-1 .with-child > label:hover:before {
|
||||||
|
color: $primary;
|
||||||
|
transform: rotate(30deg);
|
||||||
|
transition: transform 0.5s;
|
||||||
|
}
|
||||||
|
|
||||||
|
.ul-1 .with-child > input:checked ~ label:hover:before {
|
||||||
|
color: $primary;
|
||||||
|
transform: rotate(60deg) !important;
|
||||||
|
transition: transform 0.5s;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
65
assets/scss/_sidebar-toc.scss
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
//
|
||||||
|
// Right side toc
|
||||||
|
//
|
||||||
|
.td-sidebar-toc {
|
||||||
|
border-left: 1px solid $border-color;
|
||||||
|
|
||||||
|
@supports (position: sticky) {
|
||||||
|
position: sticky;
|
||||||
|
top: 4rem;
|
||||||
|
height: calc(100vh - 4rem);
|
||||||
|
overflow-y: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
order: 2;
|
||||||
|
padding-top: 0.75rem;
|
||||||
|
padding-bottom: 1.5rem;
|
||||||
|
vertical-align: top;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.td-page-meta {
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
font-weight: $font-weight-medium;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.td-toc {
|
||||||
|
padding-top: 5px;
|
||||||
|
margin-top: 10px;
|
||||||
|
border-top: 1px solid $black;
|
||||||
|
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
font-weight: $font-weight-medium;
|
||||||
|
padding-bottom: .25rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
li {
|
||||||
|
list-style: none;
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
li li {
|
||||||
|
margin-left: 0.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
#TableOfContents {
|
||||||
|
// Hugo's ToC is a mouthful, this can be used to style the top level h2 entries.
|
||||||
|
> ul > li > ul > li > a {}
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: $gray-600;
|
||||||
|
|
||||||
|
&:hover {
|
||||||
|
color: $blue;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ul {
|
||||||
|
padding-left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
2
assets/scss/_styles_project.scss
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
.td-page-meta--child { display: none !important; }
|
||||||
|
.td-page-meta--project-issue { display: none !important; }
|
||||||
|
|
@ -8,7 +8,7 @@ Add styles or override variables from the theme here.
|
||||||
|
|
||||||
body {
|
body {
|
||||||
font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif !important;
|
font-family: "Segoe UI", Frutiger, "Frutiger Linotype", "Dejavu Sans", "Helvetica Neue", Arial, sans-serif !important;
|
||||||
font-weight:300 !important;
|
font-weight:500 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
$display1-weight: 500 !default;
|
$display1-weight: 500 !default;
|
||||||
|
|
@ -34,7 +34,7 @@ ul, ol {
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-brand {
|
.navbar-brand {
|
||||||
color: #048273 !important
|
color: #008489 !important
|
||||||
}
|
}
|
||||||
|
|
||||||
.navbar-bg-onscroll {
|
.navbar-bg-onscroll {
|
||||||
|
|
@ -119,8 +119,8 @@ input[type="search"]::placeholder {
|
||||||
.hero {
|
.hero {
|
||||||
padding: 20px 0px 25px 0px;
|
padding: 20px 0px 25px 0px;
|
||||||
color: white;
|
color: white;
|
||||||
background: rgb(33,39,73);
|
background: rgb(65, 127, 143);
|
||||||
background: linear-gradient(130deg, #473782 50%, #2c2c62 70%);
|
background: linear-gradient(130deg, #4487a1 50%, #0188a3 70%);
|
||||||
margin-left: -15px;
|
margin-left: -15px;
|
||||||
margin-right: -15px;
|
margin-right: -15px;
|
||||||
position: relative;
|
position: relative;
|
||||||
|
|
@ -150,7 +150,7 @@ input[type="search"]::placeholder {
|
||||||
width: 60vw;
|
width: 60vw;
|
||||||
height: 60vw;
|
height: 60vw;
|
||||||
display: block;
|
display: block;
|
||||||
background: linear-gradient(90deg, rgba(42,24,102,1) 59%, rgba(44,44,98,1) 70%);
|
background: linear-gradient(90deg, rgb(0, 129, 155) 59%, rgba(0,145,193,1) 70%);
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: -20vw;
|
left: -20vw;
|
||||||
top: -20vw;
|
top: -20vw;
|
||||||
|
|
@ -163,7 +163,7 @@ input[type="search"]::placeholder {
|
||||||
width: 20vw;
|
width: 20vw;
|
||||||
height: 100vw;
|
height: 100vw;
|
||||||
display: block;
|
display: block;
|
||||||
background: linear-gradient(-74deg, #2c2c62 50%, #3f3479 70%);
|
background: linear-gradient(-74deg, #007e97 50%, #0091c1 70%);
|
||||||
position: absolute;
|
position: absolute;
|
||||||
left: 55vw;
|
left: 55vw;
|
||||||
bottom: -40vw;
|
bottom: -40vw;
|
||||||
|
|
@ -190,11 +190,11 @@ input[type="search"]::placeholder {
|
||||||
// }
|
// }
|
||||||
|
|
||||||
.hero-big {
|
.hero-big {
|
||||||
background: rgb(112, 85, 255);
|
background: rgb(0,145,193);
|
||||||
background: linear-gradient(
|
background: linear-gradient(
|
||||||
140deg,
|
140deg,
|
||||||
rgba(112, 85, 255, 1) 0%,
|
rgba(0,145,193, 1) 0%,
|
||||||
rgba(140, 61, 180, 1) 100%
|
rgba(0,94,113, 1) 100%
|
||||||
);
|
);
|
||||||
padding: 12px 38px;
|
padding: 12px 38px;
|
||||||
border: none;
|
border: none;
|
||||||
|
|
@ -206,14 +206,14 @@ input[type="search"]::placeholder {
|
||||||
align-items: center;
|
align-items: center;
|
||||||
|
|
||||||
font-size: 22px;
|
font-size: 22px;
|
||||||
font-weight: 400;
|
font-weight: 600;
|
||||||
color: white;
|
color: white;
|
||||||
margin: 10px 0px 40px 0px;
|
margin: 10px 0px 40px 0px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.hero-mid {
|
.hero-mid {
|
||||||
background: rgb(112, 85, 255);
|
background: rgb(0,145,193);
|
||||||
background: linear-gradient(140deg,rgba(112, 85, 255, 1) 0%, rgba(140, 61, 180, 1) 100%);
|
background: linear-gradient(140deg,rgba(0,145,193, 1) 0%, rgba(0,94,113, 1) 100%);
|
||||||
padding: 16px 30px;
|
padding: 16px 30px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
border: none;
|
border: none;
|
||||||
|
|
@ -222,7 +222,7 @@ input[type="search"]::placeholder {
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-weight: 400;
|
font-weight: 600;
|
||||||
color: white;
|
color: white;
|
||||||
margin: 30px 0px 10px 0px;
|
margin: 30px 0px 10px 0px;
|
||||||
&:hover {
|
&:hover {
|
||||||
|
|
@ -247,7 +247,7 @@ input[type="search"]::placeholder {
|
||||||
border-bottom: 1px solid transparent;
|
border-bottom: 1px solid transparent;
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #fff !important;
|
color: #fff !important;
|
||||||
border-bottom: 1px solid #E361FD;
|
border-bottom: 1px solid #00b1f7;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -273,7 +273,7 @@ input[type="search"]::placeholder {
|
||||||
|
|
||||||
.section-text {
|
.section-text {
|
||||||
color: #5a5b75;
|
color: #5a5b75;
|
||||||
font-weight: 400;
|
font-weight: 600;
|
||||||
margin: 12px 0px;
|
margin: 12px 0px;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
}
|
}
|
||||||
|
|
@ -441,7 +441,7 @@ input[type="search"]::placeholder {
|
||||||
text-transform: uppercase;
|
text-transform: uppercase;
|
||||||
border-radius: 5px;
|
border-radius: 5px;
|
||||||
color: #5a5b75;
|
color: #5a5b75;
|
||||||
font-weight: 400;
|
font-weight: 600;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -461,20 +461,20 @@ input[type="search"]::placeholder {
|
||||||
background: white;
|
background: white;
|
||||||
padding: 12px 22px;
|
padding: 12px 22px;
|
||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
border: 1px solid #8147d2;
|
border: 1px solid #00b1f7;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
font-size: 18px;
|
font-size: 18px;
|
||||||
font-weight: 400;
|
font-weight: 600;
|
||||||
color: #8147d2;
|
color: #00b1f7;
|
||||||
margin: 30px 0px 10px 0px;
|
margin: 30px 0px 10px 0px;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
background: #7055ff;
|
background: #55d7ff;
|
||||||
background: linear-gradient(140deg, #7055ff 0%, #8c3db4 100%);
|
background: linear-gradient(140deg, #55d7ff 0%, #3d98b4 100%);
|
||||||
color: #fff;
|
color: #fff;
|
||||||
box-shadow: 0 3px 7px #b7b7b7;
|
box-shadow: 0 3px 7px #b7b7b7;
|
||||||
}
|
}
|
||||||
|
|
@ -516,7 +516,7 @@ input[type="search"]::placeholder {
|
||||||
}
|
}
|
||||||
|
|
||||||
.text-highlight {
|
.text-highlight {
|
||||||
color: #8147d2;
|
color: #00b1f7;
|
||||||
}
|
}
|
||||||
|
|
||||||
.community-cards .row {
|
.community-cards .row {
|
||||||
|
|
|
||||||
12
config.toml
|
|
@ -20,7 +20,7 @@ tag = "tags"
|
||||||
|
|
||||||
[params.taxonomy]
|
[params.taxonomy]
|
||||||
# set taxonomyCloud = [] to hide taxonomy clouds
|
# set taxonomyCloud = [] to hide taxonomy clouds
|
||||||
taxonomyCloud = []
|
taxonomyCloud = ["tags", "categories"]
|
||||||
|
|
||||||
# If used, must have same lang as taxonomyCloud
|
# If used, must have same lang as taxonomyCloud
|
||||||
taxonomyCloudTitle = ["Tag Cloud", "Categories", "Authors"]
|
taxonomyCloudTitle = ["Tag Cloud", "Categories", "Authors"]
|
||||||
|
|
@ -74,14 +74,14 @@ id = ""
|
||||||
[languages.en]
|
[languages.en]
|
||||||
description = "Guidelines for when Developing AL for Microsoft Dynamics 365 Business Central"
|
description = "Guidelines for when Developing AL for Microsoft Dynamics 365 Business Central"
|
||||||
languageName = "English"
|
languageName = "English"
|
||||||
title = "alguidelines.dev"
|
title = "alguidelines.dev - Business Central Design Patterns"
|
||||||
# Weight used for sorting.
|
# Weight used for sorting.
|
||||||
weight = 1
|
weight = 1
|
||||||
|
|
||||||
# Everything below this are Site Params
|
# Everything below this are Site Params
|
||||||
|
|
||||||
[params]
|
[params]
|
||||||
copyright = "Copyright © 2020 alguidelines.dev Project"
|
copyright = "alguidelines.dev Project"
|
||||||
github_repo = "https://github.com/microsoft/alguidelines"
|
github_repo = "https://github.com/microsoft/alguidelines"
|
||||||
github_project_repo = "https://github.com/microsoft/alguidelines"
|
github_project_repo = "https://github.com/microsoft/alguidelines"
|
||||||
privacy_policy = ""
|
privacy_policy = ""
|
||||||
|
|
@ -200,9 +200,9 @@ url = "/docs/"
|
||||||
pre = "<i class='fas fa-book'></i>"
|
pre = "<i class='fas fa-book'></i>"
|
||||||
weight = 10
|
weight = 10
|
||||||
[[menu.main]]
|
[[menu.main]]
|
||||||
name = "Blog"
|
name = "Discussions"
|
||||||
url = "/blog/"
|
url = "https://github.com/microsoft/alguidelines/discussions/"
|
||||||
pre = "<i class='fas fa-blog'></i>"
|
pre = "<i class='fas fa-comments'></i>"
|
||||||
weight = 11
|
weight = 11
|
||||||
[[menu.main]]
|
[[menu.main]]
|
||||||
name = "GitHub"
|
name = "GitHub"
|
||||||
|
|
|
||||||
|
|
@ -11,22 +11,18 @@ images: ["images/og-image-fission.png"]
|
||||||
<div class="col-xl-7 col-lg-6 col-md-6 hero-section-mobile">
|
<div class="col-xl-7 col-lg-6 col-md-6 hero-section-mobile">
|
||||||
<h1 class="hero-title">
|
<h1 class="hero-title">
|
||||||
Guidelines and Patterns<br />
|
Guidelines and Patterns<br />
|
||||||
for AL for<br />
|
for Development for<br />
|
||||||
Microsoft Dynamics 365 Business Central
|
Microsoft Dynamics 365 Business Central
|
||||||
</h1>
|
</h1>
|
||||||
<img
|
<img
|
||||||
class="img-fluid hero-banner show-mobile-big"
|
class="img-fluid hero-banner show-mobile-big"
|
||||||
src="/images/fission-illustration.svg"
|
src="/images/brainstorming-team-meeting_38894532.png"
|
||||||
alt-text="Fission Banner"
|
alt-text="Teamwork Graphic"
|
||||||
/>
|
/>
|
||||||
<br />
|
<br />
|
||||||
<a href="/docs/installation/"
|
<a href="https://www.youtube.com/watch?v=CWpaD9RUa6U"
|
||||||
><button class="hero-big">
|
><button class="hero-big">
|
||||||
<img
|
<i class="fab fa-youtube"></i> Watch the Launch
|
||||||
src="/images/github-icon.png"
|
|
||||||
width="22px"
|
|
||||||
style="margin-right: 12px"
|
|
||||||
/>Install Fission
|
|
||||||
</button></a
|
</button></a
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -34,8 +30,8 @@ images: ["images/og-image-fission.png"]
|
||||||
<div class="col-xl-5 col-lg-6 col-md-6 show-desktop-big">
|
<div class="col-xl-5 col-lg-6 col-md-6 show-desktop-big">
|
||||||
<img
|
<img
|
||||||
class="img-fluid hero-banner"
|
class="img-fluid hero-banner"
|
||||||
src="/images/fission-illustration.svg"
|
src="/images/brainstorming-team-meeting_38894532.png"
|
||||||
alt-text="Fission Banner"
|
alt-text="Teamwork Graphic"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -47,28 +43,23 @@ images: ["images/og-image-fission.png"]
|
||||||
<br />
|
<br />
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-5">
|
<div class="col-lg-5">
|
||||||
<h2 class="section-title">What is Fission?</h2>
|
<h2 class="section-title">Design Patterns?</h2>
|
||||||
<p class="section-text-bold">
|
<p class="section-text-bold">
|
||||||
Fission is a framework for serverless functions on Kubernetes.
|
A "Design Pattern" is a software design template to solve common development needs.
|
||||||
</p>
|
</p>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Write short-lived functions in any language, and map them to HTTP
|
This site is community run and Microsoft endorsed.
|
||||||
requests (or other event triggers).
|
|
||||||
</p>
|
</p>
|
||||||
<p class="section-text">
|
<a href="/docs"
|
||||||
Deploy functions instantly with one command. There are no containers
|
><button class="hero-mid">Learn More</button></a
|
||||||
to build, and no Docker registries to manage.
|
|
||||||
</p>
|
|
||||||
<a href="/docs/installation/"
|
|
||||||
><button class="hero-mid">Learn More & Install Fission</button></a
|
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-lg-7">
|
<div class="col-lg-7">
|
||||||
<img
|
<img
|
||||||
class="img-fluid show-mobile-margin"
|
class="img-fluid show-mobile-margin"
|
||||||
src="/images/body-img-1.svg"
|
src="/images/body-img-1.png"
|
||||||
alt-text="Fission Banner"
|
alt-text="Design Patterns Banner"
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -88,248 +79,42 @@ images: ["images/og-image-fission.png"]
|
||||||
|
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<div class="card-shadow">
|
<div class="card-shadow">
|
||||||
<img src="/images/focus.svg" width="50px" class="img-card" />
|
<h2 class="section-text-bold"><i class="fas fa-retweet"></i></h2>
|
||||||
<h4 class="section-text-bold">Focus on Code,<br />Not Plumbing</h4>
|
<h4 class="section-text-bold">Repeatability</h4>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Fission lets developers run code functions easily, while automating
|
By using consistent patterns and best practices, code is far more reusable across diverse projects.
|
||||||
the menial work of configuring Kubernetes micro-services concepts
|
|
||||||
behind the scenes. Just write your code functions and Fission will
|
|
||||||
make it run on Kubernetes.
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<div class="card-shadow">
|
<div class="card-shadow">
|
||||||
<img src="/images/portable.svg" width="50px" class="img-card" />
|
<h2><i class="fas fa-people-carry"></i></h2>
|
||||||
<h4 class="section-text-bold">
|
<h4 class="section-text-bold">Teamwork</h4>
|
||||||
Portable: Run your Lambda-like service, anywhere
|
|
||||||
</h4>
|
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Fission is open source under the Apache license. Fission works on a
|
If all code uses design patterns and best practices, it's simpler for new team members to ensure
|
||||||
Kubernetes cluster anywhere: on your laptop, in any public cloud, or
|
that code is correct, as well as making it easier to jump into a project.
|
||||||
in a private data-center. Write your application with the
|
|
||||||
flexibility of deploying it anywhere.
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<div class="card-shadow">
|
<div class="card-shadow">
|
||||||
<img src="/images/extensible.svg" width="50px" class="img-card" />
|
<h2><i class="fas fa-rocket"></i></h2>
|
||||||
<h4 class="section-text-bold">
|
<h4 class="section-text-bold">Performance</h4>
|
||||||
Extensible and<br />
|
|
||||||
Customizable
|
|
||||||
</h4>
|
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Fission is extensible to any programming language (Python, NodeJS,
|
Many design patterns and best practices are also heavily focused on ensuring compliance with
|
||||||
Go, C#, PHP are supported today). It abstracts away containers by
|
the latest performance recommendations to get the most out of every system.
|
||||||
default, but you can build your own containers if you need to.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="container">
|
|
||||||
<div class="row feature-section">
|
|
||||||
<div class="col-lg-12 center-text" style="margin-bottom: 50px">
|
|
||||||
<h2 class="section-title">Features</h2>
|
|
||||||
</div>
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/kubernetes-native.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">Kubernetes Native</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission is open source under the Apache License. It works on a
|
|
||||||
Kubernetes cluster anywhere: in your private datacenter, in a public
|
|
||||||
cloud, or on your laptop.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/fast-cold.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">Fast Cold-Start</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission maintains a configurable pool of containers, so your
|
|
||||||
functions have very low cold-start latencies, typically ~100msec.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/declarative.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">
|
|
||||||
Declarative Application Specifications
|
|
||||||
</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Declarative specifications give the developer the capability to
|
|
||||||
define a function once and then deploy it anywhere. Fission
|
|
||||||
resources (functions, triggers etc.) can be checked into source
|
|
||||||
control, and the application can be recreated from them.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/administration.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">
|
|
||||||
Administration & Operational Simplicity
|
|
||||||
</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission aims for operational simplicity by incorporating logs
|
|
||||||
directly into the CLI, via integration with Fluentd. It also
|
|
||||||
integrates with Prometheus for metrics tracking and dashboard
|
|
||||||
visibility.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img src="/images/istio.svg" width="36px" class="img-card-header" />
|
|
||||||
<h4 class="section-text-bold">Istio Service-mesh Integration</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission integrates with Istio, which is an open platform to connect,
|
|
||||||
manage and secure micro-services. With Istio, users also get the
|
|
||||||
ability to monitor function usage and trace request latency through
|
|
||||||
dashboards.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/language.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">Wide Language Support</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission is extensible to any programming language of your choice.
|
|
||||||
Python, NodeJS, Go, C#, PHP are supported today, but you can build
|
|
||||||
your own custom containers if you need to.
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="feature-card">
|
|
||||||
<div class="card-header-custom">
|
|
||||||
<img
|
|
||||||
src="/images/autoscaling.svg"
|
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<h4 class="section-text-bold">Function Autoscaling</h4>
|
|
||||||
</div>
|
|
||||||
<p class="section-text">
|
|
||||||
Fission provides autoscaling for functions based on CPU usage. In
|
|
||||||
the future, custom metrics will be also supported for scaling
|
|
||||||
functions. You can set the initial and maximum CPU for a function
|
|
||||||
and target CPU at which autoscaling will be triggered.
|
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="wide-image show-desktop">
|
<div class="wide-image show-desktop">
|
||||||
<img src="/images/wave.webp" class="big-waves" />
|
<img src="/images/wave.webp" class="big-waves" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="body-container push-up">
|
|
||||||
<div class="container">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-lg-12 center-text" style="margin-bottom: 50px">
|
|
||||||
<h2 class="section-title">Use Cases</h2>
|
|
||||||
</div>
|
|
||||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
|
||||||
<h3 class="section-text-bold">Build Serverless API Backends</h3>
|
|
||||||
<p class="section-text">
|
|
||||||
Create API backends for web and mobile apps without managing servers.
|
|
||||||
Just write functions, and map them to HTTP routes. Fission takes care
|
|
||||||
of the rest: deployment, routing, scalability, availability. Use
|
|
||||||
Kubernetes service discovery and networking to interoperate with
|
|
||||||
other services, like Redis, Postgres, Etcd etc.
|
|
||||||
</p>
|
|
||||||
<img
|
|
||||||
src="/images/use-case-1.png"
|
|
||||||
class="img-fluid"
|
|
||||||
alt-text="Build Serverless API Backends use case diagram"
|
|
||||||
/>
|
|
||||||
<br /><br />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
|
||||||
<h3 class="section-text-bold">Easily Implement Webhooks</h3>
|
|
||||||
<p class="section-text">
|
|
||||||
Webhooks are a popular way to integrate with third-party services.
|
|
||||||
Slack provides webhooks that are triggered by certain words or
|
|
||||||
messages; GitHub provides webhooks triggered by events in Git
|
|
||||||
repositories. Fission is a great place to implement webhooks: just
|
|
||||||
write the code, map it to a URL, and point the webhook at that URL.
|
|
||||||
</p>
|
|
||||||
<img
|
|
||||||
src="/images/use-case-2.png"
|
|
||||||
class="img-fluid"
|
|
||||||
alt-text="Easily implement webhook use case diagram"
|
|
||||||
/>
|
|
||||||
<br /><br />
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-10 center-text info-card" style="margin-bottom: 50px">
|
|
||||||
<h3 class="section-text-bold">Write Kubernetes Event Handlers</h3>
|
|
||||||
<p class="section-text">
|
|
||||||
By subscribing to Kubernetes watches, you can write custom automation
|
|
||||||
for your Kubernetes infrastructure. Fission’s integration with
|
|
||||||
Kubernetes watches allows you to monitor resources such as Pods and
|
|
||||||
Services, and execute arbitrary functions when the watched set of
|
|
||||||
resources change.
|
|
||||||
</p>
|
|
||||||
<img
|
|
||||||
src="/images/use-case-3.png"
|
|
||||||
class="img-fluid"
|
|
||||||
alt-text="Write Kubernetes Event Handlers use case diagram"
|
|
||||||
/>
|
|
||||||
<br /><br />
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="body-container whats-new">
|
<div class="body-container whats-new">
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
@ -338,19 +123,33 @@ images: ["images/og-image-fission.png"]
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<div class="card-shadow">
|
<div class="card-shadow">
|
||||||
<span class="card-badge">FISSION DZONE REFCARD</span>
|
<span class="card-badge">PATTERN</span>
|
||||||
<h4 class="section-text-bold mt-4">
|
<h4 class="section-text-bold mt-4">
|
||||||
New! Download the <span class="d-lg-block">Fission.io Refcard</span>
|
Event Bridge
|
||||||
</h4>
|
</h4>
|
||||||
<div class="card-shadow-content">
|
<div class="card-shadow-content">
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Get started with Serverless on Kubernetes in 5 minutes! Learn how
|
In the world of interfaces, it is important to preserve (certain) events over multiple implementation of the interface.
|
||||||
to set up Fission, its key concepts, how to create and invoke a
|
|
||||||
function, monitor its performance, and more.
|
|
||||||
</p>
|
</p>
|
||||||
<a
|
<a href="/docs/patterns/event-bridge-pattern/">
|
||||||
href="https://platform9.com/wp-content/uploads/2019/03/dzone-refcard-fissionio.pdf"
|
<button class="hero-mid align-self-end">Read Now</button>
|
||||||
><button class="hero-mid align-self-end">Download Now!</button></a
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col-lg-4">
|
||||||
|
<div class="card-shadow">
|
||||||
|
<span class="card-badge">BEST PRACTICE</span>
|
||||||
|
<h4 class="section-text-bold mt-4">
|
||||||
|
CASE Action on next line
|
||||||
|
</h4>
|
||||||
|
<div class="card-shadow-content">
|
||||||
|
<p class="section-text">
|
||||||
|
A CASE action should start on a line after the possibility.
|
||||||
|
</p>
|
||||||
|
<a href="/docs/bestpractices/case-actions/"
|
||||||
|
><button class="hero-mid-2 align-self-end">Read Now</button></a
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -358,36 +157,17 @@ images: ["images/og-image-fission.png"]
|
||||||
|
|
||||||
<div class="col-lg-4">
|
<div class="col-lg-4">
|
||||||
<div class="card-shadow">
|
<div class="card-shadow">
|
||||||
<span class="card-badge">BLOG</span>
|
<span class="card-badge">PATTERN</span>
|
||||||
<h4 class="section-text-bold mt-4">
|
<h4 class="section-text-bold mt-4">
|
||||||
Fission PostgreSQL Database <span class="d-lg-block">Sample</span>
|
Façade
|
||||||
</h4>
|
</h4>
|
||||||
<div class="card-shadow-content">
|
<div class="card-shadow-content">
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Learn how to use Fission functions with PostgreSQL database and
|
The intent of this pattern is to provide a unified API to a single or a collection of potentially complex subsystems.
|
||||||
perform basic operations on it.
|
|
||||||
</p>
|
|
||||||
<a href="/blog/how-to-use-postgresql-database-with-fission-functions/"
|
|
||||||
><button class="hero-mid-2 align-self-end">Read More</button></a
|
|
||||||
>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-lg-4">
|
|
||||||
<div class="card-shadow">
|
|
||||||
<span class="card-badge">BLOG</span>
|
|
||||||
<h4 class="section-text-bold mt-4">
|
|
||||||
Next.js Application with <span class="d-lg-block">Fission</span>
|
|
||||||
</h4>
|
|
||||||
<div class="card-shadow-content">
|
|
||||||
<p class="section-text">
|
|
||||||
Learn how you can create a Next.js application with Fission.
|
|
||||||
We create a Next.js blog in this tutorial.
|
|
||||||
</p>
|
</p>
|
||||||
<a
|
<a
|
||||||
href="/blog/serverless-next.js-example-blog-with-fission/"
|
href="/docs/patterns/facade-pattern/"
|
||||||
><button class="hero-mid-2 align-self-end">Read More</button></a
|
><button class="hero-mid-2 align-self-end">Read Now</button></a
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -407,52 +187,38 @@ images: ["images/og-image-fission.png"]
|
||||||
|
|
||||||
<div class="show-mobile">
|
<div class="show-mobile">
|
||||||
<div class="community-cards">
|
<div class="community-cards">
|
||||||
<a href="/slack"
|
<a href="https://discord.gg/4wbfNv3"
|
||||||
><div class="card-shadow">
|
><div class="card-shadow">
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-discord"></i></h2>
|
||||||
src="/images/slack.svg"
|
<h2 class="section-text-bold">Discord</h2>
|
||||||
width="30px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">Slack</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Join the Fission community to engage with the fission team,
|
Join the BC Community to engage with other BC Professionals.
|
||||||
interact with other users, and contribute ideas and feedback.
|
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
|
|
||||||
<a href="https://github.com/fission"
|
<a href="https://github.com/microsoft/alguidelines"
|
||||||
><div class="card-shadow">
|
><div class="card-shadow">
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-github"></i></h2>
|
||||||
src="/images/github.svg"
|
<h2 class="section-text-bold">GitHub</h2>
|
||||||
width="30px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">GitHub</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Dive into the code and learn more about Fission. Submit PRs
|
Dive into the code. Submit PRs
|
||||||
and collaborate with other like-minded contributors.
|
and collaborate with other like-minded contributors.
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
<a href="https://twitter.com/fissionio"
|
<a href="https://twitter.com/search?q=%23bcalhelp"
|
||||||
><div class="card-shadow twitter-card" style="margin-left: auto">
|
><div class="card-shadow twitter-card" style="margin-left: auto">
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-twitter"></i></h2>
|
||||||
src="/images/twitter.svg"
|
<h2 class="section-text-bold">Twitter</h2>
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">Twitter</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Follow us <b class="text-highlight">@fissionio</b> to stay up
|
Chat about this with the <b class="text-highlight">#bcalhelp</b> hashtag.
|
||||||
to date with Fission news.
|
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
|
|
@ -463,58 +229,44 @@ images: ["images/og-image-fission.png"]
|
||||||
<div class="col-lg-8 community-cards show-desktop">
|
<div class="col-lg-8 community-cards show-desktop">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
<div class="col-lg-6">
|
<div class="col-lg-6">
|
||||||
<a href="/slack"
|
<a href="https://discord.gg/4wbfNv3"
|
||||||
><div class="card-shadow">
|
><div class="card-shadow">
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-discord"></i></h2>
|
||||||
src="/images/slack.svg"
|
<h2 class="section-text-bold">Discord</h2>
|
||||||
width="30px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">Slack</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Join the Fission community to engage with the fission team,
|
Join the BC Community to engage with other BC Professionals.
|
||||||
interact with other users, and contribute ideas and feedback.
|
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6">
|
<div class="col-lg-6">
|
||||||
<a href="https://github.com/fission"
|
<a href="https://github.com/microsoft/alguidelines"
|
||||||
><div class="card-shadow">
|
><div class="card-shadow">
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-github"></i></h2>
|
||||||
src="/images/github.svg"
|
<h2 class="section-text-bold">GitHub</h2>
|
||||||
width="30px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">GitHub</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Dive into the code and learn more about Fission. Submit PRs
|
Dive into the code. Submit PRs
|
||||||
and collaborate with other like-minded contributors.
|
and collaborate with other like-minded contributors.
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-lg-6">
|
<div class="col-lg-6">
|
||||||
<a href="https://twitter.com/fissionio"
|
<a href="https://twitter.com/search?q=%23bcalhelp"
|
||||||
><div
|
><div
|
||||||
class="card-shadow twitter-card-desktop"
|
class="card-shadow twitter-card-desktop"
|
||||||
style="margin-left: auto"
|
style="margin-left: auto"
|
||||||
>
|
>
|
||||||
<div class="card-header-custom">
|
<div class="card-header-custom">
|
||||||
<img
|
<h2 style="padding-right: 0.8rem;"><i class="fab fa-twitter"></i></h2>
|
||||||
src="/images/twitter.svg"
|
<h2 class="section-text-bold">Twitter</h2>
|
||||||
width="36px"
|
|
||||||
class="img-card-header"
|
|
||||||
/>
|
|
||||||
<p class="section-text-bold">Twitter</p>
|
|
||||||
</div>
|
</div>
|
||||||
<p class="section-text">
|
<p class="section-text">
|
||||||
Follow us <b class="text-highlight">@fissionio</b> to stay up
|
Chat about this with the <b class="text-highlight">#bcalhelp</b> hashtag.
|
||||||
to date with Fission news.
|
|
||||||
</p>
|
</p>
|
||||||
</div></a
|
</div></a
|
||||||
>
|
>
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
---
|
---
|
||||||
title: "Event Bridge"
|
title: "Event Bridge"
|
||||||
tags: [""]
|
tags: ["Interface"]
|
||||||
categories: ["Pattern"]
|
categories: ["Pattern"]
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|
|
||||||
36
layouts/partials/navbar.html
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
{{ $cover := and (.HasShortcode "blocks/cover") (not .Site.Params.ui.navbar_translucent_over_cover_disable) }}
|
||||||
|
<nav class="js-navbar-scroll navbar navbar-expand navbar-dark {{ if $cover}} td-navbar-cover {{ end }}flex-column flex-md-row td-navbar">
|
||||||
|
<a class="navbar-brand" href="{{ .Site.Home.RelPermalink }}">
|
||||||
|
<img src="/images/alguidelines-bclogo-pattern-white.png" height="32px">
|
||||||
|
<span class="font-weight-bold">{{ .Site.Title }}</span>
|
||||||
|
</a>
|
||||||
|
<div class="td-navbar-nav-scroll ml-md-auto" id="main_navbar">
|
||||||
|
<ul class="navbar-nav mt-2 mt-lg-0">
|
||||||
|
{{ $p := . }}
|
||||||
|
{{ range .Site.Menus.main }}
|
||||||
|
<li class="nav-item mr-4 mb-2 mb-lg-0">
|
||||||
|
{{ $active := or ($p.IsMenuCurrent "main" .) ($p.HasMenuCurrent "main" .) }}
|
||||||
|
{{ with .Page }}
|
||||||
|
{{ $active = or $active ( $.IsDescendant .) }}
|
||||||
|
{{ end }}
|
||||||
|
{{ $pre := .Pre }}
|
||||||
|
{{ $post := .Post }}
|
||||||
|
{{ $url := urls.Parse .URL }}
|
||||||
|
{{ $baseurl := urls.Parse $.Site.Params.Baseurl }}
|
||||||
|
<a class="nav-link{{if $active }} active{{end}}" href="{{ with .Page }}{{ .RelPermalink }}{{ else }}{{ .URL | relLangURL }}{{ end }}" {{ if ne $url.Host $baseurl.Host }}target="_blank" {{ end }}>{{ with .Pre}}{{ $pre }}{{ end }}<span{{if $active }} class="active"{{end}}>{{ .Name }}</span>{{ with .Post}}{{ $post }}{{ end }}</a>
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
{{ if .Site.Params.versions }}
|
||||||
|
<li class="nav-item dropdown mr-4 d-none d-lg-block">
|
||||||
|
{{ partial "navbar-version-selector.html" . }}
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
{{ if (gt (len .Site.Home.Translations) 0) }}
|
||||||
|
<li class="nav-item dropdown mr-4 d-none d-lg-block">
|
||||||
|
{{ partial "navbar-lang-selector.html" . }}
|
||||||
|
</li>
|
||||||
|
{{ end }}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
<div class="navbar-nav d-none d-lg-block">{{ partial "search-input.html" . }}</div>
|
||||||
|
</nav>
|
||||||
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
BIN
static/favicons/android-144x144.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
static/favicons/android-192x192.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
static/favicons/android-36x36.png
Normal file
|
After Width: | Height: | Size: 2.7 KiB |
BIN
static/favicons/android-48x48.png
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
BIN
static/favicons/android-72x72.png
Normal file
|
After Width: | Height: | Size: 6.1 KiB |
BIN
static/favicons/android-96x96.png
Normal file
|
After Width: | Height: | Size: 9 KiB |
|
Before Width: | Height: | Size: 17 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 96 KiB |
|
Before Width: | Height: | Size: 8.7 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 17 KiB |
|
Before Width: | Height: | Size: 14 KiB After Width: | Height: | Size: 19 KiB |
BIN
static/favicons/apple-touch-icon-180x180.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 4.9 KiB |
|
Before Width: | Height: | Size: 4.3 KiB After Width: | Height: | Size: 6.5 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 31 KiB |
BIN
static/favicons/favicon-1024.png
Normal file
|
After Width: | Height: | Size: 256 KiB |
|
Before Width: | Height: | Size: 8.9 KiB After Width: | Height: | Size: 13 KiB |
BIN
static/favicons/favicon-16x16.png
Normal file
|
After Width: | Height: | Size: 1.3 KiB |
BIN
static/favicons/favicon-256.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
|
Before Width: | Height: | Size: 20 KiB After Width: | Height: | Size: 36 KiB |
BIN
static/favicons/favicon-32x32.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
|
Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.3 KiB |
|
Before Width: | Height: | Size: 6 KiB After Width: | Height: | Size: 9 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 16 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 16 KiB |
BIN
static/favicons/pwa-192x192.png
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
static/favicons/pwa-512x512.png
Normal file
|
After Width: | Height: | Size: 96 KiB |
BIN
static/favicons/tile150x150.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
static/favicons/tile310x150.png
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
static/favicons/tile310x310.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
static/favicons/tile70x70.png
Normal file
|
After Width: | Height: | Size: 5.9 KiB |
BIN
static/images/alguidelines-bclogo-pattern-black.png
Normal file
|
After Width: | Height: | Size: 285 KiB |
BIN
static/images/alguidelines-bclogo-pattern-white.png
Normal file
|
After Width: | Height: | Size: 269 KiB |
BIN
static/images/body-img-1.png
Normal file
|
After Width: | Height: | Size: 342 KiB |
|
Before Width: | Height: | Size: 566 KiB |
BIN
static/images/brainstorming-team-meeting_38894532.png
Normal file
|
After Width: | Height: | Size: 657 KiB |
|
Before Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 267 KiB |
|
Before Width: | Height: | Size: 531 B |
|
Before Width: | Height: | Size: 686 KiB After Width: | Height: | Size: 1.6 MiB |
|
Before Width: | Height: | Size: 113 KiB After Width: | Height: | Size: 140 KiB |
|
Before Width: | Height: | Size: 61 KiB After Width: | Height: | Size: 82 KiB |
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 5.9 KiB |