Compare commits
5 Commits
tr-letter
...
resume-pdf
| Author | SHA1 | Date | |
|---|---|---|---|
|
162d3d7c25
|
|||
|
7f6743f8d9
|
|||
|
e9ce8bd5d1
|
|||
|
2bedc77f1b
|
|||
|
6553a1bfa1
|
5
.gitmodules
vendored
5
.gitmodules
vendored
@@ -1,7 +1,4 @@
|
|||||||
[submodule "content/letter"]
|
[submodule "content/letter"]
|
||||||
path = content/letter
|
path = content/letter
|
||||||
url = ssh://git@git.kevin-mok.com:399/Kevin-Mok/cover-letters.git
|
url = ssh://git@git.kevin-mok.com:399/Kevin-Mok/cover-letters.git
|
||||||
branch = master
|
branch = drafts
|
||||||
[submodule "static/pdf"]
|
|
||||||
path = static/pdf
|
|
||||||
url = ssh://git@git.kevin-mok.com:399/Kevin-Mok/resume-pdf.git
|
|
||||||
|
|||||||
@@ -2,14 +2,10 @@
|
|||||||
|
|
||||||
// base colors {{{ //
|
// base colors {{{ //
|
||||||
|
|
||||||
$base00: #2d2d2d;
|
|
||||||
$base01: #393939;
|
|
||||||
$base02: #515151;
|
$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 +15,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; }
|
||||||
@@ -35,7 +38,6 @@ $base-dark-orange: #d27b53;
|
|||||||
// $max-page-width: 52em;
|
// $max-page-width: 52em;
|
||||||
$max-page-width: 45em;
|
$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;
|
||||||
@@ -88,15 +90,6 @@ $vert-phone-width: 500px;
|
|||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
@mixin a-no-underline() {// {{{
|
|
||||||
a {
|
|
||||||
text-decoration: none;
|
|
||||||
&:hover {
|
|
||||||
text-decoration: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}// }}}
|
|
||||||
|
|
||||||
// }}} mixins //
|
// }}} mixins //
|
||||||
|
|
||||||
// general elements {{{ //
|
// general elements {{{ //
|
||||||
@@ -112,9 +105,9 @@ body {
|
|||||||
color: $color;
|
color: $color;
|
||||||
line-height: 1.5;
|
line-height: 1.5;
|
||||||
// font-size: 100%;
|
// font-size: 100%;
|
||||||
font-size: 15px;
|
// font-size: 15px;
|
||||||
// font-size: 25px;
|
font-size: 20px;
|
||||||
// font-family: 'Hack Nerd Font Mono', monospace;
|
/* font-family: 'Source Code Pro', monospace; */
|
||||||
font-family: 'Hack', monospace;
|
font-family: 'Hack', monospace;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
@@ -215,17 +208,12 @@ footer {
|
|||||||
position: relative;
|
position: relative;
|
||||||
padding-right: $side-padding;
|
padding-right: $side-padding;
|
||||||
// padding-right: .9em;
|
// padding-right: .9em;
|
||||||
@include a-no-underline();
|
|
||||||
|
|
||||||
img {
|
img {
|
||||||
height: 1.5em;
|
height: 1.5em;
|
||||||
@include vert-margin-rem(.2);
|
@include vert-margin-rem(.2);
|
||||||
padding-left: .5em;
|
padding-left: .5em;
|
||||||
opacity: .6;
|
opacity: .6;
|
||||||
|
|
||||||
&:hover {
|
|
||||||
opacity: 1;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -257,22 +245,22 @@ p {
|
|||||||
margin-bottom: 1rem;
|
margin-bottom: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
h1 {
|
// h1 {
|
||||||
font-size: 2rem;
|
// font-size: 2rem;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 1.75rem;
|
// font-size: 1.75rem;
|
||||||
}
|
// }
|
||||||
}
|
// }
|
||||||
h2 {
|
// h2 {
|
||||||
font-size: 1.5rem;
|
// font-size: 1.5rem;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 1.4rem;
|
// 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 }
|
||||||
h6 { font-size: .75rem }
|
h6 { font-size: .75rem }
|
||||||
|
|
||||||
@@ -487,25 +475,31 @@ header {// {{{
|
|||||||
|
|
||||||
#print-icon {// {{{
|
#print-icon {// {{{
|
||||||
float: right;
|
float: right;
|
||||||
|
display: none;
|
||||||
|
|
||||||
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 side-margin-em(0);
|
||||||
@include side-padding-rem(0);
|
|
||||||
// @include vert-padding-rem(0.5);
|
// @include vert-padding-rem(0.5);
|
||||||
@include a-color($base-sky-blue);
|
@include a-color($base-sky-blue);
|
||||||
width: 100%;
|
|
||||||
// @media (min-width: 1200px) {
|
|
||||||
// .container{
|
|
||||||
// min-width: $max-page-width;
|
// min-width: $max-page-width;
|
||||||
// }
|
@media (min-width: 1200px) {
|
||||||
// }
|
.container{
|
||||||
|
min-width: $max-page-width;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
a {// {{{
|
||||||
|
text-decoration: none;
|
||||||
|
&:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
}// }}}
|
||||||
|
|
||||||
font-size: .9em;
|
font-size: .9em;
|
||||||
|
|
||||||
@@ -532,11 +526,11 @@ header {// {{{
|
|||||||
margin-left: 5px;
|
margin-left: 5px;
|
||||||
// position: relative;
|
// position: relative;
|
||||||
// left: -8px;
|
// left: -8px;
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
// display: none;
|
// // display: none;
|
||||||
// font-size: 10px;
|
// // font-size: 10px;
|
||||||
font-size: .8em;
|
// font-size: .8em;
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
}// }}}
|
}// }}}
|
||||||
@@ -551,45 +545,44 @@ header {// {{{
|
|||||||
|
|
||||||
h1 {// {{{
|
h1 {// {{{
|
||||||
color: $base-orange;
|
color: $base-orange;
|
||||||
margin-top: 1rem;
|
margin-top: 1.3rem;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
margin-top: .75rem;
|
// margin-top: .75rem;
|
||||||
}
|
// }
|
||||||
}// }}}
|
}// }}}
|
||||||
h2 {// {{{
|
h2 {// {{{
|
||||||
color: $base-orange;
|
color: $base-orange;
|
||||||
margin-top: .5rem;
|
margin-top: .5rem;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 1.2em;
|
// font-size: 1.2em;
|
||||||
margin-top: .75rem;
|
// margin-top: .75rem;
|
||||||
}
|
// }
|
||||||
}// }}}
|
}// }}}
|
||||||
h4 {// {{{
|
h4 {// {{{
|
||||||
color: $base-yellow;
|
color: $base-yellow;
|
||||||
margin-top: .5rem;
|
margin-top: .5rem;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 1.2em;
|
// font-size: 1.2em;
|
||||||
margin-top: .75rem;
|
// margin-top: .75rem;
|
||||||
}
|
// }
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
.date {// {{{
|
.date {// {{{
|
||||||
padding-top: .8em;
|
|
||||||
float: right;
|
float: right;
|
||||||
color: $base03;
|
color: $base03;
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
padding-top: 0em;
|
// padding-top: 0em;
|
||||||
}
|
// }
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
#projects {// {{{
|
#projects {// {{{
|
||||||
h1 {
|
// // h1 {
|
||||||
margin-bottom: 3px;
|
// // margin-bottom: 3px;
|
||||||
}
|
// // }
|
||||||
|
|
||||||
.project {// {{{
|
.project {// {{{
|
||||||
@include vert-padding-rem(.2);
|
@include vert-padding-rem(.2);
|
||||||
@@ -603,6 +596,10 @@ header {// {{{
|
|||||||
height: 1.2em;
|
height: 1.2em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.project-header {
|
||||||
|
margin-bottom: .6em;
|
||||||
|
}
|
||||||
|
|
||||||
.project-link {
|
.project-link {
|
||||||
&:hover {
|
&:hover {
|
||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
@@ -654,14 +651,13 @@ header {// {{{
|
|||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
@media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 14px;
|
// font-size: 14px;
|
||||||
// font-size: 1em;
|
// // font-size: 1em;
|
||||||
}
|
// }
|
||||||
|
|
||||||
&.letter {
|
&.letter {
|
||||||
margin-top: 2em;
|
margin-top: 2em;
|
||||||
// font-size: 21px;
|
|
||||||
|
|
||||||
img {
|
img {
|
||||||
height: 4.5em;
|
height: 4.5em;
|
||||||
@@ -669,33 +665,19 @@ header {// {{{
|
|||||||
|
|
||||||
h2 {
|
h2 {
|
||||||
color: $base-red;
|
color: $base-red;
|
||||||
// font-size: 30px;
|
margin-top: 0em;
|
||||||
// margin-top: 0em;
|
|
||||||
// margin-top: .5em;
|
|
||||||
// margin-top: 1.25em;
|
|
||||||
// margin-bottom: 1em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
p {
|
p {
|
||||||
margin-bottom: 1.5em;
|
margin-bottom: 1.25em;
|
||||||
// margin-bottom: 1em;
|
|
||||||
}
|
|
||||||
|
|
||||||
ul {
|
|
||||||
// margin-bottom: 1.5em;
|
|
||||||
margin-bottom: 2em;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.no-line-spacing {
|
.no-line-spacing {
|
||||||
line-height: .5em;
|
line-height: .5em;
|
||||||
margin-bottom: 2.15em;
|
margin-bottom: 2em;
|
||||||
p {
|
p {
|
||||||
margin-bottom: 1em;
|
margin-bottom: 1em;
|
||||||
}
|
}
|
||||||
strong {
|
|
||||||
line-height: 1.25em;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
@@ -750,168 +732,6 @@ header {// {{{
|
|||||||
}
|
}
|
||||||
}// }}}
|
}// }}}
|
||||||
|
|
||||||
#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
|
||||||
|
|
||||||
// hero {{{ //
|
// hero {{{ //
|
||||||
@@ -930,9 +750,9 @@ h1.site-title {// {{{
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
@media (max-width: $max-page-width) {
|
// @media (max-width: $phone-width) {
|
||||||
font-size: 3em;
|
// font-size: 3em;
|
||||||
}
|
// }
|
||||||
|
|
||||||
// @media (max-width: $phone-width) {
|
// @media (max-width: $phone-width) {
|
||||||
// font-size: 3.5em;
|
// font-size: 3.5em;
|
||||||
|
|||||||
16
config.yaml
16
config.yaml
@@ -29,20 +29,16 @@ menu:
|
|||||||
- name: card
|
- name: card
|
||||||
url: /card
|
url: /card
|
||||||
weight: 15
|
weight: 15
|
||||||
# - name: letter
|
- name: letter
|
||||||
# url: /letter
|
url: /letter
|
||||||
# weight: 17
|
weight: 17
|
||||||
# - name: credits
|
# - name: credits
|
||||||
# url: /credits
|
# url: /credits
|
||||||
# weight: 20
|
# weight: 20
|
||||||
|
|
||||||
# blackfriday:
|
blackfriday:
|
||||||
# plainIDAnchors: true
|
plainIDAnchors: true
|
||||||
# hrefTargetBlank: true
|
hrefTargetBlank: true
|
||||||
|
|
||||||
disableKinds: ["RSS"]
|
disableKinds: ["RSS"]
|
||||||
|
|
||||||
markup:
|
|
||||||
goldmark:
|
|
||||||
renderer:
|
|
||||||
unsafe: true
|
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
title: "Digital Card"
|
title: "Digital Card"
|
||||||
date: 2019-02-11T07:50:51-05:00
|
date: 2019-02-11T07:50:51-05:00
|
||||||
draft: false
|
draft: true
|
||||||
---
|
---
|
||||||
|
|||||||
@@ -39,4 +39,5 @@ a single branch.
|
|||||||
|
|
||||||
[chezmoi]: https://github.com/twpayne/chezmoi
|
[chezmoi]: https://github.com/twpayne/chezmoi
|
||||||
|
|
||||||
|
|
||||||
<!--- }}} Setup -->
|
<!--- }}} Setup -->
|
||||||
|
|||||||
Submodule content/letter updated: 42716f4487...56c2d30c4a
@@ -3,10 +3,19 @@ title: "Resume"
|
|||||||
date: 2019-02-11T07:50:51-05:00
|
date: 2019-02-11T07:50:51-05:00
|
||||||
draft: false
|
draft: false
|
||||||
---
|
---
|
||||||
|
{{% resume/section overview %}}<!--- {{{ -->
|
||||||
|
|
||||||
|
3<sup>rd</sup> year CS student. Enthusiast of all things
|
||||||
|
Linux and FOSS. Seeking 16-month internship for my PEY
|
||||||
|
co-op program. Looking to gain industry-relevant experience in
|
||||||
|
full-stack web dev, DevOps or system administration.
|
||||||
|
|
||||||
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
{{% resume/section skills %}}<!--- {{{ -->
|
{{% resume/section skills %}}<!--- {{{ -->
|
||||||
|
|
||||||
#### Languages
|
#### Languages
|
||||||
- **Bash**, **C**, **CSS**, C++, **Fish** (shell), Godot, **HTML5**,
|
- **Bash**, C, **CSS**, C++, **Fish** (shell), Godot, **HTML5**,
|
||||||
**Python**, Java, **Javascript** (ES6), **Sass**
|
**Python**, Java, **Javascript** (ES6), **Sass**
|
||||||
|
|
||||||
#### Frameworks
|
#### Frameworks
|
||||||
@@ -17,8 +26,8 @@ draft: false
|
|||||||
|
|
||||||
#### Tools
|
#### Tools
|
||||||
- **Arch Linux**, Android Studio, **Debian**, **Command Line**,
|
- **Arch Linux**, Android Studio, **Debian**, **Command Line**,
|
||||||
**Git**, IntelliJ IDEA, **Pycharm**, **NGINX**, npm/yarn, **SFTP**,
|
**Git**, IntelliJ IDEA, **Pycharm**, **NGINX**, **SFTP**, **SSH**,
|
||||||
**SSH**, **Vim**
|
**Vim**
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
@@ -35,9 +44,8 @@ show="true" %}}
|
|||||||
into **PostgreSQL** database with **Django** backend.
|
into **PostgreSQL** database with **Django** backend.
|
||||||
- Created and tested various relational database schemas to maximize
|
- Created and tested various relational database schemas to maximize
|
||||||
efficiency for use cases.
|
efficiency for use cases.
|
||||||
- Produced bubble chart and (stacked) bar chart using
|
- Produced bubble chart and (stacked) bar chart using [**d3**]
|
||||||
[**d3**][d3 graph examples] to visualize the artists,
|
[d3 graph examples] to visualize the artists, genres and features of
|
||||||
genres and features of
|
|
||||||
tracks in library.
|
tracks in library.
|
||||||
|
|
||||||
[d3 graph examples]: https://github.com/d3/d3/wiki/Gallery
|
[d3 graph examples]: https://github.com/d3/d3/wiki/Gallery
|
||||||
@@ -124,27 +132,6 @@ url="https://kevin-mok.com/server/" date="Aug. 2019 — present" %}}
|
|||||||
|
|
||||||
<!--- DigitalOcean Droplet }}} -->
|
<!--- DigitalOcean Droplet }}} -->
|
||||||
|
|
||||||
<!--- Super ADA Bros. {{{ -->
|
|
||||||
|
|
||||||
{{% resume/project name="Super ADA Bros"
|
|
||||||
url="https://github.com/Kevin-Mok/SuperADABros" date="May 2019" %}}
|
|
||||||
|
|
||||||
- Designed clone of Super Mario Bros 1-1, but Mario is mobility-impaired and
|
|
||||||
uses ramps to get through the level.
|
|
||||||
- Uses **OpenCV** to track player's head movement which is then translated to
|
|
||||||
in-game movement. [Video Demo]
|
|
||||||
- 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
|
|
||||||
[Video Demo]: https://youtu.be/vRdENLGrBqM
|
|
||||||
|
|
||||||
{{% /resume/project %}}
|
|
||||||
|
|
||||||
|
|
||||||
<!--- Grocery Finder }}} -->
|
|
||||||
|
|
||||||
{{% /resume/section %}}<!--- }}} -->
|
{{% /resume/section %}}<!--- }}} -->
|
||||||
|
|
||||||
{{% resume/section "Work Experience" %}}<!--- {{{ -->
|
{{% resume/section "Work Experience" %}}<!--- {{{ -->
|
||||||
|
|||||||
@@ -1,12 +1,13 @@
|
|||||||
// vim: ft=markdown
|
# Base
|
||||||
|
|
||||||
- bg colors
|
- bg colors
|
||||||
|
- increase font size
|
||||||
|
- all phone width blocks
|
||||||
|
- reset header sizes
|
||||||
|
- comment out font CSS stylesheet
|
||||||
|
- hide print icon
|
||||||
|
- right margin for social icons
|
||||||
|
|
||||||
# Resume
|
# Project
|
||||||
- site title max width
|
- remove expand icon and link
|
||||||
- switch project shortcode
|
- rm ADA Bros.
|
||||||
- rm details top margin
|
- show all sections by default
|
||||||
|
|
||||||
# Letter
|
|
||||||
- letter font size
|
|
||||||
- h2
|
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
{{ partial "base/header.html" . }}
|
{{ partial "base/header.html" . }}
|
||||||
|
|
||||||
|
{{ partial "resume/print-icon.html" . }}
|
||||||
|
|
||||||
{{ partial "base/site-title.html" . }}
|
{{ partial "base/site-title.html" . }}
|
||||||
|
|
||||||
{{ partial "resume/contact-info.html" . }}
|
{{ partial "resume/contact-info.html" . }}
|
||||||
|
|||||||
@@ -18,7 +18,7 @@
|
|||||||
<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>
|
||||||
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
|
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>
|
||||||
<!-- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700" type="text/css"> -->
|
<!-- <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Source+Code+Pro:400,700" type="text/css"> -->
|
||||||
<link rel='stylesheet' href='//cdn.jsdelivr.net/npm/hack-font@3.3.0/build/web/hack-subset.css'>
|
<!-- <link rel='stylesheet' href='//cdn.jsdelivr.net/npm/hack-font@3.3.0/build/web/hack-subset.css'> -->
|
||||||
<!-- <link rel="stylesheet" href="https://meyerweb.com/eric/tools/css/reset/reset.css" type="text/css" media="all" /> -->
|
<!-- <link rel="stylesheet" href="https://meyerweb.com/eric/tools/css/reset/reset.css" type="text/css" media="all" /> -->
|
||||||
<link rel="stylesheet" href="{{ "css/style.css" | relURL }}" type="text/css">
|
<link rel="stylesheet" href="{{ "css/style.css" | relURL }}" type="text/css">
|
||||||
{{ $main_sass := resources.Get "sass/main.scss" }}
|
{{ $main_sass := resources.Get "sass/main.scss" }}
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<div id="about">
|
<div id="about">
|
||||||
<h2>Welcome to my site!</h2>
|
<h2>Welcome to my site!</h2>
|
||||||
<p>
|
<p>
|
||||||
I'm Kevin Mok - a Computer Science
|
I'm Kevin Mok - a 3<sup>rd</sup> year Computer Science
|
||||||
student at the University of Toronto, and I'm greatly interested in all things Linux and
|
student at the University of Toronto, and 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>.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<div id="print-icon">
|
<div id="print-icon">
|
||||||
<a href="{{ "pdf/kevin-mok-resume.pdf" | relURL }}" target="_blank">
|
<a href="{{ "kevin-mok-resume.pdf" | relURL }}" target="_blank">
|
||||||
<img src="{{ "img/resume/printer.svg" | relURL }}" alt="printer-icon">
|
<img src="{{ "img/resume/printer.svg" | relURL }}" alt="printer-icon">
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</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,21 +1,20 @@
|
|||||||
<div class="project">
|
<div class="project">
|
||||||
<div class="row project-header">
|
<div class="row project-header">
|
||||||
<div class="col-8 text-left">
|
<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> -->
|
||||||
<a class="project-link" href="{{ .Get "url" }}" target="_blank">
|
<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">
|
||||||
{{ .Get "name" }}
|
{{ .Get "name" }}
|
||||||
<img class="down-triangle" src="{{ "img/resume/down-triangle.png" | relURL }}" alt="link-icon">
|
<!-- <img class="down-triangle" src="{{ "img/resume/down-triangle.svg" | relURL }}" alt="link-icon"> -->
|
||||||
|
<!-- <img class="down-triangle" src="{{ "img/resume/down-triangle.png" | relURL }}" alt="link-icon"> -->
|
||||||
</h2>
|
</h2>
|
||||||
</button>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-4 text-right date">{{ .Get "date" }}</div>
|
<div class="col-4 text-right date">{{ .Get "date" }}</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="collapse{{ with .Get "show" }} show{{ end }}" id="{{ .Get "name" | lower | urlize }}-details">
|
<div class="show" id="{{ .Get "name" | lower | urlize }}-details">
|
||||||
<div>
|
<div>
|
||||||
{{ .Inner }}
|
{{ .Inner }}
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
BIN
static/kevin-mok-resume.pdf
Normal file
BIN
static/kevin-mok-resume.pdf
Normal file
Binary file not shown.
Submodule static/pdf deleted from 803aa46cb9
@@ -38,9 +38,6 @@ const generateTable = (table, data) => {
|
|||||||
aElem.textContent = elem['shortUrl']
|
aElem.textContent = elem['shortUrl']
|
||||||
cell.appendChild(aElem)
|
cell.appendChild(aElem)
|
||||||
break
|
break
|
||||||
case 'description':
|
|
||||||
cell.innerHTML = elem[key]
|
|
||||||
break
|
|
||||||
case 'repo':
|
case 'repo':
|
||||||
aElem.href = elem['repoUrl']
|
aElem.href = elem['repoUrl']
|
||||||
aElem.textContent = elem[key]
|
aElem.textContent = elem[key]
|
||||||
|
|||||||
Reference in New Issue
Block a user