Compare commits
2 Commits
b7a493c8c9
...
resume-pdf
| Author | SHA1 | Date | |
|---|---|---|---|
|
8106e03ece
|
|||
|
98fb0482cd
|
2
.gitignore
vendored
@@ -4,5 +4,3 @@ resources/_gen/
|
|||||||
themes/base16*
|
themes/base16*
|
||||||
|
|
||||||
commit-msg.txt
|
commit-msg.txt
|
||||||
.hugo_build.lock
|
|
||||||
static/server-apps.json
|
|
||||||
|
|||||||
7
.gitmodules
vendored
@@ -1,7 +0,0 @@
|
|||||||
[submodule "content/letter"]
|
|
||||||
path = content/letter
|
|
||||||
url = ssh://git@git.kevin-mok.com:399/Kevin-Mok/cover-letters.git
|
|
||||||
branch = master
|
|
||||||
[submodule "static/pdf"]
|
|
||||||
path = static/pdf
|
|
||||||
url = ssh://git@git.kevin-mok.com:399/Kevin-Mok/resume-pdf.git
|
|
||||||
@@ -2,14 +2,9 @@
|
|||||||
|
|
||||||
// base colors {{{ //
|
// base colors {{{ //
|
||||||
|
|
||||||
$base00: #2d2d2d;
|
|
||||||
$base01: #393939;
|
|
||||||
$base02: #515151;
|
|
||||||
$base03: #747369;
|
$base03: #747369;
|
||||||
$base04: #a09f93;
|
$base04: #a09f93;
|
||||||
$base05: #d3d0c8;
|
$base05: #d3d0c8;
|
||||||
$base06: #e8e6df;
|
|
||||||
$base07: #f2f0ec;
|
|
||||||
$base-red: #f2777a;
|
$base-red: #f2777a;
|
||||||
$base-orange: #f99157;
|
$base-orange: #f99157;
|
||||||
$base-yellow: #ffcc66;
|
$base-yellow: #ffcc66;
|
||||||
@@ -19,6 +14,13 @@ $base-blue: #6699cc;
|
|||||||
$base-violet: #cc99cc;
|
$base-violet: #cc99cc;
|
||||||
$base-dark-orange: #d27b53;
|
$base-dark-orange: #d27b53;
|
||||||
|
|
||||||
|
/* .base00 { color: #2d2d2d; }
|
||||||
|
.base01 { color: #393939; }
|
||||||
|
.base02 { color: #515151; }
|
||||||
|
.base03 { color: #747369; }
|
||||||
|
.base04 { color: #a09f93; }
|
||||||
|
.base06 { color: #e8e6df; }
|
||||||
|
.base07 { color: #f2f0ec; } */
|
||||||
.base08 { color: $base-red; }
|
.base08 { color: $base-red; }
|
||||||
.base09 { color: $base-orange; }
|
.base09 { color: $base-orange; }
|
||||||
.base0a { color: $base-yellow; }
|
.base0a { color: $base-yellow; }
|
||||||
@@ -32,37 +34,25 @@ $base-dark-orange: #d27b53;
|
|||||||
|
|
||||||
// mixins {{{ //
|
// mixins {{{ //
|
||||||
|
|
||||||
// $max-page-width: 52em;
|
$max-page-width: 52em;
|
||||||
$max-page-width: 45em;
|
|
||||||
$phone-width: 800px;
|
$phone-width: 800px;
|
||||||
$vert-phone-width: 500px;
|
|
||||||
|
|
||||||
@mixin side-padding-rem($n) {// {{{
|
@mixin side-padding-rem($n) {
|
||||||
padding-left: $n * 1rem;
|
padding-left: $n * 1rem;
|
||||||
padding-right: $n * 1rem;
|
padding-right: $n * 1rem;
|
||||||
}// }}}
|
}
|
||||||
|
|
||||||
@mixin side-margin-em($n) {// {{{
|
@mixin vert-padding-rem($n) {
|
||||||
margin-left: $n * 1em;
|
|
||||||
margin-right: $n * 1em;
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
@mixin vert-padding-rem($n) {// {{{
|
|
||||||
padding-top: $n * 1rem;
|
padding-top: $n * 1rem;
|
||||||
padding-bottom: $n * 1rem;
|
padding-bottom: $n * 1rem;
|
||||||
}// }}}
|
}
|
||||||
|
|
||||||
@mixin vert-margin-rem($n) {// {{{
|
@mixin auto-center() {
|
||||||
margin-top: $n * 1rem;
|
|
||||||
margin-bottom: $n * 1rem;
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
@mixin auto-center() {// {{{
|
|
||||||
margin-left: auto;
|
margin-left: auto;
|
||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
}// }}}
|
}
|
||||||
|
|
||||||
@mixin article-body() {// {{{
|
@mixin article-body() {
|
||||||
/* background-color: #e6e6fa; */
|
/* background-color: #e6e6fa; */
|
||||||
background-color: #cbbeb5;
|
background-color: #cbbeb5;
|
||||||
color: #2d2d2d;
|
color: #2d2d2d;
|
||||||
@@ -74,9 +64,9 @@ $vert-phone-width: 500px;
|
|||||||
@media (max-width: $max-page-width) {
|
@media (max-width: $max-page-width) {
|
||||||
@include side-padding-rem(2);
|
@include side-padding-rem(2);
|
||||||
}
|
}
|
||||||
}// }}}
|
}
|
||||||
|
|
||||||
@mixin a-color($color) {// {{{
|
@mixin a-color($color) {
|
||||||
a {
|
a {
|
||||||
color: $color;
|
color: $color;
|
||||||
&:visited {
|
&:visited {
|
||||||
@@ -86,25 +76,16 @@ $vert-phone-width: 500px;
|
|||||||
color: $color;
|
color: $color;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}// }}}
|
|
||||||
|
|
||||||
@mixin a-no-underline() {// {{{
|
|
||||||
a {
|
|
||||||
text-decoration: none;
|
|
||||||
&:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
// }}} mixins //
|
// }}} mixins //
|
||||||
|
|
||||||
// general elements {{{ //
|
// general elements {{{ //
|
||||||
|
|
||||||
$background-color: #2d2d2d;
|
// $background-color: #2d2d2d;
|
||||||
$color: #f2f0ec;
|
// $color: #f2f0ec;
|
||||||
// $background-color: white;
|
$background-color: white;
|
||||||
// $color: black;
|
$color: black;
|
||||||
|
|
||||||
body {
|
body {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@@ -112,7 +93,7 @@ body {
|
|||||||
color: $color;
|
color: $color;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
// font-size: 100%;
|
// font-size: 100%;
|
||||||
font-size: 15px;
|
font-size: 1.1em;
|
||||||
/* font-family: 'Source Code Pro', monospace; */
|
/* font-family: 'Source Code Pro', monospace; */
|
||||||
font-family: 'Hack', monospace;
|
font-family: 'Hack', monospace;
|
||||||
display: flex;
|
display: flex;
|
||||||
@@ -128,6 +109,10 @@ body {
|
|||||||
margin-right: auto;
|
margin-right: auto;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
|
|
||||||
|
.copyright {
|
||||||
|
@include a-color(#747369);
|
||||||
|
}
|
||||||
|
|
||||||
@media (max-width: $max-page-width) {
|
@media (max-width: $max-page-width) {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
@@ -168,68 +153,22 @@ header {
|
|||||||
}
|
}
|
||||||
|
|
||||||
footer {
|
footer {
|
||||||
// base {{{ //
|
|
||||||
|
|
||||||
@include a-color(#747369);
|
|
||||||
// background-color: #393939;
|
|
||||||
// max-width: $max-page-width;
|
|
||||||
margin-top: 2rem;
|
margin-top: 2rem;
|
||||||
$vertical-margin: .2em;
|
margin-bottom: 1rem;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 0.8em;
|
font-size: 0.9em;
|
||||||
color: #747369;
|
color: #747369;
|
||||||
// bottom: 0;
|
// bottom: 0;
|
||||||
// position: absolute;
|
// position: absolute;
|
||||||
// width: 100%;
|
// width: 100%;
|
||||||
|
|
||||||
// }}} base //
|
.container {
|
||||||
|
background-color: #393939;
|
||||||
.container {// {{{
|
max-width: 62em;
|
||||||
// max-width: $max-page-width;
|
|
||||||
// min-width: $max-page-width;
|
|
||||||
@include auto-center();
|
@include auto-center();
|
||||||
// @include vert-padding-rem(.1);
|
@include vert-padding-rem(.1);
|
||||||
@include side-padding-rem(0);
|
|
||||||
|
|
||||||
#footer-row {
|
|
||||||
// background-color: #393939;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#footer-content {
|
|
||||||
$side-padding: 2.5em;
|
|
||||||
@include vert-padding-rem(.35);
|
|
||||||
border-style: solid;
|
|
||||||
border-width: 1px 0 0 0;
|
|
||||||
border-color: rgba(81, 81, 81, .75);
|
|
||||||
|
|
||||||
#copyright {
|
|
||||||
// padding-left: .85em;
|
|
||||||
padding-left: $side-padding;
|
|
||||||
position: relative;
|
|
||||||
top: 2px;
|
|
||||||
@include a-color(#747369);
|
|
||||||
}
|
|
||||||
|
|
||||||
#social-icons {
|
|
||||||
position: relative;
|
|
||||||
padding-right: $side-padding;
|
|
||||||
// padding-right: .9em;
|
|
||||||
@include a-no-underline();
|
|
||||||
|
|
||||||
img {
|
|
||||||
height: 1.5em;
|
|
||||||
@include vert-margin-rem(.2);
|
|
||||||
padding-left: .5em;
|
|
||||||
opacity: .6;
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
@media (max-width: $max-page-width) {
|
@media (max-width: $max-page-width) {
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
@@ -256,20 +195,8 @@ p {
|
|||||||
margin-bottom: 1rem;
|
margin-bottom: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 {
|
h1 { font-size: 2rem }
|
||||||
font-size: 2rem;
|
h2 { font-size: 1.5rem }
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
font-size: 1.75rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
h2 {
|
|
||||||
font-size: 1.5rem;
|
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
font-size: 1.4rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
h3 { font-size: 1.25rem }
|
h3 { font-size: 1.25rem }
|
||||||
h4 { font-size: 1rem }
|
h4 { font-size: 1rem }
|
||||||
h5 { font-size: .875rem }
|
h5 { font-size: .875rem }
|
||||||
@@ -296,6 +223,10 @@ header {// {{{
|
|||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
|
footer {// {{{
|
||||||
|
@include a-color(#747369);
|
||||||
|
}// }}}
|
||||||
|
|
||||||
.page-not-found {// {{{
|
.page-not-found {// {{{
|
||||||
h1 {
|
h1 {
|
||||||
text-align: center;
|
text-align: center;
|
||||||
@@ -322,12 +253,11 @@ header {// {{{
|
|||||||
|
|
||||||
#homepage {// {{{
|
#homepage {// {{{
|
||||||
#about {
|
#about {
|
||||||
font-size: 1.1rem;
|
font-size: 1.25rem;
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
margin-top: 1.25rem;
|
margin-top: 1.25rem;
|
||||||
// font-size: 2rem;
|
font-size: 2rem;
|
||||||
font-size: 1.9rem;
|
|
||||||
color: $base-yellow;
|
color: $base-yellow;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
@@ -485,117 +415,83 @@ header {// {{{
|
|||||||
} */// }}}
|
} */// }}}
|
||||||
|
|
||||||
#print-icon {// {{{
|
#print-icon {// {{{
|
||||||
|
display: none;
|
||||||
float: right;
|
float: right;
|
||||||
|
|
||||||
img {
|
img {
|
||||||
height: 2em !important;
|
height: 1.75em;
|
||||||
position: absolute;
|
position: relative;
|
||||||
top: 1em;
|
top: 1em;
|
||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
#contact-info {// {{{
|
#contact-info {// {{{
|
||||||
@include side-margin-em(0);
|
@include vert-padding-rem(0.5);
|
||||||
@include side-padding-rem(0);
|
display: flex;
|
||||||
// @include vert-padding-rem(0.5);
|
align-content: center;
|
||||||
@include a-color($base-sky-blue);
|
// font-size: 1.25em;
|
||||||
width: 100%;
|
|
||||||
// @media (min-width: 1200px) {
|
|
||||||
// .container{
|
|
||||||
// min-width: $max-page-width;
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
font-size: .9em;
|
div {
|
||||||
|
flex-grow: 1;
|
||||||
.row {
|
|
||||||
// flex-grow: 1;
|
|
||||||
color: $base05;
|
color: $base05;
|
||||||
|
|
||||||
img {
|
img {
|
||||||
height: 1em;
|
height: 1em;
|
||||||
// @media (max-width: $phone-width) {
|
|
||||||
// height: 1.5em;
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
div[class^="col"] {
|
|
||||||
@include side-padding-rem(0);
|
|
||||||
// text-align: center;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.url-info {
|
|
||||||
margin-left: 5px;
|
|
||||||
// position: relative;
|
|
||||||
// left: -8px;
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
// display: none;
|
|
||||||
// font-size: 10px;
|
|
||||||
font-size: .8em;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#email {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
#website {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
|
@page {
|
||||||
|
size: letter;
|
||||||
|
}
|
||||||
|
// @media print {
|
||||||
|
// @page {
|
||||||
|
// margin: 0;
|
||||||
|
// size: letter;
|
||||||
|
// }
|
||||||
|
|
||||||
|
// body {
|
||||||
|
// padding: 1in;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
#resume {// {{{
|
#resume {// {{{
|
||||||
a {// {{{
|
// font-size: 1.1em;
|
||||||
|
// font-size: 1em;
|
||||||
|
|
||||||
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
&:hover {
|
&:hover {
|
||||||
text-decoration: underline;
|
text-decoration: underline;
|
||||||
}
|
}
|
||||||
}// }}}
|
}
|
||||||
|
|
||||||
h1 {// {{{
|
h1 {
|
||||||
color: $base-orange;
|
color: $base-orange;
|
||||||
margin-top: 1rem;
|
margin-top: .9em;
|
||||||
|
font-size: 1.75em;
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
margin-top: .75rem;
|
|
||||||
}
|
}
|
||||||
}// }}}
|
|
||||||
h2 {// {{{
|
|
||||||
color: $base-orange;
|
|
||||||
margin-top: .5rem;
|
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
.date {
|
||||||
font-size: 1.2em;
|
|
||||||
margin-top: .75rem;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
h4 {// {{{
|
|
||||||
color: $base-yellow;
|
|
||||||
margin-top: .5rem;
|
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
font-size: 1.2em;
|
|
||||||
margin-top: .75rem;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
.date {// {{{
|
|
||||||
padding-top: .8em;
|
|
||||||
float: right;
|
float: right;
|
||||||
color: $base03;
|
color: $base03;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
padding-top: 0em;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
#projects {// {{{
|
|
||||||
h1 {
|
|
||||||
margin-bottom: 3px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.project {// {{{
|
.project {
|
||||||
@include vert-padding-rem(.2);
|
@include vert-padding-rem(.2);
|
||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
color: $base-sky-blue;
|
color: $base-sky-blue;
|
||||||
display: inline;
|
display: inline;
|
||||||
|
font-size: 1.5em;
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
img {
|
||||||
@@ -608,15 +504,7 @@ header {// {{{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.down-triangle {
|
.btn {
|
||||||
// fill: blue;
|
|
||||||
height: 1.2em;
|
|
||||||
position: relative;
|
|
||||||
top: -3px;
|
|
||||||
left: -3px;
|
|
||||||
}
|
|
||||||
|
|
||||||
.btn {// {{{
|
|
||||||
display: inline;
|
display: inline;
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
margin-bottom: 5px;
|
margin-bottom: 5px;
|
||||||
@@ -626,277 +514,13 @@ header {// {{{
|
|||||||
outline: none !important;
|
outline: none !important;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
}
|
}
|
||||||
}// }}}
|
|
||||||
|
|
||||||
// }}}
|
|
||||||
|
|
||||||
// [id^="details-"] {
|
|
||||||
// margin-top: .5em;
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
.institution {
|
|
||||||
color: $base-yellow;
|
|
||||||
font-weight: bold;
|
|
||||||
font-size: 1.1em;
|
|
||||||
margin-bottom: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.title {
|
[id^="details-"] {
|
||||||
font-style: italic;
|
margin-top: .5em;
|
||||||
}
|
|
||||||
|
|
||||||
#education {// {{{
|
|
||||||
.date {
|
|
||||||
padding-top: 0;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
font-size: 14px;
|
|
||||||
// font-size: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.letter {
|
|
||||||
margin-top: 2em;
|
|
||||||
|
|
||||||
img {
|
|
||||||
height: 4.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
h2 {
|
|
||||||
color: $base-red;
|
|
||||||
margin-top: 0em;
|
|
||||||
}
|
|
||||||
|
|
||||||
p {
|
|
||||||
margin-bottom: 1.5em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.no-line-spacing {
|
|
||||||
line-height: .5em;
|
|
||||||
margin-bottom: 2.15em;
|
|
||||||
p {
|
|
||||||
margin-bottom: 1em;
|
|
||||||
}
|
|
||||||
strong {
|
|
||||||
line-height: 1.25em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
#server {// {{{
|
|
||||||
.body {
|
|
||||||
@include vert-padding-rem(.5);
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
|
||||||
margin-bottom: .25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
// table {
|
|
||||||
// margin-top: 1.75em;
|
|
||||||
// }
|
|
||||||
|
|
||||||
th, td {
|
|
||||||
@include vert-padding-rem(.4);
|
|
||||||
@include side-padding-rem(.5);
|
|
||||||
border: 1px solid rgba(160, 159, 147, .5);
|
|
||||||
}
|
|
||||||
|
|
||||||
th {
|
|
||||||
color: $base-orange;
|
|
||||||
text-align: center;
|
|
||||||
font-size: 1.3em;
|
|
||||||
}
|
|
||||||
|
|
||||||
td {
|
|
||||||
font-size: .9em;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
.description {
|
|
||||||
font-size: .85em;
|
|
||||||
}
|
|
||||||
|
|
||||||
.status {
|
|
||||||
text-align: center;
|
|
||||||
|
|
||||||
img {
|
|
||||||
height: 2em;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
#time-info {
|
|
||||||
padding-top: 1em;
|
|
||||||
font-size: .75em;
|
|
||||||
font-style: italic;
|
|
||||||
color: $base03;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
#card {// {{{
|
|
||||||
@include vert-margin-rem(2);
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
font-family: 'Oxygen Mono', monospace;
|
|
||||||
|
|
||||||
.container {// {{{
|
|
||||||
padding-left: 0;
|
|
||||||
padding-right: 0;
|
|
||||||
|
|
||||||
.row {
|
|
||||||
padding-top: 6rem;
|
|
||||||
padding-bottom: 8rem;
|
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
padding-top: 5rem;
|
|
||||||
padding-bottom: 6rem;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
// $card-bg: #e8e6df;
|
|
||||||
$card-bg: $base07;
|
|
||||||
#presentational-container {// {{{
|
|
||||||
margin-top: 3em;
|
|
||||||
margin-bottom: 1em;
|
|
||||||
max-width: $max-page-width;
|
|
||||||
box-shadow: 2px 2px 10px 5px black;
|
|
||||||
// card bg
|
|
||||||
// background-color: #fff;
|
|
||||||
// background-color: #e5e5e5;
|
|
||||||
background-color: $card-bg;
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
#email-full {// {{{
|
|
||||||
font-size: 50px;
|
|
||||||
@media (max-width: $phone-width) {
|
|
||||||
font-size: 40px;
|
|
||||||
}
|
|
||||||
@media (max-width: $vert-phone-width) {
|
|
||||||
font-size: 33px;
|
|
||||||
}
|
|
||||||
|
|
||||||
@include vert-margin-rem(2);
|
|
||||||
height: 7em;
|
|
||||||
|
|
||||||
img {
|
|
||||||
height: .5em;
|
|
||||||
position: absolute;
|
|
||||||
left: -.8em;
|
|
||||||
bottom: -.15em;
|
|
||||||
}
|
|
||||||
|
|
||||||
p { // {{{
|
|
||||||
position: relative;
|
|
||||||
// color: grey;
|
|
||||||
color: #151515;
|
|
||||||
// color: #133337;
|
|
||||||
|
|
||||||
div {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
|
|
||||||
.social {// {{{
|
|
||||||
// display: none;
|
|
||||||
display: inline;
|
|
||||||
white-space: nowrap;
|
|
||||||
position: absolute;
|
|
||||||
// left: 5.5rem;
|
|
||||||
left: 0rem;
|
|
||||||
|
|
||||||
.safari {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
@supports (-webkit-backdrop-filter: blur(1px)) {
|
|
||||||
left: .65rem;
|
|
||||||
.safari {
|
|
||||||
display: inline;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.link-text {
|
|
||||||
position: relative;
|
|
||||||
width: 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
$border-thickness: 8px;
|
|
||||||
@media (max-width: $vert-phone-width) {
|
|
||||||
$border-thickness: 5px;
|
|
||||||
}
|
|
||||||
.link {
|
|
||||||
position: absolute;
|
|
||||||
border-color: black;
|
|
||||||
border-style: solid;
|
|
||||||
border-width: 0 $border-thickness $border-thickness $border-thickness;
|
|
||||||
height: .45em;
|
|
||||||
width: 100%;
|
|
||||||
left: 0;
|
|
||||||
img {
|
|
||||||
position: absolute;
|
|
||||||
left: -1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.link-top {
|
|
||||||
border-width: $border-thickness $border-thickness 0 $border-thickness;
|
|
||||||
|
|
||||||
img {
|
|
||||||
position: absolute;
|
|
||||||
top: -.2em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
&:hover {
|
|
||||||
opacity: .6;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$line-spacing: .65em;
|
|
||||||
#mastodon {
|
|
||||||
top: -$line-spacing * 1.1;
|
|
||||||
border-color: #3088d4;
|
|
||||||
}
|
|
||||||
.linkedin {
|
|
||||||
bottom: -$line-spacing * 1.1;
|
|
||||||
border-color: #0077b7;
|
|
||||||
|
|
||||||
&.linkedin-middle {
|
|
||||||
border-style: dotted;
|
|
||||||
border-width: 0 0 3.5px 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#github {
|
|
||||||
bottom: -$line-spacing * 2.7;
|
|
||||||
}
|
|
||||||
#site {
|
|
||||||
bottom: -$line-spacing * 4.25;
|
|
||||||
border-color: #ff7058;
|
|
||||||
}
|
|
||||||
#email {
|
|
||||||
top: -$line-spacing * 2.65;
|
|
||||||
border-color: #d1d0bf;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
.spacing {
|
|
||||||
opacity: 0;
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
}// }}}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
#letter-home {// {{{
|
|
||||||
|
|
||||||
#letter-instr {
|
|
||||||
text-align: center;
|
|
||||||
margin-top: 1.5em;
|
|
||||||
// margin-top: 25vh;
|
|
||||||
font-size: 1.4em;
|
|
||||||
}
|
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
// TODO: converted up to here
|
// TODO: converted up to here
|
||||||
@@ -905,39 +529,30 @@ header {// {{{
|
|||||||
|
|
||||||
h1.site-title {// {{{
|
h1.site-title {// {{{
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-size: 4.2em;
|
// font-size: 4.8em;
|
||||||
|
font-size: 5.5em;
|
||||||
// color: #66cccc;
|
// color: #66cccc;
|
||||||
color: $base05;
|
color: $base05;
|
||||||
// margin-top: 1rem;
|
margin-top: 1rem;
|
||||||
// margin-bottom: 0.75rem;
|
margin-bottom: 0.5rem;
|
||||||
@include vert-margin-rem(.75);
|
|
||||||
|
|
||||||
@include a-color($base-sky-blue);
|
@include a-color($base-sky-blue);
|
||||||
a {
|
a {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: $max-page-width) {
|
// @media (max-width: $max-page-width) {
|
||||||
font-size: 3em;
|
// font-size: 3em;
|
||||||
}
|
// }
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 3.5em;
|
|
||||||
@include vert-margin-rem(.3);
|
|
||||||
// font-size: 2.5em;
|
|
||||||
// font-size: 2em;
|
// font-size: 2em;
|
||||||
|
// }
|
||||||
.surrounding {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
.hero-logo img {
|
.hero-logo img {
|
||||||
margin-top: 0.5rem;
|
margin-top: 0.5rem;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
// display: none;
|
|
||||||
// width: $max-page-width;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.nav-bar {// {{{
|
.nav-bar {// {{{
|
||||||
@@ -1064,7 +679,6 @@ article.single h1.headline {
|
|||||||
|
|
||||||
@media (max-width: $max-page-width) {
|
@media (max-width: $max-page-width) {
|
||||||
article.single h1.headline {
|
article.single h1.headline {
|
||||||
font-size: 2em;
|
|
||||||
padding-left: 2rem;
|
padding-left: 2rem;
|
||||||
padding-right: 2rem;
|
padding-right: 2rem;
|
||||||
}
|
}
|
||||||
@@ -1079,8 +693,7 @@ article.single section.body h4 { color: #f2777a; }
|
|||||||
article.single section.body h5 { color: #515151; }
|
article.single section.body h5 { color: #515151; }
|
||||||
article.single section.body h6 { color: #747369; }
|
article.single section.body h6 { color: #747369; }
|
||||||
|
|
||||||
// article.single section.body a,a:visited { color: #a06700; }
|
article.single section.body a,a:visited { color: #a06700; }
|
||||||
article.single section.body a,a:visited { color: $base-sky-blue; }
|
|
||||||
|
|
||||||
/* Article Elements */
|
/* Article Elements */
|
||||||
|
|
||||||
|
|||||||
28
config.yaml
@@ -16,33 +16,13 @@ menu:
|
|||||||
main:
|
main:
|
||||||
- name: resume
|
- name: resume
|
||||||
url: /resume
|
url: /resume
|
||||||
weight: 1
|
weight: 5
|
||||||
# - name: posts/
|
# - name: posts/
|
||||||
# url: /posts
|
# url: /posts
|
||||||
# weight: 6
|
# weight: 6
|
||||||
- name: server
|
|
||||||
url: /server
|
|
||||||
weight: 7
|
|
||||||
- name: config
|
|
||||||
url: /config
|
|
||||||
weight: 10
|
|
||||||
- name: card
|
|
||||||
url: /card
|
|
||||||
weight: 15
|
|
||||||
# - name: letter
|
|
||||||
# url: /letter
|
|
||||||
# weight: 17
|
|
||||||
# - name: credits
|
# - name: credits
|
||||||
# url: /credits
|
# url: /credits
|
||||||
# weight: 20
|
# weight: 10
|
||||||
|
# - name: config
|
||||||
|
# url: /config
|
||||||
|
|
||||||
# blackfriday:
|
|
||||||
# plainIDAnchors: true
|
|
||||||
# hrefTargetBlank: true
|
|
||||||
|
|
||||||
disableKinds: ["RSS"]
|
|
||||||
|
|
||||||
markup:
|
|
||||||
goldmark:
|
|
||||||
renderer:
|
|
||||||
unsafe: true
|
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
---
|
|
||||||
title: "Digital Card"
|
|
||||||
date: 2019-02-11T07:50:51-05:00
|
|
||||||
draft: false
|
|
||||||
---
|
|
||||||
@@ -1,26 +1,24 @@
|
|||||||
---
|
---
|
||||||
title: "Linux Config"
|
title: "Config"
|
||||||
date: 2019-04-26
|
date: 2019-02-07T05:05:11-05:00
|
||||||
draft: false
|
draft: true
|
||||||
layout: single
|
|
||||||
---
|
---
|
||||||
<!--- Intro {{{ -->
|
<!--- Intro {{{ -->
|
||||||
|
# Kevin's Linux Setup
|
||||||
|
|
||||||

|

|
||||||
*Screenshot from my dual-monitor setup.*
|
*Screenshot from my dual-monitor setup.*
|
||||||
|
|
||||||
This [repository][lc-repo] contains the dotfiles to increase my workflow
|
This repository contains the dotfiles to increase my workflow efficiency. They
|
||||||
efficiency. They are also for my Linux [rice][ricing_explanation].
|
are also for my Linux
|
||||||
|
[rice](https://www.reddit.com/r/unixporn/comments/3iy3wd/stupid_question_what_is_ricing/cukxwog/).
|
||||||
[lc-repo]: https://git.kevin-mok.com/Kevin-Mok/linux-config
|
|
||||||
[ricing_explanation]: https://www.reddit.com/r/unixporn/comments/3iy3wd/stupid_question_what_is_ricing/cukxwog/
|
|
||||||
<!--- }}} Intro -->
|
<!--- }}} Intro -->
|
||||||
|
|
||||||
<!--- Main Programs {{{ -->
|
<!--- Main Programs {{{ -->
|
||||||
## Main Programs
|
## Main Programs
|
||||||
* **OS**: [Arch Linux](https://www.archlinux.org/) ([packages](txt/nzxt-pkgs.txt))
|
* **OS**: [Arch Linux](https://www.archlinux.org/) ([packages](txt/nzxt-pkgs.txt))
|
||||||
```
|
```
|
||||||
$ systemd-analyze
|
> systemd-analyze
|
||||||
Startup finished in 2.341s (kernel) + 1.085s (userspace) = 3.426s
|
Startup finished in 2.341s (kernel) + 1.085s (userspace) = 3.426s
|
||||||
graphical.target reached after 1.085s in userspace
|
graphical.target reached after 1.085s in userspace
|
||||||
```
|
```
|
||||||
@@ -34,9 +32,8 @@ efficiency. They are also for my Linux [rice][ricing_explanation].
|
|||||||
<!--- Setup {{{ -->
|
<!--- Setup {{{ -->
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
I use [chezmoi] to manage varying configs for different machines with
|
I use
|
||||||
a single branch.
|
[Stow](http://brandon.invergo.net/news/2012-05-26-using-gnu-stow-to-manage-your-dotfiles.html)
|
||||||
|
to symbolically link the configs/dotfiles.
|
||||||
[chezmoi]: https://github.com/twpayne/chezmoi
|
|
||||||
|
|
||||||
<!--- }}} Setup -->
|
<!--- }}} Setup -->
|
||||||
|
|||||||
5
content/credits/_index.md
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
---
|
||||||
|
title: "Credits"
|
||||||
|
date: 2019-02-11T03:10:25-05:00
|
||||||
|
draft: true
|
||||||
|
---
|
||||||
14
content/posts/server-apps.md
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
title: "Server Apps"
|
||||||
|
date: 2019-09-03T12:31:45-04:00
|
||||||
|
draft: true
|
||||||
|
---
|
||||||
|
- Baikal
|
||||||
|
- Gitea
|
||||||
|
- Synapse
|
||||||
|
- Taskserver
|
||||||
|
- haste-server
|
||||||
|
- liteshort
|
||||||
|
- personal site
|
||||||
|
- spv
|
||||||
|
- twem
|
||||||
@@ -3,101 +3,93 @@ title: "Resume"
|
|||||||
date: 2019-02-11T07:50:51-05:00
|
date: 2019-02-11T07:50:51-05:00
|
||||||
draft: false
|
draft: false
|
||||||
---
|
---
|
||||||
{{% resume/section "Work Experience" %}}<!--- {{{ -->
|
{{% resume/section overview %}}<!--- {{{ -->
|
||||||
|
|
||||||
{{% resume/education name="Red Hat"
|
I am a 3<sup>rd</sup> year CS student and enthusiast of all things Linux
|
||||||
title="Cloud/Software Engineer Intern" date="May 2020 — Aug 2021" %}}
|
and FOSS. I am looking for an internship to fully dedicate myself to that
|
||||||
- Reduced deployment time by **66%** by implementing ability to
|
will test my abilities, provide the opportunity to gain valuable knowledge
|
||||||
deploy locally-compiled binaries onto **Kubernetes**/**OpenShift**
|
and experience and jumpstart my career with a solid foundation.
|
||||||
using only command-line.
|
|
||||||
- Implemented ability for Kubernetes operator to fetch data
|
|
||||||
from a deployed service and update config with data.
|
|
||||||
- Refactored probes to have default values assigned based on
|
|
||||||
deployed YAML while also fixing reconciliation issues.
|
|
||||||
- Automated the promotion and release process
|
|
||||||
as part of the **Jenkins** release pipeline.
|
|
||||||
- Wrote documentation on how to get started with the project to onboard new
|
|
||||||
developers and mentored the incoming intern.
|
|
||||||
- Presented a talk based on my experience called "8 Things I
|
|
||||||
Learned About Software Engineering" to an audience of 75+
|
|
||||||
in a conference for internship seekers.
|
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
{{% resume/section projects %}}<!--- {{{ -->
|
{{% resume/section projects %}}<!--- {{{ -->
|
||||||
|
|
||||||
<!--- Astronofty {{{ -->
|
<!--- Spotify Graphs {{{ -->
|
||||||
|
|
||||||
{{% resume/project name="Astronofty"
|
{{% resume/project name="Spotify Visualizer"
|
||||||
url="https://github.com/Kevin-Mok/astronofty" date="Jan 2023"
|
url="https://github.com/Kevin-Mok/spotify-lib-vis" date="July 2018" show="true" %}}
|
||||||
|
|
||||||
|
- Web app that scans your Spotify library using their API to produce
|
||||||
|
[**d3** graphs][d3 graph examples] to visualize the artists, genres and
|
||||||
|
features of tracks in your library.
|
||||||
|
- Can also keep track of your listening history. Currently runs as a `cron`
|
||||||
|
job on my local machine to keep track of my own.
|
||||||
|
- Uses __Django__ and __PostgreSQL__ for back-end.
|
||||||
|
|
||||||
|
[d3 graph examples]: https://github.com/d3/d3/wiki/Gallery
|
||||||
|
|
||||||
|
{{% /resume/project %}}
|
||||||
|
|
||||||
|
<!--- Spotify Graphs }}} -->
|
||||||
|
|
||||||
|
<!--- Grocery Finder {{{ -->
|
||||||
|
|
||||||
|
{{% resume/project name="Grocery Finder"
|
||||||
|
url="https://github.com/Kevin-Mok/grocery-finder" date="April 2019"
|
||||||
show="true" %}}
|
show="true" %}}
|
||||||
|
|
||||||
- Created for a 36 hour hackathon (UofTHacks X) where it **came 2nd overall**.
|
- Proof of concept for a web app that finds the best supermarket for your needs.
|
||||||
- Created and deployed a smart contract with **Solidity** on
|
- Responsive front-end using **Bootstrap**. Uses **Node.js** and
|
||||||
the Ethereum blockchain to create/buy/sell NFT's
|
**MongoDB** for back-end.
|
||||||
using MetaMask.
|
- Currently deployed on [**Heroku**][Grocery Finder Heroku].
|
||||||
- Wrote a **React** hook to fetch and show listed NFT's, NFT details and owned NFT's.
|
- Took on role as project leader to prioritize and delegate tasks
|
||||||
- Used API to synchronously upload images and metadata to IPFS.
|
while
|
||||||
|
also implementing a majority of the core features.
|
||||||
|
|
||||||
|
[Grocery Finder Heroku]: http://www.grocery-finder.ml
|
||||||
|
|
||||||
{{% /resume/project %}}
|
{{% /resume/project %}}
|
||||||
|
|
||||||
<!--- Astronofty }}} -->
|
<!--- Grocery Finder }}} -->
|
||||||
|
|
||||||
<!--- Rarity Surf {{{ -->
|
<!--- ParsaFood {{{ -->
|
||||||
|
|
||||||
{{% resume/project name="Rarity Surf"
|
{{% resume/project name="ParsaFood"
|
||||||
date="Oct 2021" show="true" %}}
|
url="https://github.com/Kevin-Mok/ParsaFood" date="Feb. 2018"
|
||||||
|
show="true" %}}
|
||||||
|
|
||||||
- Web app to give rarity rankings to NFT's within minutes of their metadata being revealed and check which are listed (based on rarity and price filters) on the OpenSea marketplace using their API.
|
- **Android** app that reads ingredient labels and detects any dietary
|
||||||
- Reverse engineered the ranking algorithm to match the
|
restrictions/allergies.
|
||||||
leading rarity ranking site's rankings (scraped using
|
- Made during a 24-hour [food-themed hackathon][Platterz Hackathon event]
|
||||||
Selenium) with a **discrepancy of <0.25%**.
|
in a group with two other members. Came in 2<sup>nd</sup> place and won
|
||||||
- Used app to frontrun purchases of **top 5%** rarity NFT's
|
an [Oculus Rift][Oculus Rift Amazon].
|
||||||
against competing buyers.
|
|
||||||
- Wrote **Django** backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
|
[Parsafood repo]: https://github.com/Kevin-Mok/ParsaFood
|
||||||
- Wrote **React** frontend with hooks to dynamically load rarity data. Styled with Tailwind.
|
[Parsafood motivation]: https://github.com/Kevin-Mok/ParsaFood#motivation
|
||||||
|
[Platterz Hackathon event]: https://www.eventbrite.com/e/platterz-hackathon-tickets-42682237722
|
||||||
|
[Oculus Rift Amazon]: https://www.amazon.ca/Oculus-Rift-Windows-VR-Headset/dp/B00VF0IXEY/ref=sr_1_1_sspa?ie=UTF8&qid=1520422949&sr=8-1-spons&keywords=oculus+rift&psc=1
|
||||||
|
|
||||||
{{% /resume/project %}}
|
{{% /resume/project %}}
|
||||||
|
|
||||||
<!--- Rarity Surf }}} -->
|
<!--- ParsaFood }}} -->
|
||||||
|
|
||||||
<!--- DigitalOcean {{{ -->
|
<!--- TrapBot {{{ -->
|
||||||
|
|
||||||
{{% resume/project name="Personal Server"
|
{{% resume/project name="TrapBot"
|
||||||
url="https://kevin-mok.com/server/" date="Aug. 2019 — present" show="true" %}}
|
url="https://github.com/Kevin-Mok/TrapBot" date="March 2018" %}}
|
||||||
|
|
||||||
- Deployed various web apps with backends using NGINX on a Debian/**Linux** server.
|
- reddit bot that looks for comments with song names and responds with
|
||||||
- Wrote a [**JavaScript** script][server script] and [systemd service][systemd service]/[timer]
|
their respective SoundCloud links.
|
||||||
to display the uptime of my pages every hour.
|
- Uses __Python__ API wrappers for SoundCloud and reddit.
|
||||||
- Monitored system resources and performed system maintenance using tmux.
|
|
||||||
|
|
||||||
[server script]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-status.js
|
|
||||||
[systemd service]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service
|
|
||||||
[timer]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.timer
|
|
||||||
|
|
||||||
{{% /resume/project %}}
|
{{% /resume/project %}}
|
||||||
|
|
||||||
<!--- DigitalOcean Droplet }}} -->
|
<!--- Grocery Finder }}} -->
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
|
||||||
|
|
||||||
{{% resume/section skills %}}<!--- {{{ -->
|
|
||||||
|
|
||||||
- **JavaScript**, **React**,**Python**, Go, Bash, Solidity, C, **Django**, Node.js, PostgreSQL, **Linux**, **Git**, **Command Line**
|
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
{{% resume/section education %}}<!--- {{{ -->
|
{{% resume/section education %}}<!--- {{{ -->
|
||||||
|
|
||||||
{{% resume/education name="University of Toronto"
|
- **University of Toronto**: Computer Science Specialist <div class="date">2017-2021</div>
|
||||||
title="Computer Science Specialist — 3.84 GPA (CS)" date="2018 — 2023" %}}
|
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
{{% resume/section "References" %}}<!--- {{{ -->
|
|
||||||
|
|
||||||
{{% resume/references title="See my LinkedIn (Kev-Mok) for references from my Red Hat managers/mentee and a startup client." %}}
|
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
|
||||||
|
|
||||||
<!-- vim: fdm=marker -->
|
|
||||||
|
|||||||
34
content/resume/archived.txt
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
<!--- TrapBot {{{ -->
|
||||||
|
|
||||||
|
{{% resume/project name="TrapBot"
|
||||||
|
url="https://github.com/Kevin-Mok/TrapBot" date="March 2018" %}}
|
||||||
|
|
||||||
|
- reddit bot that looks for comments with song names and responds with
|
||||||
|
their respective SoundCloud links.
|
||||||
|
- Received positive feedback from users who saw the bot's posts.
|
||||||
|
- Uses __Python__ API wrappers for SoundCloud and reddit.
|
||||||
|
|
||||||
|
{{% /resume/project %}}
|
||||||
|
|
||||||
|
<!--- Grocery Finder }}} -->
|
||||||
|
|
||||||
|
<!--- Super ADA Bros. {{{ -->
|
||||||
|
|
||||||
|
{{% resume/project name="Super ADA Bros"
|
||||||
|
url="https://github.com/Kevin-Mok/SuperADABros" date="May 2019" %}}
|
||||||
|
|
||||||
|
- Clone of Super Mario Bros 1-1, but Mario is mobility-impaired and
|
||||||
|
uses ramps to get through the level.
|
||||||
|
- Able to be played using only head movement by getting input from
|
||||||
|
a
|
||||||
|
face-tracking script (**OpenCV**).
|
||||||
|
- Implemented in [**Godot**][Godot site], an open-source game engine.
|
||||||
|
- Made during a 24-hour [accessibility-themed hackathon][PC Hacks event].
|
||||||
|
|
||||||
|
[PC Hacks event]: https://pchacks19.devpost.com/
|
||||||
|
[Godot site]: https://godotengine.org
|
||||||
|
|
||||||
|
{{% /resume/project %}}
|
||||||
|
|
||||||
|
<!--- }}} -->
|
||||||
|
|
||||||
@@ -1,4 +1,7 @@
|
|||||||
- bg colors
|
- bg colors
|
||||||
- site title max width
|
- site title max width
|
||||||
- switch project shortcode
|
- font size
|
||||||
- rm details top margin
|
- resume
|
||||||
|
- details top margin
|
||||||
|
- print icon
|
||||||
|
- project shortcode
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
---
|
|
||||||
title: "Server Apps"
|
|
||||||
date: 2019-09-22
|
|
||||||
draft: false
|
|
||||||
layout: single
|
|
||||||
js: ["server-table"]
|
|
||||||
---
|
|
||||||
Here is a list of apps that I am running on my [DigitalOcean
|
|
||||||
droplet][do-droplet]. Their [statuses] are updated every hour using a
|
|
||||||
[Node.js script][update-script] and a [systemd service]/[timer].
|
|
||||||
|
|
||||||
[do-droplet]: https://www.digitalocean.com/products/droplets/
|
|
||||||
[statuses]: https://kevin-mok.com/server-apps.json
|
|
||||||
[systemd service]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.service
|
|
||||||
[timer]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-pages.timer
|
|
||||||
[update-script]: https://git.kevin-mok.com/Kevin-Mok/server-pages/src/branch/master/server-status.js
|
|
||||||
13
ideas.md
@@ -1,6 +1,8 @@
|
|||||||
# Large
|
# Large
|
||||||
- resume
|
- resume
|
||||||
- make old proj's displayable
|
- make old proj's displayable
|
||||||
|
- change to km.com URL's
|
||||||
|
- change URL param to repo name
|
||||||
- spv
|
- spv
|
||||||
- screenshots
|
- screenshots
|
||||||
- setup instructions
|
- setup instructions
|
||||||
@@ -20,20 +22,21 @@
|
|||||||
- cd/ls diff. pages
|
- cd/ls diff. pages
|
||||||
|
|
||||||
# Medium
|
# Medium
|
||||||
- contact page
|
- socials in footer
|
||||||
- icons
|
- icons
|
||||||
- Gitea
|
|
||||||
- GitHub
|
- GitHub
|
||||||
|
- Fosstodon
|
||||||
- email
|
- email
|
||||||
- copy button
|
- tooltip pop-up with email and clipboard button/link
|
||||||
|
- [Pure CSS Tooltips](https://www.youtube.com/watch?v=hAeQ8CqrGDY)
|
||||||
|
- use position element
|
||||||
- [Copying Text to Clipboard in HTML & JavaScript](https://www.youtube.com/watch?v=NHg6jQajaMs)
|
- [Copying Text to Clipboard in HTML & JavaScript](https://www.youtube.com/watch?v=NHg6jQajaMs)
|
||||||
- [Native Browser Copy To Clipboard](https://css-tricks.com/native-browser-copy-clipboard/)
|
- [Native Browser Copy To Clipboard](https://css-tricks.com/native-browser-copy-clipboard/)
|
||||||
- Fosstodon
|
|
||||||
- pages
|
- pages
|
||||||
- fav. apps
|
- fav. apps
|
||||||
- linux config
|
- linux config
|
||||||
- neofetch on all devices
|
|
||||||
- credits
|
- credits
|
||||||
|
- contact?
|
||||||
- site stats
|
- site stats
|
||||||
- size
|
- size
|
||||||
- load time
|
- load time
|
||||||
|
|||||||
@@ -1,69 +0,0 @@
|
|||||||
{{ partial "base/header.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/site-title.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/nav-bar.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/base16-logo.html" . }}
|
|
||||||
|
|
||||||
<main role="main" id="card">
|
|
||||||
<div id="presentational-container" class="container">
|
|
||||||
<div class="row text-center h-100 my-auto">
|
|
||||||
<div id="email-full" class="h-100 mx-auto">
|
|
||||||
<p class="text-center">
|
|
||||||
<nobr>
|
|
||||||
me@kevin-mok.com
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me</span><span class="link-text">@kevi<span
|
|
||||||
class="safari">n</span>
|
|
||||||
<a href="https://fosstodon.org/@Kevin"
|
|
||||||
target="_blank" id="mastodon" class="link link-top">
|
|
||||||
<img src="https://kevin-mok.com/img/social/mastodon.svg" alt=""/>
|
|
||||||
</a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me@</span><span class="link-text">ke<span
|
|
||||||
class="safari">v</span>
|
|
||||||
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank"
|
|
||||||
target="_blank" class="link linkedin linkedin-left">
|
|
||||||
<img src="https://kevin-mok.com/img/social/linkedin.svg" alt=""/>
|
|
||||||
</a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me@kevin</span><span class="link-text">-mo<span
|
|
||||||
class="safari">k</span>
|
|
||||||
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank" class="link linkedin linkedin-left"></a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me@kev</span><span class="link-text">i<span
|
|
||||||
class="safari">n</span>
|
|
||||||
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank"
|
|
||||||
class="link linkedin linkedin-middle"></a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me@</span><span class="link-text">kevin-mo<span
|
|
||||||
class="safari">k</span>
|
|
||||||
<a href="https://github.com/Kevin-Mok" target="_blank" id="github" class="link">
|
|
||||||
<img src="https://kevin-mok.com/img/social/github.svg" alt=""/>
|
|
||||||
</a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="spacing">
|
|
||||||
me@</span><span class="link-text">kevin-mok.co<span
|
|
||||||
class="safari">m</span>
|
|
||||||
<a href="https://kevin-mok.com/" target="_blank" id="site" class="link">
|
|
||||||
<img src="https://kevin-mok.com/img/resume/link.svg" alt=""/>
|
|
||||||
</a></span>
|
|
||||||
</span>
|
|
||||||
<span class="social"><span class="link-text">me@kevin-mok.co<span class="safari"> </span>
|
|
||||||
<a href="mailto:me@kevin-mok.com" target="_blank" id="email" class="link link-top">
|
|
||||||
<img src="https://kevin-mok.com/img/resume/envelope.svg" alt=""/>
|
|
||||||
</a></span>
|
|
||||||
</span>
|
|
||||||
</nobr>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
{{ partial "base/footer.html" . }}
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
{{ partial "base/header.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/site-title.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/nav-bar.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/base16-logo.html" . }}
|
|
||||||
|
|
||||||
<main role="main" id="letter-home">
|
|
||||||
<!-- <h1 class="list-title">{{ .Title }}</h1> -->
|
|
||||||
<h4 id="letter-instr">Please enter the full URL that I provided
|
|
||||||
for your personalized cover letter. :)</h4>
|
|
||||||
|
|
||||||
<div id="resume" class="letter">
|
|
||||||
{{ .Content }}
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
{{ partial "base/footer.html" . }}
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
{{ partial "base/header.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/site-title.html" . }}
|
|
||||||
|
|
||||||
{{ partial "resume/contact-info.html" . }}
|
|
||||||
|
|
||||||
<div id="resume" class="letter">
|
|
||||||
{{ .Content }}
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,55 +1,17 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
{{- range .Params.js }}
|
|
||||||
<script src="/{{ . }}.js"></script>
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
<!-- <span class="copyright">© {{ .Site.LastChange.Year }} {{ .Site.Title }} - <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></span> -->
|
<!-- <span class="copyright">© {{ .Site.LastChange.Year }} {{ .Site.Title }} - <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a></span> -->
|
||||||
<div id="footer-row" class="row justify-content-center">
|
<span class="copyright">
|
||||||
<span id="footer-content" class="name">
|
© {{ now.Year }} {{ .Site.Title }} · <a rel="license"
|
||||||
<span id="copyright" class="col-xs-6">
|
href="http://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a> ·
|
||||||
© {{ now.Year }} {{ .Site.Title }} ·
|
<a href="{{ "credits" | relURL }}">Credits</a>
|
||||||
<!-- <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a> · -->
|
|
||||||
<!-- <a href="{{ "credits" | relURL }}">Credits</a> · -->
|
|
||||||
</span>
|
|
||||||
<span id="social-icons" class="col-xs-4">
|
|
||||||
<a href="https://github.com/Kevin-Mok" target="_blank">
|
|
||||||
<img src="{{ "img/social/github.svg" | relURL }}"
|
|
||||||
alt="github-logo">
|
|
||||||
</a>
|
|
||||||
<a href="https://git.kevin-mok.com/Kevin-Mok?tab=activity" target="_blank">
|
|
||||||
<img src="{{ "img/social/gitea.svg" | relURL }}" alt="gitea-logo">
|
|
||||||
</a>
|
|
||||||
·
|
|
||||||
<a href="https://twitter.com/Kev_Mok" target="_blank">
|
|
||||||
<img src="{{ "img/social/twitter.svg" | relURL }}"
|
|
||||||
alt="twitter-logo">
|
|
||||||
</a>
|
|
||||||
<a rel="me" href="https://fosstodon.org/@Kevin" target="_blank">
|
|
||||||
<img src="{{ "img/social/mastodon.svg" | relURL }}"
|
|
||||||
alt="mastodon-logo">
|
|
||||||
</a>
|
|
||||||
<a href="https://www.reddit.com/u/Kevin-Mok" target="_blank">
|
|
||||||
<img src="{{ "img/social/reddit.svg" | relURL }}"
|
|
||||||
alt="reddit-logo">
|
|
||||||
</a>
|
|
||||||
.
|
|
||||||
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank">
|
|
||||||
<img src="{{ "img/social/linkedin.svg" | relURL }}" alt="linkedin-logo">
|
|
||||||
</a>
|
|
||||||
<a href="mailto:me@kevin-mok.com" target="_blank">
|
|
||||||
<img src="{{ "img/social/email.svg" | relURL }}"
|
|
||||||
alt="envelope">
|
|
||||||
</a>
|
|
||||||
</span>
|
|
||||||
<span class="col-xs-2">
|
|
||||||
</span>
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -9,10 +9,10 @@
|
|||||||
{{- with $.Param "author" }}
|
{{- with $.Param "author" }}
|
||||||
<meta name="author" content="{{ . }}">
|
<meta name="author" content="{{ . }}">
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{ hugo.Generator }}
|
{{ .Hugo.Generator }}
|
||||||
<meta name="google-site-verification" content="3aZhrY5bFgQY0HY2DNNUhbkuIfVEcwkrQHnbJd8jCCQ" />
|
<meta name="google-site-verification" content="3aZhrY5bFgQY0HY2DNNUhbkuIfVEcwkrQHnbJd8jCCQ" />
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
<!-- <script src="https://cdn.khkm.tk/live.js" charset="utf-8"></script> -->
|
<script src="http://livejs.com/live.js" charset="utf-8"></script>
|
||||||
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
|
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
|
||||||
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
|
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
|
||||||
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<h1 class="site-title">
|
<h1 class="site-title">
|
||||||
<span class="surrounding">[</span><a href="{{ .Site.BaseURL }}"><span class="base08">K</span><span
|
[<a href="{{ .Site.BaseURL }}"><span class="base08">K</span><span
|
||||||
class="base0f">e</span><span class="base09">v</span><span
|
class="base0f">e</span><span class="base09">v</span><span
|
||||||
class="base0a">i</span><span class="base0b">n </span><span
|
class="base0a">i</span><span class="base0b">n </span><span
|
||||||
class="base0c">M</span><span class="base0d">o</span><span
|
class="base0c">M</span><span class="base0d">o</span><span
|
||||||
class="base0e">k</span></a><span class="surrounding">] # _</span>
|
class="base0e">k</span></a>] # _
|
||||||
</h1>
|
</h1>
|
||||||
|
|||||||
@@ -1,22 +1,10 @@
|
|||||||
<div id="about">
|
<div id="about">
|
||||||
<h2>Welcome to my site!</h2>
|
<h2>Welcome to my site!</h2>
|
||||||
<p>
|
<p>
|
||||||
I'm Kevin Mok. Here are a few things about myself!
|
I'm Kevin Mok - a 2<sup>nd</sup> year Computer Science
|
||||||
<ul>
|
student at the University of Toronto, and I'm greatly interested in all things Linux and
|
||||||
<li>I'm an Ex-Cloud Engineer Intern at
|
|
||||||
<a href="https://www.redhat.com/" target="_blank">Red Hat</a>.
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
I'm a Computer Science student at the University of
|
|
||||||
Toronto, graduating at the end of 2023 (currently
|
|
||||||
looking for a full-time position!).
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
I'm greatly interested in all things Linux and
|
|
||||||
<a href="https://www.gnu.org/philosophy/floss-and-foss.en.html"
|
<a href="https://www.gnu.org/philosophy/floss-and-foss.en.html"
|
||||||
target="_blank">FOSS/FLOSS</a>.
|
target="_blank">FOSS/FLOSS</a>.
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
{{ partial "home/me-equation.html" . }}
|
{{ partial "home/me-equation.html" . }}
|
||||||
|
|||||||
@@ -1,24 +1,24 @@
|
|||||||
<div class="me-equation">
|
<div class="me-equation">
|
||||||
<div class="equation-part">
|
<div class="equation-part">
|
||||||
<a href="https://www.redhat.com/" target="_blank">
|
<a href="https://www.gnu.org/" target="_blank">
|
||||||
<img src="{{ "img/home/red-hat.svg" | relURL }}"
|
<img src="{{ "img/gnu.svg" | relURL }}" id="gnu" alt="gnu-logo">
|
||||||
alt="red-hat-logo">
|
</a>
|
||||||
|
<p>+</p>
|
||||||
|
</div>
|
||||||
|
<div class="equation-part">
|
||||||
|
<a href="https://www.wikiwand.com/en/Arch_Linux" target="_blank">
|
||||||
|
<img src="{{ "img/arch.svg" | relURL }}" alt="linux-logo">
|
||||||
|
<!-- <img src="{{ "img/larbs.png" | relURL }}" alt="linux-logo"> -->
|
||||||
</a>
|
</a>
|
||||||
<p>+</p>
|
<p>+</p>
|
||||||
</div>
|
</div>
|
||||||
<div class="equation-part" id="uoft-part">
|
<div class="equation-part" id="uoft-part">
|
||||||
<a href="https://www.utoronto.ca/" target="_blank">
|
<a href="https://www.utoronto.ca/" target="_blank">
|
||||||
<img src="{{ "img/home/uoft-logo.svg" | relURL }}" alt="uoft-logo">
|
<img src="{{ "img/uoft-logo.svg" | relURL }}" alt="uoft-logo">
|
||||||
</a>
|
</a>
|
||||||
<p>+</p>
|
|
||||||
</div>
|
|
||||||
<div class="equation-part">
|
|
||||||
<a href="https://www.gnu.org/" target="_blank">
|
|
||||||
<img src="{{ "img/home/gnu.svg" | relURL }}" id="gnu" alt="gnu-logo">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<p>=</p>
|
<p>=</p>
|
||||||
|
</div>
|
||||||
<div class="equation-part">
|
<div class="equation-part">
|
||||||
<img src="{{ "img/home/hexatar.png" | relURL }}" id="hexatar" alt="my-avatar">
|
<img src="{{ "img/hexatar.png" | relURL }}" id="hexatar" alt="my-avatar">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,39 +1,15 @@
|
|||||||
<div id="contact-info" class="container">
|
<div id="contact-info">
|
||||||
<div class="row row-top justify-content-center mx-auto">
|
<div id="phone-number">
|
||||||
<div id="phone-number" class="col text-left">
|
<img src="{{ "img/smartphone.svg" | relURL }}"
|
||||||
<a href="tel:647-685-2500" target="_blank">
|
alt="smartphone-icon">:
|
||||||
<img src="{{ "img/resume/smartphone.svg" | relURL }}"
|
<a href="tel:647-685-2500" target="_blank">647-685-2500</a>
|
||||||
alt="smartphone-icon">
|
|
||||||
<span class="url-info">
|
|
||||||
647-685-2500
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div id="linkedin" class="col text-right">
|
|
||||||
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank">
|
|
||||||
<span class="url-info">
|
|
||||||
Kev-Mok
|
|
||||||
</span>
|
|
||||||
<img src="{{ "img/social/linkedin.svg" | relURL }}" alt="linkedin-icon">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="row mx-auto">
|
|
||||||
<div id="email" class="col col-left">
|
|
||||||
<a href="mailto:me@kevin-mok.com" target="_blank">
|
|
||||||
<img src="{{ "img/resume/envelope.svg" | relURL }}" alt="envelope-icon">
|
|
||||||
<span class="url-info">
|
|
||||||
me@kevin-mok.com
|
|
||||||
</span>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
<div id="website" class="col text-right">
|
|
||||||
<a href="https://kevin-mok.com/" target="_blank">
|
|
||||||
<span class="url-info">
|
|
||||||
kevin-mok.com
|
|
||||||
</span>
|
|
||||||
<img src="{{ "img/resume/link.svg" | relURL }}" alt="link-icon">
|
|
||||||
</a>
|
|
||||||
</div>
|
</div>
|
||||||
|
<div id="email">
|
||||||
|
<img src="{{ "img/envelope.svg" | relURL }}" alt="envelope-icon">:
|
||||||
|
<a href="mailto:me@kevin-mok.com">me@kevin-mok.com</a>
|
||||||
|
</div>
|
||||||
|
<div id="website">
|
||||||
|
<img src="{{ "img/link.svg" | relURL }}" alt="link-icon">:
|
||||||
|
<a href="https://kevin-mok.com/">kevin-mok.com</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<div id="print-icon">
|
<div id="print-icon">
|
||||||
<a href="{{ "pdf/kevin-mok-resume.pdf" | relURL }}" target="_blank">
|
<a href="{{ "resume.pdf" | relURL }}" target="_blank">
|
||||||
<img src="{{ "img/resume/printer.svg" | relURL }}" alt="printer-icon">
|
<img src="{{ "img/printer.svg" | relURL }}" alt="printer-icon">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -6,6 +6,8 @@
|
|||||||
|
|
||||||
{{ partial "resume/contact-info.html" . }}
|
{{ partial "resume/contact-info.html" . }}
|
||||||
|
|
||||||
|
{{ partial "base/base16-logo.html" . }}
|
||||||
|
|
||||||
<div id="resume">
|
<div id="resume">
|
||||||
|
|
||||||
{{ .Content }}
|
{{ .Content }}
|
||||||
|
|||||||
@@ -1 +1,4 @@
|
|||||||
User-agent: *
|
User-agent: *
|
||||||
|
|
||||||
|
Allow: /$
|
||||||
|
Disallow: /
|
||||||
|
|||||||
@@ -1,20 +0,0 @@
|
|||||||
{{ partial "base/header.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/site-title.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/nav-bar.html" . }}
|
|
||||||
|
|
||||||
{{ partial "base/base16-logo.html" . }}
|
|
||||||
|
|
||||||
<main role="main" id="server">
|
|
||||||
{{ partial "base/article.html" . }}
|
|
||||||
<table>
|
|
||||||
</table>
|
|
||||||
<div id="time-info">
|
|
||||||
<!-- <p id="last-updated">Last updated: <span id="last-updated-time"></span></p> -->
|
|
||||||
<!-- <p id="server-uptime">Server Uptime: <span id="server-uptime-time"></span></p> -->
|
|
||||||
Last updated: <span id="last-updated-time"></span> Server Uptime: <span id="server-uptime-time">
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
|
|
||||||
{{ partial "base/footer.html" . }}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
<div class="education">
|
|
||||||
<div class="row">
|
|
||||||
<div class="col-8 text-left">
|
|
||||||
<p class="institution">
|
|
||||||
{{ .Get "name" }}
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
<div class="col text-right date">{{ .Get "date" }}</div>
|
|
||||||
</div>
|
|
||||||
<span class="title">
|
|
||||||
{{ .Get "title" }}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
<div id="print-icon">
|
|
||||||
{{ $type := .Get "type" }}
|
|
||||||
{{ $code := .Get "code" }}
|
|
||||||
{{ $pdfName := print "pdf/kevin-mok-" $type "-" $code ".pdf" }}
|
|
||||||
<a href="{{ $pdfName | relURL }}" target="_blank">
|
|
||||||
<img src="{{ "img/resume/printer.svg" | relURL }}" alt="printer-icon">
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
{{ $_hugo_config := `{ "version": 1 }` }}
|
|
||||||
<div class="no-line-spacing">
|
|
||||||
{{ .Inner }}
|
|
||||||
</div>
|
|
||||||
16
layouts/shortcodes/resume/project-site.html
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
<div class="project">
|
||||||
|
<a class="project-link" href="{{ .Get "url" }}" target="_blank">
|
||||||
|
<img src="{{ "img/link.svg" | relURL }}" alt="link-icon">
|
||||||
|
</a>
|
||||||
|
<button class="btn" type="button" data-toggle="collapse"
|
||||||
|
data-target="#{{ .Get "name" | lower | urlize }}-details"
|
||||||
|
aria-expanded="false" aria-controls="{{ .Get "name" | lower | urlize }}-details">
|
||||||
|
<h2 class="project-title">{{ .Get "name" }} ⏷</h2>
|
||||||
|
</button>
|
||||||
|
<div class="date">{{ .Get "date" }}</div>
|
||||||
|
<div class="collapse{{ with .Get "show" }} show{{ end }}" id="{{ .Get "name" | lower | urlize }}-details">
|
||||||
|
<div>
|
||||||
|
{{ .Inner }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
@@ -1,21 +1,11 @@
|
|||||||
<div class="project">
|
<div class="project">
|
||||||
<div class="row project-header">
|
|
||||||
<div class="col-8 text-left">
|
|
||||||
<a class="project-link" href="{{ .Get "url" }}" target="_blank">
|
|
||||||
<img src="{{ "img/resume/link.svg" | relURL }}" alt="link-icon">
|
|
||||||
</a>
|
|
||||||
<button class="btn" type="button" data-toggle="collapse"
|
|
||||||
data-target="#{{ .Get "name" | lower | urlize }}-details"
|
|
||||||
aria-expanded="false" aria-controls="{{ .Get "name" | lower | urlize }}-details">
|
|
||||||
<h2 class="project-title">
|
<h2 class="project-title">
|
||||||
|
<a href="{{ .Get "url" }}" target="_blank">
|
||||||
{{ .Get "name" }}
|
{{ .Get "name" }}
|
||||||
<img class="down-triangle" src="{{ "img/resume/down-triangle.png" | relURL }}" alt="link-icon">
|
</a>
|
||||||
</h2>
|
</h2>
|
||||||
</button>
|
<div class="date">{{ .Get "date" }}</div>
|
||||||
</div>
|
<div class="collapse show" id="details-{{ .Get "name" | lower | urlize }}">
|
||||||
<div class="col-4 text-right date">{{ .Get "date" }}</div>
|
|
||||||
</div>
|
|
||||||
<div class="collapse{{ with .Get "show" }} show{{ end }}" id="{{ .Get "name" | lower | urlize }}-details">
|
|
||||||
<div>
|
<div>
|
||||||
{{ .Inner }}
|
{{ .Inner }}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -1,5 +0,0 @@
|
|||||||
<div class="references">
|
|
||||||
<span>
|
|
||||||
{{ .Get "title" }}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
|
|
||||||
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
|
||||||
{{ range .Data.Pages }}{{ if ne .Params.sitemap_exclude true }}
|
|
||||||
<url>
|
|
||||||
<loc>{{ .Permalink }}</loc>{{ if not .Lastmod.IsZero }}
|
|
||||||
<lastmod>{{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}</lastmod>{{ end }}{{ with .Sitemap.ChangeFreq }}
|
|
||||||
<changefreq>{{ . }}</changefreq>{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
|
|
||||||
<priority>{{ .Sitemap.Priority }}</priority>{{ end }}{{ if .IsTranslated }}{{ range .Translations }}
|
|
||||||
<xhtml:link
|
|
||||||
rel="alternate"
|
|
||||||
hreflang="{{ .Lang }}"
|
|
||||||
href="{{ .Permalink }}"
|
|
||||||
/>{{ end }}
|
|
||||||
<xhtml:link
|
|
||||||
rel="alternate"
|
|
||||||
hreflang="{{ .Lang }}"
|
|
||||||
href="{{ .Permalink }}"
|
|
||||||
/>{{ end }}
|
|
||||||
</url>
|
|
||||||
{{ end }}{{ end }}
|
|
||||||
</urlset>
|
|
||||||
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 132 KiB After Width: | Height: | Size: 132 KiB |
|
Before Width: | Height: | Size: 18 KiB After Width: | Height: | Size: 18 KiB |
@@ -1,18 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<svg xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cc="http://creativecommons.org/ns#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:svg="http://www.w3.org/2000/svg" xmlns="http://www.w3.org/2000/svg" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" id="b6bdd2b4-52ab-488a-9a30-1e6d1d7dd2d4" data-name="Layer 1" viewBox="0 0 192.30001 146" version="1.1" sodipodi:docname="logo.svg" width="192.3" height="146" inkscape:version="0.92.5 (2060ec1f9f, 2020-04-08)">
|
|
||||||
<metadata id="metadata15">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/StillImage"/>
|
|
||||||
<dc:title/>
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<sodipodi:namedview pagecolor="#ffffff" bordercolor="#666666" borderopacity="1" objecttolerance="10" gridtolerance="10" guidetolerance="10" inkscape:pageopacity="0" inkscape:pageshadow="2" inkscape:window-width="1920" inkscape:window-height="1007" id="namedview13" showgrid="false" fit-margin-top="1" fit-margin-right="1" fit-margin-bottom="1" fit-margin-left="1" inkscape:zoom="0.45930043" inkscape:cx="306.89999" inkscape:cy="73" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" inkscape:current-layer="b6bdd2b4-52ab-488a-9a30-1e6d1d7dd2d4"/>
|
|
||||||
<defs id="defs4">
|
|
||||||
<style id="style2">.a737459c-e8c7-4afa-8008-f6cfd15ccda2{fill:#e00;}</style>
|
|
||||||
</defs>
|
|
||||||
<path class="a737459c-e8c7-4afa-8008-f6cfd15ccda2" d="m 128,84 c 12.5,0 30.6,-2.6 30.6,-17.5 a 19.53,19.53 0 0 0 -0.3,-3.4 L 150.9,30.7 C 149.2,23.6 147.7,20.3 135.2,14.1 125.5,9.1 104.4,1 98.1,1 92.2,1 90.5,8.5 83.6,8.5 76.9,8.5 72,2.9 65.7,2.9 c -6,0 -9.9,4.1 -12.9,12.5 0,0 -8.4,23.7 -9.5,27.2 a 6.15,6.15 0 0 0 -0.2,1.9 C 43,53.7 79.3,83.9 128,84 m 32.5,-11.4 c 1.7,8.2 1.7,9.1 1.7,10.1 0,14 -15.7,21.8 -36.4,21.8 C 79,104.5 38.1,77.1 38.1,59 a 18.35,18.35 0 0 1 1.5,-7.3 C 22.8,52.5 1,55.5 1,74.7 1,106.2 75.6,145 134.6,145 c 45.3,0 56.7,-20.5 56.7,-36.7 0,-12.7 -11,-27.1 -30.8,-35.7" id="path8" inkscape:connector-curvature="0" style="fill:#ee0000"/>
|
|
||||||
<path d="m 160.5,72.6 c 1.7,8.2 1.7,9.1 1.7,10.1 0,14 -15.7,21.8 -36.4,21.8 C 79,104.5 38.1,77.1 38.1,59 a 18.35,18.35 0 0 1 1.5,-7.3 l 3.7,-9.1 a 6.15,6.15 0 0 0 -0.2,1.9 c 0,9.2 36.3,39.4 84.9,39.4 12.5,0 30.6,-2.6 30.6,-17.5 A 19.53,19.53 0 0 0 158.3,63 Z" id="path10" inkscape:connector-curvature="0"/>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 2.5 KiB |
BIN
static/img/larbs.png
Normal file
|
After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 1.6 KiB |
116
static/img/linux-icon.svg
Normal file
@@ -0,0 +1,116 @@
|
|||||||
|
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||||
|
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
||||||
|
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
||||||
|
viewBox="0 0 512.002 512.002" style="enable-background:new 0 0 512.002 512.002;" xml:space="preserve">
|
||||||
|
<g>
|
||||||
|
<path style="fill:#FFFFFF;" d="M259.345,110.181c-0.076-0.789-0.112-1.578-0.112-2.369c0-11.578,7.584-20.997,16.903-20.997
|
||||||
|
c9.537,0,17.007,9.223,17.007,20.997c0,2.666-0.401,5.236-1.148,7.61c2.795-4.442,4.412-10.032,4.412-15.892
|
||||||
|
c0-14.079-9-25.535-20.06-25.535c-11.063,0-20.06,11.455-20.06,25.535c0,3.461,0.542,6.849,1.615,10.099
|
||||||
|
C258.369,109.807,258.851,109.992,259.345,110.181z"/>
|
||||||
|
<path style="fill:#FFFFFF;" d="M209.407,87.924c0.604-0.092,1.157-0.134,1.707-0.134c7.418,0,14.069,7.281,15.812,17.311
|
||||||
|
c0.175,1.1,0.285,2.196,0.334,3.277c0.482-0.245,0.972-0.475,1.471-0.688c0.245-1.739,0.364-3.369,0.364-5.006
|
||||||
|
c0-12.986-6.879-23.957-15.019-23.957c-6.933,0-12.775,7.636-14.44,17.95C201.532,91.973,204.993,88.657,209.407,87.924z"/>
|
||||||
|
<path style="fill:#FFFFFF;" d="M349.093,349.859c1.865-7.908,5.575-28.1,2.063-52.525c-4.438-30.87-47.875-126.994-55.35-137.727
|
||||||
|
c-4.36,0.609-15.946,7.304-25.342,12.733c-10.896,6.295-22.166,12.807-29.829,15.019c-1.6,0.453-3.273,0.677-4.997,0.677
|
||||||
|
c-11.199,0-23.32-9.468-31.135-16.926c-1.365,14.472-9.078,32.835-17.423,42.273c-5.271,6.045-9.982,19.854-14.538,33.21
|
||||||
|
c-4.22,12.367-8.583,25.157-13.925,33.592c-10.809,16.842-17.009,49.555-9.144,68.159c3.806,9.018,17.62,19.668,29.807,29.062
|
||||||
|
c14.905,11.491,27.776,21.413,29.196,31.419c1.657,11.831-4.635,18.388-10.927,21.497l15.961,18.263
|
||||||
|
c2.466,0.374,8.405,1.091,17.712,1.091c10.886,0,22.97-0.952,35.907-2.834c31.763-4.705,53.886-30.88,58.261-36.438
|
||||||
|
c0.023-7.363,0.248-40.123,2.396-50.366c0.834-3.945,4.037-10.547,16.136-10.547C345.803,349.488,347.594,349.653,349.093,349.859z
|
||||||
|
"/>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
<path style="fill:#E69629;" d="M210.488,147.081c0.623,2.422,6.136,8.617,14.71,14.242c1.217,0.781,2.359,1.558,3.431,2.286
|
||||||
|
c4.756,3.232,6.871,4.559,10.29,4.098c5.034-0.66,23.579-11.904,31.499-16.706l1.971-1.194c2.949-1.796,5.306-3.023,7.2-4.009
|
||||||
|
c3.75-1.951,4.089-2.266,4.249-2.978c-0.425-1.103-3.926-4.056-10.641-6.364c-2.134-0.764-5.162-1.974-8.67-3.374
|
||||||
|
c-7.589-3.03-17.984-7.176-22.197-7.922c-0.18-0.034-0.349-0.045-0.539-0.045c-3.586,0-10.831,4.499-18.031,11.194
|
||||||
|
C220.211,139.513,213.283,144.92,210.488,147.081z"/>
|
||||||
|
<path style="fill:#E69629;" d="M147.149,395.532c-3.119-5.222-5.815-9.735-7.27-11.984c-5.738-8.931-15.696-18.907-20.442-18.907
|
||||||
|
c-0.416,0-0.635,0.097-0.777,0.181c-2.533,1.442-4.662,5.837-6.723,10.084c-2.847,5.875-6.075,12.535-12.036,16.146
|
||||||
|
c-4.41,2.676-11.152,4.138-17.668,5.555c-4.637,1.007-15.493,3.362-16.003,5.562c-0.703,2.968-0.049,6.033,0.781,9.913
|
||||||
|
c0.977,4.578,2.196,10.274,1.158,17.267c-0.732,4.386-2.063,8.575-3.354,12.627c-1.793,5.637-3.826,12.03-2.073,13.995
|
||||||
|
c2.162,1.909,15.207,4.019,24.731,5.562c11.972,1.937,24.351,3.942,31.932,7.118l2.009,0.846
|
||||||
|
c13.579,5.706,38.854,16.329,51.622,16.329c1.162,0,2.152-0.094,2.951-0.274c2.202-1.482,11.531-8.184,13.284-16.424
|
||||||
|
c2.394-10.619-7.338-23.005-13.349-29.444C169.25,432.519,156.477,411.14,147.149,395.532z"/>
|
||||||
|
<path style="fill:#E69629;" d="M435.761,420.974l-1.556-0.819c-10.688-5.65-16.307-20.984-15.563-32.542
|
||||||
|
c0.139-2.129-0.126-3.78-0.557-5.045c-1.974,3.247-4.793,7.348-8.143,10.697c-5.691,5.692-19.584,11.833-32.105,11.833
|
||||||
|
c-4.67,0-8.927-0.823-12.652-2.448c-12.498-5.451-14.202-21.081-14.234-28.917c-0.185,0.052-0.354,0.112-0.505,0.183
|
||||||
|
c-0.764,2.701-0.024,11.806,0.475,17.935c0.267,3.279,0.542,6.669,0.705,9.78c0.708,13.708-3.658,36.958-7.447,54.049
|
||||||
|
c-3.597,16.732,3.097,28.464,11.224,30.997c0.73,0.232,1.551,0.346,2.453,0.346c7.487,0,19.886-7.749,30.848-19.285
|
||||||
|
c7.788-8.189,25.122-17.04,40.416-24.85c8.622-4.402,17.537-8.956,20.071-11.271c0.564-0.525,0.648-0.819,0.65-0.821
|
||||||
|
C449.681,428.282,439.568,422.972,435.761,420.974z"/>
|
||||||
|
</g>
|
||||||
|
<path d="M461.071,411.093c-15.014-6.147-21.437-14.308-20.816-26.485c0.64-14.212-7.423-24.62-11.252-28.733
|
||||||
|
c2.313-8.837,9.073-39.406,0.007-65.959c-9.743-28.42-39.49-71.825-70.183-114.492c-12.565-17.522-13.159-36.57-13.846-58.625
|
||||||
|
c-0.658-21.036-1.4-44.88-13.131-71.387C319.095,16.55,293.501,0,261.628,0c-18.961,0-38.424,5.926-53.401,16.257
|
||||||
|
c-30.67,21.167-26.616,67.316-23.933,97.851c0.368,4.182,0.713,8.132,0.915,11.504c1.786,29.908,0.161,45.672-1.964,50.463
|
||||||
|
c-1.375,3.131-8.143,12.041-15.306,21.476c-7.408,9.758-15.807,20.816-22.691,31.121c-8.214,12.401-14.845,31.355-21.257,49.684
|
||||||
|
c-4.692,13.411-9.124,26.08-13.438,33.655c-8.177,14.564-6.142,28.145-4.444,34.422c-3.096,2.15-7.568,6.386-11.343,14.366
|
||||||
|
c-4.563,9.736-13.821,14.967-33.072,18.669c-8.847,1.81-14.947,5.53-18.137,11.056c-4.642,8.043-2.113,18.148,0.193,25.056
|
||||||
|
c3.408,10.151,1.284,16.577-2.577,28.246c-0.89,2.691-1.899,5.741-2.921,9.102c-1.61,5.308-1.029,10.131,1.722,14.341
|
||||||
|
c7.27,11.113,28.486,15.033,50.326,17.613c13.04,1.548,27.312,6.763,41.116,11.808c13.525,4.942,27.511,10.054,40.223,11.605
|
||||||
|
c1.932,0.243,3.846,0.364,5.691,0.364c19.194,0,27.866-12.735,30.616-17.967c6.894-1.407,30.673-5.912,55.181-6.518
|
||||||
|
c24.469-0.697,48.143,4.135,54.85,5.635c2.108,4.036,7.667,13.253,16.527,18.004c4.87,2.662,11.647,4.188,18.588,4.188
|
||||||
|
c0.002,0,0,0,0.002,0c7.413,0,21.516-1.753,32.678-13.497c11.133-11.796,38.949-26.859,59.261-37.856
|
||||||
|
c4.533-2.454,8.773-4.751,12.491-6.822c11.41-6.325,17.636-15.362,17.081-24.794C474.141,421.194,468.955,414.322,461.071,411.093z
|
||||||
|
M276.345,73.995c11.061,0,20.06,11.455,20.06,25.535c0,5.859-1.617,11.449-4.412,15.892c0.745-2.374,1.148-4.944,1.148-7.61
|
||||||
|
c0-11.774-7.47-20.997-17.007-20.997c-9.32,0-16.903,9.419-16.903,20.997c0,0.791,0.039,1.58,0.112,2.369
|
||||||
|
c-0.494-0.188-0.975-0.374-1.445-0.552c-1.073-3.25-1.615-6.638-1.615-10.099C256.284,85.451,265.282,73.995,276.345,73.995z
|
||||||
|
M242.329,125.164c4.214,0.744,14.606,4.892,22.197,7.922c3.508,1.4,6.539,2.61,8.67,3.374c6.715,2.308,10.217,5.261,10.641,6.364
|
||||||
|
c-0.159,0.713-0.499,1.027-4.249,2.978c-1.894,0.985-4.25,2.211-7.2,4.009l-1.971,1.194c-7.92,4.803-26.465,16.048-31.499,16.706
|
||||||
|
c-3.42,0.46-5.535-0.868-10.29-4.098c-1.073-0.73-2.214-1.506-3.431-2.286c-8.573-5.627-14.088-11.82-14.71-14.242
|
||||||
|
c2.795-2.16,9.723-7.568,13.27-10.771c7.2-6.695,14.445-11.194,18.031-11.194C241.978,125.117,242.15,125.13,242.329,125.164z
|
||||||
|
M214.073,78.724c8.142,0,15.019,10.97,15.019,23.957c0,1.638-0.118,3.267-0.364,5.006c-0.499,0.213-0.989,0.445-1.471,0.688
|
||||||
|
c-0.049-1.083-0.161-2.177-0.334-3.277c-1.742-10.03-8.394-17.311-15.812-17.311c-0.549,0-1.101,0.042-1.707,0.134
|
||||||
|
c-4.413,0.735-7.875,4.049-9.772,8.751C201.299,86.359,207.142,78.724,214.073,78.724z M189.271,469.128
|
||||||
|
c-1.753,8.241-11.083,14.942-13.284,16.424c-0.799,0.18-1.788,0.274-2.951,0.274c-12.768,0-38.043-10.623-51.622-16.329
|
||||||
|
l-2.009-0.846c-7.583-3.178-19.961-5.18-31.932-7.118c-9.525-1.543-22.568-3.653-24.731-5.562c-1.753-1.966,0.28-8.358,2.073-13.995
|
||||||
|
c1.291-4.052,2.624-8.241,3.354-12.627c1.036-6.993-0.181-12.691-1.158-17.267c-0.829-3.881-1.484-6.945-0.781-9.913
|
||||||
|
c0.51-2.199,11.366-4.554,16.003-5.562c6.518-1.417,13.26-2.879,17.668-5.555c5.961-3.611,9.189-10.27,12.036-16.146
|
||||||
|
c2.061-4.247,4.19-8.642,6.723-10.084c0.143-0.086,0.361-0.181,0.777-0.181c4.746,0,14.704,9.975,20.442,18.907
|
||||||
|
c1.455,2.249,4.151,6.76,7.27,11.984c9.329,15.609,22.102,36.987,28.773,44.151C181.933,446.123,191.664,458.508,189.271,469.128z
|
||||||
|
M327.787,360.037c-2.145,10.243-2.372,43.003-2.396,50.366c-4.375,5.558-26.498,31.732-58.261,36.438
|
||||||
|
c-12.938,1.88-25.019,2.834-35.907,2.834c-9.307,0-15.246-0.719-17.712-1.091l-15.961-18.263
|
||||||
|
c6.292-3.109,12.584-9.666,10.927-21.497c-1.42-10.005-14.291-19.928-29.196-31.419c-12.187-9.394-26.001-20.042-29.807-29.062
|
||||||
|
c-7.865-18.602-1.665-51.315,9.144-68.159c5.342-8.434,9.705-21.225,13.925-33.592c4.556-13.356,9.268-27.166,14.538-33.21
|
||||||
|
c8.345-9.438,16.057-27.801,17.423-42.273c7.814,7.458,19.936,16.926,31.135,16.926c1.724,0,3.398-0.225,4.997-0.677
|
||||||
|
c7.662-2.213,18.931-8.724,29.829-15.019c9.396-5.429,20.982-12.124,25.342-12.733c7.475,10.734,50.912,106.858,55.35,137.727
|
||||||
|
c3.512,24.425-0.198,44.616-2.063,52.525c-1.501-0.206-3.29-0.371-5.17-0.371C331.824,349.488,328.621,356.092,327.787,360.037z
|
||||||
|
M449.194,431.621c-2.533,2.315-11.449,6.869-20.071,11.271c-15.295,7.808-32.631,16.661-40.416,24.85
|
||||||
|
c-10.962,11.536-23.361,19.285-30.848,19.285c-0.901,0-1.722-0.114-2.453-0.346c-8.128-2.533-14.821-14.266-11.224-30.997
|
||||||
|
c3.789-17.093,8.153-40.341,7.447-54.049c-0.163-3.112-0.438-6.502-0.705-9.78c-0.499-6.127-1.239-15.233-0.475-17.935
|
||||||
|
c0.151-0.071,0.319-0.131,0.505-0.183c0.032,7.836,1.734,23.467,14.234,28.917c3.725,1.625,7.982,2.448,12.652,2.448
|
||||||
|
c12.521,0,26.414-6.141,32.105-11.833c3.351-3.349,6.169-7.45,8.143-10.697c0.431,1.264,0.697,2.916,0.557,5.044
|
||||||
|
c-0.744,11.558,4.873,26.891,15.563,32.542l1.556,0.819c3.807,1.996,13.92,7.307,14.083,9.824
|
||||||
|
C449.842,430.801,449.758,431.097,449.194,431.621z"/>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
<g>
|
||||||
|
</g>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 8.9 KiB |
|
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 580 B |
|
Before Width: | Height: | Size: 465 KiB |
|
Before Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 467 KiB |
@@ -1,43 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
viewBox="0 0 507.2 507.2" style="enable-background:new 0 0 507.2 507.2;" xml:space="preserve">
|
|
||||||
<circle style="fill:#32BA7C;" cx="253.6" cy="253.6" r="253.6"/>
|
|
||||||
<path style="fill:#0AA06E;" d="M188.8,368l130.4,130.4c108-28.8,188-127.2,188-244.8c0-2.4,0-4.8,0-7.2L404.8,152L188.8,368z"/>
|
|
||||||
<g>
|
|
||||||
<path style="fill:#FFFFFF;" d="M260,310.4c11.2,11.2,11.2,30.4,0,41.6l-23.2,23.2c-11.2,11.2-30.4,11.2-41.6,0L93.6,272.8
|
|
||||||
c-11.2-11.2-11.2-30.4,0-41.6l23.2-23.2c11.2-11.2,30.4-11.2,41.6,0L260,310.4z"/>
|
|
||||||
<path style="fill:#FFFFFF;" d="M348.8,133.6c11.2-11.2,30.4-11.2,41.6,0l23.2,23.2c11.2,11.2,11.2,30.4,0,41.6l-176,175.2
|
|
||||||
c-11.2,11.2-30.4,11.2-41.6,0l-23.2-23.2c-11.2-11.2-11.2-30.4,0-41.6L348.8,133.6z"/>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.1 KiB |
@@ -1,46 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
viewBox="0 0 512 512" style="enable-background:new 0 0 512 512;" xml:space="preserve">
|
|
||||||
<circle style="fill:#E21B1B;" cx="256" cy="256" r="256"/>
|
|
||||||
<path style="fill:#C40606;" d="M510.28,285.304L367.912,142.936L150.248,368.608l140.928,140.928
|
|
||||||
C406.352,493.696,497.056,401.288,510.28,285.304z"/>
|
|
||||||
<g>
|
|
||||||
<path style="fill:#FFFFFF;" d="M354.376,371.536c-5.12,0-10.232-1.952-14.144-5.856L146.408,171.848
|
|
||||||
c-7.816-7.816-7.816-20.472,0-28.28s20.472-7.816,28.28,0L368.52,337.4c7.816,7.816,7.816,20.472,0,28.28
|
|
||||||
C364.608,369.584,359.496,371.536,354.376,371.536z"/>
|
|
||||||
<path style="fill:#FFFFFF;" d="M160.544,371.536c-5.12,0-10.232-1.952-14.144-5.856c-7.816-7.816-7.816-20.472,0-28.28
|
|
||||||
l193.832-193.832c7.816-7.816,20.472-7.816,28.28,0s7.816,20.472,0,28.28L174.688,365.68
|
|
||||||
C170.784,369.584,165.664,371.536,160.544,371.536z"/>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.2 KiB |
|
Before Width: | Height: | Size: 2.1 KiB After Width: | Height: | Size: 2.1 KiB |
@@ -1,56 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
viewBox="0 0 504.124 504.124" style="enable-background:new 0 0 504.124 504.124;" xml:space="preserve">
|
|
||||||
<path style="fill:#D07C40;" d="M0,200.862L252.062,51.2l252.062,149.662v220.554H0V200.862z"/>
|
|
||||||
<path style="fill:#EFEFEF;" d="M55.138,11.815h393.846c8.665,0,15.754,7.089,15.754,15.754v275.692
|
|
||||||
c0,8.665-7.089,15.754-15.754,15.754H55.138c-8.665,0-15.754-7.089-15.754-15.754V27.569C39.385,18.905,46.474,11.815,55.138,11.815
|
|
||||||
z"/>
|
|
||||||
<path style="fill:#26A6D1;" d="M415.902,43.323l25.206-31.508h7.877c8.665,0,15.754,7.089,15.754,15.754v15.754H415.902z
|
|
||||||
M211.102,43.323l25.206-31.508h55.138L266.24,43.323H211.102z M39.385,43.323V27.569c0-8.665,7.089-15.754,15.754-15.754h39.385
|
|
||||||
L69.317,43.323H39.385z"/>
|
|
||||||
<path style="fill:#EFC75E;" d="M504.123,468.677c0,12.997-10.634,23.631-23.631,23.631H23.631C10.634,492.309,0,481.674,0,468.677
|
|
||||||
V200.862l252.062,110.277l252.062-110.277v267.815H504.123z"/>
|
|
||||||
<path style="fill:#E8C15B;" d="M504.123,468.677c0,12.997-10.634,23.631-23.631,23.631H23.631C10.634,492.309,0,481.674,0,468.677
|
|
||||||
v-47.262l504.123-220.554V468.677z"/>
|
|
||||||
<path style="fill:#D6D9DB;" d="M160.295,151.631l3.151,16.542l-25.206-39.385l-35.446,55.138c-0.394,5.12,22.449,9.058,50.806,9.058
|
|
||||||
s51.2-3.938,51.2-9.058l-31.114-46.08C173.686,137.846,160.295,151.631,160.295,151.631z M163.446,129.969
|
|
||||||
c5.514,0,9.846-4.332,9.846-9.846s-4.332-9.846-9.846-9.846s-9.846,4.332-9.846,9.846S157.932,129.969,163.446,129.969z
|
|
||||||
M244.185,126.031h157.538c4.332,0,7.877-3.545,7.877-7.877s-3.545-7.877-7.877-7.877H244.185c-4.332,0-7.877,3.545-7.877,7.877
|
|
||||||
S239.852,126.031,244.185,126.031z M401.723,141.785H244.185c-4.332,0-7.877,3.545-7.877,7.877s3.545,7.877,7.877,7.877h157.538
|
|
||||||
c4.332,0,7.877-3.545,7.877-7.877C409.6,145.329,406.055,141.785,401.723,141.785z M362.338,173.292H244.185
|
|
||||||
c-4.332,0-7.877,3.545-7.877,7.877s3.545,7.877,7.877,7.877h118.154c4.332,0,7.877-3.545,7.877-7.877
|
|
||||||
C370.215,176.837,366.671,173.292,362.338,173.292z"/>
|
|
||||||
<path style="fill:#E2574C;" d="M313.502,43.323l25.206-31.508h55.138L368.64,43.323H313.502z M108.702,43.323l25.206-31.508h55.138
|
|
||||||
L163.84,43.323H108.702z"/>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 2.4 KiB |
@@ -1,160 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
||||||
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
||||||
|
|
||||||
<svg
|
|
||||||
xmlns:dc="http://purl.org/dc/elements/1.1/"
|
|
||||||
xmlns:cc="http://creativecommons.org/ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:svg="http://www.w3.org/2000/svg"
|
|
||||||
xmlns="http://www.w3.org/2000/svg"
|
|
||||||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
||||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
||||||
width="512"
|
|
||||||
height="512"
|
|
||||||
viewBox="0 0 135.46667 135.46667"
|
|
||||||
version="1.1"
|
|
||||||
id="svg8"
|
|
||||||
sodipodi:docname="logo.svg"
|
|
||||||
inkscape:version="0.92.1 r15371"
|
|
||||||
inkscape:export-filename=""
|
|
||||||
inkscape:export-xdpi="48.000004"
|
|
||||||
inkscape:export-ydpi="48.000004">
|
|
||||||
<defs
|
|
||||||
id="defs2" />
|
|
||||||
<sodipodi:namedview
|
|
||||||
id="base"
|
|
||||||
pagecolor="#ffffff"
|
|
||||||
bordercolor="#666666"
|
|
||||||
borderopacity="1.0"
|
|
||||||
inkscape:pageopacity="0"
|
|
||||||
inkscape:pageshadow="2"
|
|
||||||
inkscape:zoom="0.70710678"
|
|
||||||
inkscape:cx="418.13805"
|
|
||||||
inkscape:cy="177.57445"
|
|
||||||
inkscape:document-units="mm"
|
|
||||||
inkscape:current-layer="layer2"
|
|
||||||
showgrid="false"
|
|
||||||
units="px"
|
|
||||||
width="256px"
|
|
||||||
showguides="false"
|
|
||||||
inkscape:window-width="1920"
|
|
||||||
inkscape:window-height="1137"
|
|
||||||
inkscape:window-x="1912"
|
|
||||||
inkscape:window-y="-8"
|
|
||||||
inkscape:window-maximized="1"
|
|
||||||
inkscape:pagecheckerboard="false"
|
|
||||||
inkscape:measure-start="283.373,243.952"
|
|
||||||
inkscape:measure-end="290.267,236.527">
|
|
||||||
<sodipodi:guide
|
|
||||||
position="0,0"
|
|
||||||
orientation="0,512"
|
|
||||||
id="guide3699"
|
|
||||||
inkscape:locked="false" />
|
|
||||||
<sodipodi:guide
|
|
||||||
position="135.46667,0"
|
|
||||||
orientation="-512,0"
|
|
||||||
id="guide3701"
|
|
||||||
inkscape:locked="false" />
|
|
||||||
<sodipodi:guide
|
|
||||||
position="135.46667,135.46667"
|
|
||||||
orientation="0,-512"
|
|
||||||
id="guide3703"
|
|
||||||
inkscape:locked="false" />
|
|
||||||
<sodipodi:guide
|
|
||||||
position="0,135.46667"
|
|
||||||
orientation="512,0"
|
|
||||||
id="guide3705"
|
|
||||||
inkscape:locked="false" />
|
|
||||||
</sodipodi:namedview>
|
|
||||||
<metadata
|
|
||||||
id="metadata5">
|
|
||||||
<rdf:RDF>
|
|
||||||
<cc:Work
|
|
||||||
rdf:about="">
|
|
||||||
<dc:format>image/svg+xml</dc:format>
|
|
||||||
<dc:type
|
|
||||||
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
|
|
||||||
<dc:title></dc:title>
|
|
||||||
</cc:Work>
|
|
||||||
</rdf:RDF>
|
|
||||||
</metadata>
|
|
||||||
<g
|
|
||||||
inkscape:label="Layer 1"
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer1"
|
|
||||||
transform="translate(0,-161.53334)"
|
|
||||||
style="display:inline">
|
|
||||||
<path
|
|
||||||
style="fill:#609926;fill-opacity:1;stroke:#428f29;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;stroke-miterlimit:4;stroke-dasharray:none"
|
|
||||||
d="m 27.709937,195.15095 c -9.546573,-0.0272 -22.3392732,6.79805 -21.6317552,23.90397 1.105534,26.72889 25.4565952,29.20839 35.1916502,29.42301 1.068023,5.01357 12.521798,22.30563 21.001818,23.21667 h 37.15277 c 22.27763,-1.66785 38.9607,-75.75671 26.59321,-76.03825 -46.781583,2.47691 -49.995146,2.13838 -88.599758,0 -2.495053,-0.0266 -5.972321,-0.49474 -9.707935,-0.5054 z m 2.491319,9.45886 c 1.351378,13.69267 3.555849,21.70359 8.018216,33.94345 -11.382872,-1.50473 -21.069822,-5.22443 -22.851515,-19.10984 -0.950962,-7.4112 2.390428,-15.16769 14.833299,-14.83361 z"
|
|
||||||
id="path3722"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="sscccccsccsc" />
|
|
||||||
</g>
|
|
||||||
<g
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer2"
|
|
||||||
inkscape:label="Layer 2"
|
|
||||||
style="display:inline">
|
|
||||||
<rect
|
|
||||||
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.24757317;stroke-opacity:1"
|
|
||||||
id="rect4599"
|
|
||||||
width="34.762054"
|
|
||||||
height="34.762054"
|
|
||||||
x="87.508659"
|
|
||||||
y="18.291576"
|
|
||||||
transform="rotate(25.914715)"
|
|
||||||
ry="5.4825778" />
|
|
||||||
<path
|
|
||||||
style="display:inline;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:0.26644793px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
|
|
||||||
d="m 79.804947,57.359056 3.241146,1.609954 V 35.255731 h -3.262698 z"
|
|
||||||
id="path4525"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
sodipodi:nodetypes="ccccc" />
|
|
||||||
</g>
|
|
||||||
<g
|
|
||||||
inkscape:groupmode="layer"
|
|
||||||
id="layer3"
|
|
||||||
inkscape:label="Layer 3"
|
|
||||||
style="display:inline">
|
|
||||||
<g
|
|
||||||
style="display:inline"
|
|
||||||
id="g4539">
|
|
||||||
<circle
|
|
||||||
transform="rotate(-19.796137)"
|
|
||||||
r="3.4745038"
|
|
||||||
cy="90.077766"
|
|
||||||
cx="49.064713"
|
|
||||||
id="path4606"
|
|
||||||
style="fill:#609926;fill-opacity:1;stroke:none;stroke-width:0.26458332;stroke-opacity:1" />
|
|
||||||
<circle
|
|
||||||
transform="rotate(-19.796137)"
|
|
||||||
r="3.4745038"
|
|
||||||
cy="102.1049"
|
|
||||||
cx="36.810425"
|
|
||||||
id="path4606-3"
|
|
||||||
style="fill:#609926;fill-opacity:1;stroke:none;stroke-width:0.26458332;stroke-opacity:1" />
|
|
||||||
<circle
|
|
||||||
transform="rotate(-19.796137)"
|
|
||||||
r="3.4745038"
|
|
||||||
cy="111.43928"
|
|
||||||
cx="46.484283"
|
|
||||||
id="path4606-1"
|
|
||||||
style="fill:#609926;fill-opacity:1;stroke:none;stroke-width:0.26458332;stroke-opacity:1" />
|
|
||||||
<rect
|
|
||||||
transform="rotate(26.024158)"
|
|
||||||
y="18.061695"
|
|
||||||
x="97.333458"
|
|
||||||
height="27.261492"
|
|
||||||
width="2.6726954"
|
|
||||||
id="rect4629-8"
|
|
||||||
style="fill:#609926;fill-opacity:1;stroke:none;stroke-width:0.27444693;stroke-opacity:1" />
|
|
||||||
<path
|
|
||||||
sodipodi:nodetypes="cc"
|
|
||||||
inkscape:connector-curvature="0"
|
|
||||||
id="path4514"
|
|
||||||
d="m 76.558096,68.116343 c 12.97589,6.395378 13.012989,4.101862 4.890858,20.907244"
|
|
||||||
style="fill:none;stroke:#609926;stroke-width:2.68000007;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
|
|
||||||
</g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 5.6 KiB |
@@ -1,59 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 16.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
||||||
<svg version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
width="438.549px" height="438.549px" viewBox="0 0 438.549 438.549" style="enable-background:new 0 0 438.549 438.549;"
|
|
||||||
xml:space="preserve">
|
|
||||||
<g>
|
|
||||||
<path d="M409.132,114.573c-19.608-33.596-46.205-60.194-79.798-79.8C295.736,15.166,259.057,5.365,219.271,5.365
|
|
||||||
c-39.781,0-76.472,9.804-110.063,29.408c-33.596,19.605-60.192,46.204-79.8,79.8C9.803,148.168,0,184.854,0,224.63
|
|
||||||
c0,47.78,13.94,90.745,41.827,128.906c27.884,38.164,63.906,64.572,108.063,79.227c5.14,0.954,8.945,0.283,11.419-1.996
|
|
||||||
c2.475-2.282,3.711-5.14,3.711-8.562c0-0.571-0.049-5.708-0.144-15.417c-0.098-9.709-0.144-18.179-0.144-25.406l-6.567,1.136
|
|
||||||
c-4.187,0.767-9.469,1.092-15.846,1c-6.374-0.089-12.991-0.757-19.842-1.999c-6.854-1.231-13.229-4.086-19.13-8.559
|
|
||||||
c-5.898-4.473-10.085-10.328-12.56-17.556l-2.855-6.57c-1.903-4.374-4.899-9.233-8.992-14.559
|
|
||||||
c-4.093-5.331-8.232-8.945-12.419-10.848l-1.999-1.431c-1.332-0.951-2.568-2.098-3.711-3.429c-1.142-1.331-1.997-2.663-2.568-3.997
|
|
||||||
c-0.572-1.335-0.098-2.43,1.427-3.289c1.525-0.859,4.281-1.276,8.28-1.276l5.708,0.853c3.807,0.763,8.516,3.042,14.133,6.851
|
|
||||||
c5.614,3.806,10.229,8.754,13.846,14.842c4.38,7.806,9.657,13.754,15.846,17.847c6.184,4.093,12.419,6.136,18.699,6.136
|
|
||||||
c6.28,0,11.704-0.476,16.274-1.423c4.565-0.952,8.848-2.383,12.847-4.285c1.713-12.758,6.377-22.559,13.988-29.41
|
|
||||||
c-10.848-1.14-20.601-2.857-29.264-5.14c-8.658-2.286-17.605-5.996-26.835-11.14c-9.235-5.137-16.896-11.516-22.985-19.126
|
|
||||||
c-6.09-7.614-11.088-17.61-14.987-29.979c-3.901-12.374-5.852-26.648-5.852-42.826c0-23.035,7.52-42.637,22.557-58.817
|
|
||||||
c-7.044-17.318-6.379-36.732,1.997-58.24c5.52-1.715,13.706-0.428,24.554,3.853c10.85,4.283,18.794,7.952,23.84,10.994
|
|
||||||
c5.046,3.041,9.089,5.618,12.135,7.708c17.705-4.947,35.976-7.421,54.818-7.421s37.117,2.474,54.823,7.421l10.849-6.849
|
|
||||||
c7.419-4.57,16.18-8.758,26.262-12.565c10.088-3.805,17.802-4.853,23.134-3.138c8.562,21.509,9.325,40.922,2.279,58.24
|
|
||||||
c15.036,16.18,22.559,35.787,22.559,58.817c0,16.178-1.958,30.497-5.853,42.966c-3.9,12.471-8.941,22.457-15.125,29.979
|
|
||||||
c-6.191,7.521-13.901,13.85-23.131,18.986c-9.232,5.14-18.182,8.85-26.84,11.136c-8.662,2.286-18.415,4.004-29.263,5.146
|
|
||||||
c9.894,8.562,14.842,22.077,14.842,40.539v60.237c0,3.422,1.19,6.279,3.572,8.562c2.379,2.279,6.136,2.95,11.276,1.995
|
|
||||||
c44.163-14.653,80.185-41.062,108.068-79.226c27.88-38.161,41.825-81.126,41.825-128.906
|
|
||||||
C438.536,184.851,428.728,148.168,409.132,114.573z"/>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 2.8 KiB |
@@ -1,44 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
||||||
<!-- Generator: Adobe Illustrator 19.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
||||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
||||||
viewBox="0 0 382 382" style="enable-background:new 0 0 382 382;" xml:space="preserve">
|
|
||||||
<path style="fill:#0077B7;" d="M347.445,0H34.555C15.471,0,0,15.471,0,34.555v312.889C0,366.529,15.471,382,34.555,382h312.889
|
|
||||||
C366.529,382,382,366.529,382,347.444V34.555C382,15.471,366.529,0,347.445,0z M118.207,329.844c0,5.554-4.502,10.056-10.056,10.056
|
|
||||||
H65.345c-5.554,0-10.056-4.502-10.056-10.056V150.403c0-5.554,4.502-10.056,10.056-10.056h42.806
|
|
||||||
c5.554,0,10.056,4.502,10.056,10.056V329.844z M86.748,123.432c-22.459,0-40.666-18.207-40.666-40.666S64.289,42.1,86.748,42.1
|
|
||||||
s40.666,18.207,40.666,40.666S109.208,123.432,86.748,123.432z M341.91,330.654c0,5.106-4.14,9.246-9.246,9.246H286.73
|
|
||||||
c-5.106,0-9.246-4.14-9.246-9.246v-84.168c0-12.556,3.683-55.021-32.813-55.021c-28.309,0-34.051,29.066-35.204,42.11v97.079
|
|
||||||
c0,5.106-4.139,9.246-9.246,9.246h-44.426c-5.106,0-9.246-4.14-9.246-9.246V149.593c0-5.106,4.14-9.246,9.246-9.246h44.426
|
|
||||||
c5.106,0,9.246,4.14,9.246,9.246v15.655c10.497-15.753,26.097-27.912,59.312-27.912c73.552,0,73.131,68.716,73.131,106.472
|
|
||||||
L341.91,330.654L341.91,330.654z"/>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
<g>
|
|
||||||
</g>
|
|
||||||
</svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.4 KiB |
@@ -1 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" width="61.076954mm" height="65.47831mm" viewBox="0 0 216.4144 232.00976"><path d="M211.80734 139.0875c-3.18125 16.36625-28.4925 34.2775-57.5625 37.74875-15.15875 1.80875-30.08375 3.47125-45.99875 2.74125-26.0275-1.1925-46.565-6.2125-46.565-6.2125 0 2.53375.15625 4.94625.46875 7.2025 3.38375 25.68625 25.47 27.225 46.39125 27.9425 21.11625.7225 39.91875-5.20625 39.91875-5.20625l.8675 19.09s-14.77 7.93125-41.08125 9.39c-14.50875.7975-32.52375-.365-53.50625-5.91875C9.23234 213.82 1.40609 165.31125.20859 116.09125c-.365-14.61375-.14-28.39375-.14-39.91875 0-50.33 32.97625-65.0825 32.97625-65.0825C49.67234 3.45375 78.20359.2425 107.86484 0h.72875c29.66125.2425 58.21125 3.45375 74.8375 11.09 0 0 32.975 14.7525 32.975 65.0825 0 0 .41375 37.13375-4.59875 62.915" fill="#3088d4"/><path d="M177.50984 80.077v60.94125h-24.14375v-59.15c0-12.46875-5.24625-18.7975-15.74-18.7975-11.6025 0-17.4175 7.5075-17.4175 22.3525v32.37625H96.20734V85.42325c0-14.845-5.81625-22.3525-17.41875-22.3525-10.49375 0-15.74 6.32875-15.74 18.7975v59.15H38.90484V80.077c0-12.455 3.17125-22.3525 9.54125-29.675 6.56875-7.3225 15.17125-11.07625 25.85-11.07625 12.355 0 21.71125 4.74875 27.8975 14.2475l6.01375 10.08125 6.015-10.08125c6.185-9.49875 15.54125-14.2475 27.8975-14.2475 10.6775 0 19.28 3.75375 25.85 11.07625 6.36875 7.3225 9.54 17.22 9.54 29.675" fill="#fff"/></svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.4 KiB |
@@ -1 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="48px" height="48px"><path fill="#FFF" d="M12.193 19.555c-1.94-1.741-4.79-1.727-6.365.029-1.576 1.756-1.301 5.023.926 6.632L12.193 19.555zM35.807 19.555c1.939-1.741 4.789-1.727 6.365.029 1.575 1.756 1.302 5.023-.927 6.632L35.807 19.555zM38.32 6.975A3.5 3.5 0 1 0 38.32 13.975 3.5 3.5 0 1 0 38.32 6.975z"/><path fill="#FFF" d="M24.085 15.665000000000001A18.085 12.946 0 1 0 24.085 41.557A18.085 12.946 0 1 0 24.085 15.665000000000001Z"/><g><path fill="#D84315" d="M30.365 23.506A2.884 2.884 0 1 0 30.365 29.274 2.884 2.884 0 1 0 30.365 23.506zM17.635 23.506A2.884 2.884 0 1 0 17.635 29.274 2.884 2.884 0 1 0 17.635 23.506z"/></g><g><path fill="#37474F" d="M24.002 34.902c-3.252 0-6.14-.745-8.002-1.902 1.024 2.044 4.196 4 8.002 4 3.802 0 6.976-1.956 7.998-4C30.143 34.157 27.254 34.902 24.002 34.902zM41.83 27.026l-1.17-1.621c.831-.6 1.373-1.556 1.488-2.623.105-.98-.157-1.903-.721-2.531-.571-.637-1.391-.99-2.307-.994-.927.013-1.894.365-2.646 1.041l-1.336-1.488c1.123-1.008 2.545-1.523 3.991-1.553 1.488.007 2.833.596 3.786 1.658.942 1.05 1.387 2.537 1.221 4.081C43.961 24.626 43.121 26.096 41.83 27.026zM6.169 27.026c-1.29-.932-2.131-2.401-2.306-4.031-.166-1.543.279-3.03 1.221-4.079.953-1.062 2.297-1.651 3.785-1.658.009 0 .018 0 .027 0 1.441 0 2.849.551 3.965 1.553l-1.336 1.488c-.753-.676-1.689-1.005-2.646-1.041-.916.004-1.735.357-2.306.994-.563.628-.826 1.55-.721 2.53.115 1.067.657 2.023 1.488 2.624L6.169 27.026zM25 16.84h-2c0-2.885 0-10.548 4.979-10.548 2.154 0 3.193 1.211 3.952 2.096.629.734.961 1.086 1.616 1.086h1.37v2h-1.37c-1.604 0-2.453-.99-3.135-1.785-.67-.781-1.198-1.398-2.434-1.398C25.975 8.292 25 11.088 25 16.84z"/><path fill="#37474F" d="M24.085 16.95c9.421 0 17.085 5.231 17.085 11.661 0 6.431-7.664 11.662-17.085 11.662S7 35.042 7 28.611C7 22.181 14.664 16.95 24.085 16.95M24.085 14.95C13.544 14.95 5 21.066 5 28.611c0 7.546 8.545 13.662 19.085 13.662 10.54 0 19.085-6.116 19.085-13.662C43.17 21.066 34.625 14.95 24.085 14.95L24.085 14.95zM38.32 7.975c1.379 0 2.5 1.122 2.5 2.5s-1.121 2.5-2.5 2.5-2.5-1.122-2.5-2.5S36.941 7.975 38.32 7.975M38.32 5.975c-2.484 0-4.5 2.015-4.5 4.5s2.016 4.5 4.5 4.5c2.486 0 4.5-2.015 4.5-4.5S40.807 5.975 38.32 5.975L38.32 5.975z"/></g></svg>
|
|
||||||
|
Before Width: | Height: | Size: 2.2 KiB |
@@ -1 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48" width="240px" height="240px"><linearGradient id="_osn9zIN2f6RhTsY8WhY4a" x1="10.341" x2="40.798" y1="8.312" y2="38.769" gradientUnits="userSpaceOnUse"><stop offset="0" stop-color="#2aa4f4"/><stop offset="1" stop-color="#007ad9"/></linearGradient><path fill="url(#_osn9zIN2f6RhTsY8WhY4a)" d="M46.105,11.02c-1.551,0.687-3.219,1.145-4.979,1.362c1.789-1.062,3.166-2.756,3.812-4.758 c-1.674,0.981-3.529,1.702-5.502,2.082C37.86,8.036,35.612,7,33.122,7c-4.783,0-8.661,3.843-8.661,8.582 c0,0.671,0.079,1.324,0.226,1.958c-7.196-0.361-13.579-3.782-17.849-8.974c-0.75,1.269-1.172,2.754-1.172,4.322 c0,2.979,1.525,5.602,3.851,7.147c-1.42-0.043-2.756-0.438-3.926-1.072c0,0.026,0,0.064,0,0.101c0,4.163,2.986,7.63,6.944,8.419 c-0.723,0.198-1.488,0.308-2.276,0.308c-0.559,0-1.104-0.063-1.632-0.158c1.102,3.402,4.299,5.889,8.087,5.963 c-2.964,2.298-6.697,3.674-10.756,3.674c-0.701,0-1.387-0.04-2.065-0.122C7.73,39.577,12.283,41,17.171,41 c15.927,0,24.641-13.079,24.641-24.426c0-0.372-0.012-0.742-0.029-1.108C43.483,14.265,44.948,12.751,46.105,11.02"/></svg>
|
|
||||||
|
Before Width: | Height: | Size: 1.1 KiB |
|
Before Width: | Height: | Size: 216 KiB After Width: | Height: | Size: 216 KiB |
BIN
static/resume.pdf
Normal file
@@ -1,104 +0,0 @@
|
|||||||
const log = console.log
|
|
||||||
|
|
||||||
const headerKeys = {
|
|
||||||
"status": "Status",
|
|
||||||
"url": "URL",
|
|
||||||
"description": "Description",
|
|
||||||
"repo": "Repository"
|
|
||||||
}
|
|
||||||
const keyOrder = ["status", "url", "description", "repo"]
|
|
||||||
|
|
||||||
const generateTableHead = table => {
|
|
||||||
let thead = table.createTHead();
|
|
||||||
let row = thead.insertRow();
|
|
||||||
keyOrder.forEach(key => {
|
|
||||||
let th = document.createElement("th");
|
|
||||||
th.textContent = headerKeys[key];
|
|
||||||
row.appendChild(th);
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const generateTable = (table, data) => {
|
|
||||||
data.forEach(elem => {
|
|
||||||
let row = table.insertRow();
|
|
||||||
keyOrder.forEach(key => {
|
|
||||||
const cell = row.insertCell();
|
|
||||||
cell.className = key;
|
|
||||||
const aElem = document.createElement('a')
|
|
||||||
aElem.target = '_blank'
|
|
||||||
switch (key) {
|
|
||||||
case 'status':
|
|
||||||
// cell.textContent = ((elem[key] == 'up') ? '🗸' : '✗')
|
|
||||||
const statusIcon = document.createElement('img')
|
|
||||||
statusIcon.src = '/img/server/' + ((elem[key] == 'up') ? 'check' : 'x') + '.svg'
|
|
||||||
cell.appendChild(statusIcon)
|
|
||||||
break
|
|
||||||
case 'url':
|
|
||||||
aElem.href = elem[key]
|
|
||||||
aElem.textContent = elem['shortUrl']
|
|
||||||
cell.appendChild(aElem)
|
|
||||||
break
|
|
||||||
case 'description':
|
|
||||||
cell.innerHTML = elem[key]
|
|
||||||
break
|
|
||||||
case 'repo':
|
|
||||||
aElem.href = elem['repoUrl']
|
|
||||||
aElem.textContent = elem[key]
|
|
||||||
cell.appendChild(aElem)
|
|
||||||
break
|
|
||||||
default:
|
|
||||||
cell.textContent = elem[key]
|
|
||||||
}
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
const getDurationSince = (date, verbose) => {
|
|
||||||
const milli = Math.abs(Date.now() - date)
|
|
||||||
let mins = Math.floor(milli/1000/60)
|
|
||||||
const days = Math.floor(mins/60/24)
|
|
||||||
mins %= 60*24
|
|
||||||
const hours = Math.floor(mins/60)
|
|
||||||
mins %= 60
|
|
||||||
|
|
||||||
let dayString = ''
|
|
||||||
let hourString = ''
|
|
||||||
let minString = ''
|
|
||||||
if (days > 0) {
|
|
||||||
dayString += days
|
|
||||||
if (!verbose) {
|
|
||||||
dayString += 'd '
|
|
||||||
} else {
|
|
||||||
dayString += (days == 1) ? ' day' : ' days'
|
|
||||||
dayString += ', '
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (hours > 0) {
|
|
||||||
hourString += hours
|
|
||||||
if (!verbose) {
|
|
||||||
hourString += 'h '
|
|
||||||
} else {
|
|
||||||
hourString += (hours == 1) ? ' hour' : ' hours'
|
|
||||||
hourString += ', '
|
|
||||||
}
|
|
||||||
}
|
|
||||||
minString += (mins > 0) ? mins: '0'
|
|
||||||
if (!verbose) {
|
|
||||||
minString += 'm'
|
|
||||||
} else {
|
|
||||||
minString += (mins == 1) ? ' minute' : ' minutes'
|
|
||||||
}
|
|
||||||
return dayString + hourString + minString
|
|
||||||
}
|
|
||||||
|
|
||||||
fetch("/server-apps.json")
|
|
||||||
.then(response => response.json())
|
|
||||||
.then(json => {
|
|
||||||
let table = document.querySelector("table");
|
|
||||||
generateTable(table, json['sites']);
|
|
||||||
generateTableHead(table);
|
|
||||||
document.querySelector('#last-updated-time').textContent =
|
|
||||||
getDurationSince(new Date(json['updateTime']), false) + ' ago.'
|
|
||||||
document.querySelector('#server-uptime-time').textContent =
|
|
||||||
getDurationSince(new Date(json['upSince']), true) + '.'
|
|
||||||
});
|
|
||||||