diff --git a/docs/assets/images/grpc-logo.png b/docs/assets/images/grpc-logo.png deleted file mode 100644 index 9fd3286..0000000 Binary files a/docs/assets/images/grpc-logo.png and /dev/null differ diff --git a/docs/assets/images/grpc-logo.svg b/docs/assets/images/grpc-logo.svg new file mode 100644 index 0000000..3d47bad --- /dev/null +++ b/docs/assets/images/grpc-logo.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/images/prima-logo-text.svg b/docs/assets/images/prima-logo-text.svg new file mode 100644 index 0000000..7633868 --- /dev/null +++ b/docs/assets/images/prima-logo-text.svg @@ -0,0 +1,15 @@ + + + + + + + + + + + + + + + diff --git a/docs/assets/templates/slideshow.html.jinja b/docs/assets/templates/slideshow.html.jinja index 52c97ee..93b69a7 100644 --- a/docs/assets/templates/slideshow.html.jinja +++ b/docs/assets/templates/slideshow.html.jinja @@ -28,14 +28,17 @@
+
+ +
- +
diff --git a/docs/assets/themes/dracula.css b/docs/assets/themes/dracula.css deleted file mode 100644 index 5408edd..0000000 --- a/docs/assets/themes/dracula.css +++ /dev/null @@ -1,406 +0,0 @@ -/** - * Dracula Dark theme for reveal.js. - * Based on https://draculatheme.com - */ - -@import url("https://fonts.googleapis.com/css2?family=Fira+Code:wght@300..700&family=League+Gothic&display=swap"); -@import url(https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic); - -/** - * Dracula colors by Zeno Rocha - * https://draculatheme.com/contribute - */ -html * { - color-profile: sRGB; - rendering-intent: auto; -} - -/********************************************* - * GLOBAL STYLES - *********************************************/ -:root { - --r-background-color: #282a36; - --r-main-font: - -apple-system, BlinkMacSystemFont, avenir next, avenir, segoe ui, - helvetica neue, helvetica, Cantarell, Ubuntu, roboto, noto, arial, - sans-serif; - --r-main-font-size: 40px; - --r-main-color: #f8f8f2; - --r-block-margin: 20px; - --r-heading-margin: 0 0 20px 0; - --r-heading-font: League Gothic, Impact, sans-serif; - --r-heading-color: #bd93f9; - --r-heading-line-height: 1.2; - --r-heading-letter-spacing: normal; - --r-heading-text-transform: none; - --r-heading-text-shadow: none; - --r-heading-font-weight: normal; - --r-heading1-text-shadow: none; - --r-heading1-size: 3.77em; - --r-heading2-size: 2.11em; - --r-heading3-size: 1.55em; - --r-heading4-size: 1em; - --r-code-font: - Fira Code, Menlo, Consolas, Monaco, Liberation Mono, Lucida Console, - monospace; - --r-link-color: #ff79c6; - --r-link-color-dark: rgb(255, 64.6, 174.0089552239); - --r-link-color-hover: #8be9fd; - --r-selection-background-color: #44475a; - --r-selection-color: #fff; - --r-overlay-element-bg-color: 240, 240, 240; - --r-overlay-element-fg-color: 0, 0, 0; - --r-bold-color: #ffb86c; - --r-italic-color: #f1fa8c; - --r-inline-code-color: white; - --r-list-bullet-color: #8be9fd; -} - -.reveal-viewport { - background: #282a36; - background-color: var(--r-background-color); -} - -.reveal { - font-family: var(--r-main-font); - font-size: var(--r-main-font-size); - font-weight: normal; - color: var(--r-main-color); -} - -.reveal ::selection { - color: var(--r-selection-color); - background: var(--r-selection-background-color); - text-shadow: none; -} - -.reveal ::-moz-selection { - color: var(--r-selection-color); - background: var(--r-selection-background-color); - text-shadow: none; -} - -.reveal .slides section, -.reveal .slides section > section { - line-height: 1.3; - font-weight: inherit; -} - -/********************************************* - * HEADERS - *********************************************/ -section.has-light-background, -section.has-light-background h1, -section.has-light-background h2, -section.has-light-background h3, -section.has-light-background h4, -section.has-light-background h5, -section.has-light-background h6 { - color: #282a36; -} - -.reveal h1, -.reveal h2, -.reveal h3, -.reveal h4, -.reveal h5, -.reveal h6 { - margin: var(--r-heading-margin); - color: var(--r-heading-color); - font-family: var(--r-heading-font); - font-weight: var(--r-heading-font-weight); - line-height: var(--r-heading-line-height); - letter-spacing: var(--r-heading-letter-spacing); - text-transform: var(--r-heading-text-transform); - text-shadow: var(--r-heading-text-shadow); - word-wrap: break-word; -} - -.reveal h1 { - font-size: var(--r-heading1-size); -} - -.reveal h2 { - font-size: var(--r-heading2-size); -} - -.reveal h3 { - font-size: var(--r-heading3-size); -} - -.reveal h4 { - font-size: var(--r-heading4-size); -} - -.reveal h1 { - text-shadow: var(--r-heading1-text-shadow); -} - -/********************************************* - * OTHER - *********************************************/ -.reveal p { - margin: var(--r-block-margin) 0; - line-height: 1.3; -} - -/* Remove trailing margins after titles */ -.reveal h1:last-child, -.reveal h2:last-child, -.reveal h3:last-child, -.reveal h4:last-child, -.reveal h5:last-child, -.reveal h6:last-child { - margin-bottom: 0; -} - -/* Ensure certain elements are never larger than the slide itself */ -.reveal img, -.reveal video, -.reveal iframe { - max-width: 95%; - max-height: 95%; -} - -.reveal strong, -.reveal b { - font-weight: bold; -} - -.reveal em { - font-style: italic; -} - -.reveal ol, -.reveal dl, -.reveal ul { - display: inline-block; - text-align: left; - margin: 0 0 0 1em; -} - -.reveal ol { - list-style-type: decimal; -} - -.reveal ul { - list-style-type: disc; -} - -.reveal ul ul { - list-style-type: square; -} - -.reveal ul ul ul { - list-style-type: circle; -} - -.reveal ul ul, -.reveal ul ol, -.reveal ol ol, -.reveal ol ul { - display: block; - margin-left: 40px; -} - -.reveal dt { - font-weight: bold; -} - -.reveal dd { - margin-left: 40px; -} - -.reveal blockquote { - display: block; - position: relative; - width: 70%; - margin: var(--r-block-margin) auto; - padding: 5px; - font-style: italic; - background: rgba(255, 255, 255, 0.05); - box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2); -} - -.reveal blockquote p:first-child, -.reveal blockquote p:last-child { - display: inline-block; -} - -.reveal q { - font-style: italic; -} - -/********************************************* - * CODE - *********************************************/ - -.reveal .code-wrapper { - display: block; - position: relative; - margin: var(--r-block-margin) auto; - text-align: left; - font-family: var(--r-code-font); - box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15); - max-width: 80%; -} - -.reveal .code-wrapper code { - max-height: none; - font-family: var(--r-code-font); - tab-size: 2; - white-space: pre-wrap; - overflow-x: hidden; - overflow-wrap: break-word; - overflow-y: auto; - font-size: 1.3rem; - line-height: 1.4em; -} - -.reveal table { - margin: auto; - border-collapse: collapse; - border-spacing: 0; -} - -.reveal table th { - font-weight: bold; -} - -.reveal table th, -.reveal table td { - text-align: left; - padding: 0.2em 0.5em 0.2em 0.5em; - border-bottom: 1px solid; -} - -.reveal table th[align="center"], -.reveal table td[align="center"] { - text-align: center; -} - -.reveal table th[align="right"], -.reveal table td[align="right"] { - text-align: right; -} - -.reveal table tbody tr:last-child th, -.reveal table tbody tr:last-child td { - border-bottom: none; -} - -.reveal sup { - vertical-align: super; - font-size: smaller; -} - -.reveal sub { - vertical-align: sub; - font-size: smaller; -} - -.reveal small { - display: inline-block; - font-size: 0.6em; - line-height: 1.2em; - vertical-align: top; -} - -.reveal small * { - vertical-align: top; -} - -.reveal img { - margin: var(--r-block-margin) 0; -} - -/********************************************* - * LINKS - *********************************************/ -.reveal a { - color: var(--r-link-color); - text-decoration: none; - transition: color 0.15s ease; -} - -.reveal a:hover { - color: var(--r-link-color-hover); - text-shadow: none; - border: none; -} - -.reveal .roll span:after { - color: #fff; - background: var(--r-link-color-dark); -} - -/********************************************* - * Frame helper - *********************************************/ -.reveal .r-frame { - border: 4px solid var(--r-main-color); - box-shadow: 0 0 10px rgba(0, 0, 0, 0.15); -} - -.reveal a .r-frame { - transition: all 0.15s linear; -} - -.reveal a:hover .r-frame { - border-color: var(--r-link-color); - box-shadow: 0 0 20px rgba(0, 0, 0, 0.55); -} - -/********************************************* - * LAYOUT - *********************************************/ - -.row { - display: flex; - flex-direction: row; -} - -.column { - flex: 1; -} - -/********************************************* - * NAVIGATION CONTROLS - *********************************************/ -.reveal .controls { - color: var(--r-link-color); -} - -/********************************************* - * PROGRESS BAR - *********************************************/ -.reveal .progress { - background: rgba(0, 0, 0, 0.2); - color: var(--r-link-color); -} - -/********************************************* - * PRINT BACKGROUND - *********************************************/ -@media print { - .backgrounds { - background-color: var(--r-background-color); - } -} - -.reveal strong, -.reveal b { - color: var(--r-bold-color); -} -.reveal em, -.reveal i, -.reveal blockquote { - color: var(--r-italic-color); -} -.reveal code { - color: var(--r-inline-code-color); -} -.reveal ul li::marker, -.reveal ol li::marker { - color: var(--r-list-bullet-color); -} diff --git a/docs/assets/themes/highlight/stackoverflow-dark.css b/docs/assets/themes/highlight/stackoverflow-dark.css deleted file mode 100644 index e5bc78b..0000000 --- a/docs/assets/themes/highlight/stackoverflow-dark.css +++ /dev/null @@ -1,117 +0,0 @@ -pre code.hljs { - display: block; - padding: 1em; -} - -code.hljs { - padding: 3px 5px; -} - -/*! - Theme: StackOverflow Dark - Description: Dark theme as used on stackoverflow.com - Author: stackoverflow.com - Maintainer: @Hirse - Website: https://github.com/StackExchange/Stacks - License: MIT - Updated: 2021-05-15 - - Updated for @stackoverflow/stacks v0.64.0 - Code Blocks: /blob/v0.64.0/lib/css/components/_stacks-code-blocks.less - Colors: /blob/v0.64.0/lib/css/exports/_stacks-constants-colors.less -*/ -.hljs { - /* var(--highlight-color) */ - color: #ffffff; - /* var(--highlight-bg) */ - background: #1c1b1b; -} -.hljs-subst { - /* var(--highlight-color) */ - color: #ffffff; -} -.hljs-comment { - /* var(--highlight-comment) */ - color: #999999; -} -.hljs-keyword, -.hljs-selector-tag, -.hljs-meta .hljs-keyword, -.hljs-doctag, -.hljs-section { - /* var(--highlight-keyword) */ - color: #88aece; -} -.hljs-attr { - /* var(--highlight-attribute); */ - color: #88aece; -} -.hljs-attribute { - /* var(--highlight-symbol) */ - color: #c59bc1; -} -.hljs-name, -.hljs-type, -.hljs-number, -.hljs-selector-id, -.hljs-quote, -.hljs-template-tag { - /* var(--highlight-namespace) */ - color: #f08d49; -} -.hljs-selector-class { - /* var(--highlight-keyword) */ - color: #88aece; -} -.hljs-string, -.hljs-regexp, -.hljs-symbol, -.hljs-variable, -.hljs-template-variable, -.hljs-link, -.hljs-selector-attr { - /* var(--highlight-variable) */ - color: #b5bd68; -} -.hljs-meta, -.hljs-selector-pseudo { - /* var(--highlight-keyword) */ - color: #88aece; -} -.hljs-built_in, -.hljs-title, -.hljs-literal { - /* var(--highlight-literal) */ - color: #f08d49; -} -.hljs-bullet, -.hljs-code { - /* var(--highlight-punctuation) */ - color: #cccccc; -} -.hljs-meta .hljs-string { - /* var(--highlight-variable) */ - color: #b5bd68; -} -.hljs-deletion { - /* var(--highlight-deletion) */ - color: #de7176; -} -.hljs-addition { - /* var(--highlight-addition) */ - color: #76c490; -} -.hljs-emphasis { - font-style: italic; -} -.hljs-strong { - font-weight: bold; -} -.hljs-formula, -.hljs-operator, -.hljs-params, -.hljs-property, -.hljs-punctuation, -.hljs-tag { - /* purposely ignored */ -} diff --git a/docs/assets/themes/prima.css b/docs/assets/themes/prima.css index 3f5ff08..353599d 100644 --- a/docs/assets/themes/prima.css +++ b/docs/assets/themes/prima.css @@ -31,8 +31,8 @@ html * { --r-heading-text-shadow: none; --r-heading-font-weight: bold; --r-heading1-text-shadow: none; - --r-heading1-size: 3.77em; - --r-heading2-size: 2.7em; + --r-heading1-size: 3em; + --r-heading2-size: 2em; --r-heading3-size: 1.55em; --r-heading4-size: 1em; --r-code-font: @@ -58,16 +58,8 @@ html * { color: var(--r-main-color); } -.reveal ::selection { - color: var(--r-selection-color); - background: var(--r-link-color); - text-shadow: none; -} - -.reveal ::-moz-selection { - color: var(--r-selection-color); - background: var(--r-link-color); - text-shadow: none; +body .slides-header { + text-align: left; } .reveal .slides section, @@ -76,11 +68,6 @@ html * { font-weight: inherit; } -.reveal .slides section .title { - text-align: left; - margin-bottom: 1rem; -} - /********************************************* * HEADERS *********************************************/ @@ -226,8 +213,8 @@ html * { margin: var(--r-block-margin) auto; text-align: left; font-family: var(--r-code-font); - box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.15); - max-width: 80%; + box-shadow: 0px 5px 15px rgba(0, 0, 0, 0.30); + max-width: 60%; } .reveal .code-wrapper code { @@ -240,6 +227,7 @@ html * { overflow-y: auto; font-size: 1.3rem; line-height: 1.4em; + background-color: var(--r-main-color); } .reveal img { @@ -251,7 +239,7 @@ html * { *********************************************/ .reveal a { color: var(--r-link-color); - text-decoration: underline; + text-decoration: none; transition: color 0.15s ease; } diff --git a/docs/learning_grpc.md b/docs/learning_grpc.md index 6453a7e..42fd080 100644 --- a/docs/learning_grpc.md +++ b/docs/learning_grpc.md @@ -1,3 +1,9 @@ + + + +

Learning gRPC

Victor Martinez

@@ -5,10 +11,8 @@ --- -
-

First, what is RPC?

-

An idea to extend transfer of control and transmission of data from one machine to another.

-
+

First, what is RPC?

+

An idea to extend transfer of control and transmission of data from one machine to another.

RPC implementation @@ -38,7 +42,7 @@ note: --- -grpc +grpc *gRPC is a modern open source high performance Remote Procedure Call (RPC) framework that can run in any environment.* @@ -298,7 +302,7 @@ note: --- ## The protoc compiler -Compiles `.proto` files into code. +Compiles **.proto** files into code. Supports plugins for different languages. ```bash @@ -333,7 +337,7 @@ note: # gRPC in the Rust ecosystem -grpc +grpc :heart: @@ -414,7 +418,7 @@ note: ## Building a layered service -tower +tower --- # Tonic @@ -1190,4 +1194,4 @@ let svc = PolicyManagementServerStub::with_interceptor( # Thank you for your time -:heart: +:purple_heart: diff --git a/mkslides.yml b/mkslides.yml index 66e5147..069e2ab 100644 --- a/mkslides.yml +++ b/mkslides.yml @@ -1,5 +1,5 @@ slides: - highlight_theme: docs/assets/themes/highlight/stackoverflow-dark.css + highlight_theme: docs/assets/themes/highlight/tokyo-night-dark.css theme: docs/assets/themes/prima.css template: docs/assets/templates/slideshow.html.jinja revealjs: @@ -9,3 +9,5 @@ revealjs: transition: fade height: 1080 width: 1920 + disableLayout: false +