Compare commits

..

7 Commits

Author SHA1 Message Date
ef89cf3dce Update LinkedIn/GitHub contact info 2024-08-09 12:00:03 -04:00
6a02840844 Latex styling 2024-08-09 11:31:01 -04:00
7daf438efb All black colors 2024-08-09 11:24:26 -04:00
28d697c815 Latex font 2024-08-09 11:21:42 -04:00
0c51ba1b76 Update 2024-08-09 10:30:00 -04:00
29f8b13011 Font size for Chrome printing 2024-06-02 18:57:50 -04:00
b196251595 Letter CSS/Devfile commit 2023-09-22 13:39:51 -04:00
18 changed files with 118 additions and 146 deletions

View File

@@ -14,6 +14,7 @@ $base-sky-blue: #66cccc;
$base-blue: #6699cc;
$base-violet: #cc99cc;
$base-dark-orange: #d27b53;
$link-color: #4287cd;
/* .base00 { color: #2d2d2d; }
.base01 { color: #393939; }
@@ -103,14 +104,17 @@ body {
margin: 0;
background-color: $background-color;
color: $color;
// line-height: 1.5;
line-height: 1.55;
line-height: 1.5;
// font-size: 100%;
font-size: 15px;
// font-size: 15px;
font-size: 17px;
// font-size: 20px;
// font-size: 22px;
/* font-family: 'Source Code Pro', monospace; */
font-family: 'Hack', monospace;
// font-family: 'Hack', monospace;
// body {
// font-family: 'Times New Roman', serif;
font-family: "Computer Modern Serif";
// }
display: flex;
flex-direction: column;
min-height: 100vh;
@@ -501,18 +505,20 @@ header {// {{{
}
}
a {// {{{
color: $link-color;
text-decoration: none;
&:hover {
text-decoration: none;
}
}// }}}
// font-size: .9em;
font-size: .8em;
font-size: 1.4em;
// font-size: .8em;
.row {
// flex-grow: 1;
color: $base05;
// color: $base05;
color: $link-color;
img {
height: 1em;
@@ -545,6 +551,7 @@ header {// {{{
#resume {// {{{
a {// {{{
// text-decoration: none;
color: $link-color;
text-decoration: underline;
&:hover {
text-decoration: underline;
@@ -552,7 +559,8 @@ header {// {{{
}// }}}
h1 {// {{{
color: $base-orange;
// color: $base-orange;
color: black;
// margin-top: 1.3rem;
margin-top: 1rem;
font-size: 1.2em;
@@ -614,13 +622,16 @@ header {// {{{
.project-header {
// margin-bottom: .6em;
margin-bottom: .1em;
// margin-bottom: .1em;
margin-bottom: 5px;
}
.project-title {
// color: $base-blue;
color: black;
}
.project-link {
&:link {
text-decoration: none;
}
&:hover {
text-decoration: none;
}
@@ -654,8 +665,32 @@ header {// {{{
}
}// }}}
.company {
// color: #fe4646;
color: black;
font-weight: bold;
font-size: 1.2em;
margin-bottom: 5px;
}
.position {
// color: black;
// color: $base-sky-blue;
// color: $base-blue;
color: black;
font-weight: bold;
// font-style: italic;
// font-size: 1.1em;
font-size: 1em;
// margin-bottom: 5px;
margin-bottom: 15px;
}
.institution {
color: $base-yellow;
// color: $base-yellow;
// color: $base-dark-orange;
// color: $base-blue;
color: black;
font-weight: bold;
font-size: 1.1em;
margin-bottom: 5px;
@@ -677,6 +712,8 @@ header {// {{{
// }
&.letter {
font-size: 1.4em;
// font-size: 2em;
margin-top: 2em;
line-height: 1.5em;
@@ -761,16 +798,21 @@ header {// {{{
h1.site-title {// {{{
text-align: center;
// font-size: 4.2em;
font-size: 3.2em;
// font-size: 3.2em;
font-size: 2.5em;
// color: #66cccc;
color: $base05;
// margin-top: 1rem;
// margin-bottom: 0.75rem;
@include vert-margin-rem(.75);
@include a-color($base-sky-blue);
// @include a-color($base-sky-blue);
a {
text-decoration: none;
color: black;
// text-decoration: none;
text-decoration: underline;
text-decoration-thickness: 2px;
text-underline-offset: 5px;
}
// @media (max-width: $phone-width) {

View File

@@ -1,5 +1,5 @@
# baseURL: http://localhost:1313/
baseURL: https://kevin-mok.com/
baseURL: http://localhost:1313/
# baseURL: https://kevin-mok.com/
# baseURL: /home/kevin/coding/mf-site/public
languageCode: en-us
# title: Kevin Mok's Website

View File

@@ -24,29 +24,22 @@ title="Cloud/Software Engineer Intern" date="May 2020 — Aug 2021" %}}
{{% resume/section projects %}}<!--- {{{ -->
<!--- AWS {{{ -->
<!--- Astronofty {{{ -->
{{% resume/project name="AWS Server/Kubernetes"
url="https://kevin-mok.com/server/" date="May 2024" show="true" %}}
{{% resume/project name="Astronofty"
url="https://github.com/Kevin-Mok/astronofty" date="Jan 2023"
show="true" %}}
- Deployed [various web apps](https://kevin-mok.com/server/) using **Docker** (Compose) and on an
**AWS EC2** Debian/**Linux** server.
- Created **Kubernetes** [manifest files](https://github.com/Kevin-Mok) to quickly recreate my server setup
(with persistent storage/restarts and open ports).
- Used Amazon Route 53's DNS and **NGINX** to route
subdomains to each web application.
- Used AWS security groups to allow inbound HTTPS traffic.
- Used Amazon EBS snapshots to regularly back up server.
- Wrote a [**JavaScript** script][server script] and [systemd service][systemd service]/[timer]
to display the uptime of my pages every hour.
[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
- Created for a 36 hour hackathon (UofTHacks X) where it **came 2nd overall**.
- Created and deployed a smart contract with **Solidity** on
the Ethereum blockchain to create/buy/sell NFT's
using MetaMask.
- Wrote a **React** hook to fetch and show listed NFT's, NFT details and owned NFT's.
- Used API to synchronously upload images and metadata to IPFS.
{{% /resume/project %}}
<!--- AWS }}} -->
<!--- Astronofty }}} -->
<!--- Rarity Surf {{{ -->
@@ -59,42 +52,43 @@ date="Oct 2021" show="true" %}}
Selenium) with a **discrepancy of <0.25%**.
- Used app to frontrun purchases of **top 5%** rarity NFT's
against competing buyers.
- Wrote **Django (Python)** backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
- Wrote **Django** backend to fetch metadata from IPFS, store rarity rankings in PostgreSQL and serve rarity data using GraphQL.
- Wrote **React** frontend with hooks to dynamically load rarity data. Styled with Tailwind.
{{% /resume/project %}}
<!--- Rarity Surf }}} -->
<!--- Astronofty {{{ -->
<!--- DigitalOcean {{{ -->
{{% resume/project name="Astronofty"
url="https://github.com/Kevin-Mok/astronofty" date="Jan 2023"
show="true" %}}
{{% resume/project name="Personal Server"
url="https://kevin-mok.com/server/" date="Aug. 2019 — present" show="true" %}}
- Created for a 36 hour hackathon (UofTHacks X) where it [**came 2nd overall**](https://devpost.com/software/astronofty).
- Created and deployed a smart contract with **Solidity** on
the Ethereum blockchain to create/buy/sell NFT's
using MetaMask.
- Wrote a **React** hook to fetch and show listed NFT's, NFT details and owned NFT's.
- Used API to synchronously upload images and metadata to IPFS.
- Deployed various web apps with backends using NGINX on a Debian/**Linux** server.
- Wrote a [**JavaScript** script][server script] and [systemd service][systemd service]/[timer]
to display the uptime of my pages every hour.
- 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 %}}
<!--- Astronofty }}} -->
<!--- DigitalOcean Droplet }}} -->
{{% /resume/section %}}<!--- }}} -->
{{% resume/section skills %}}<!--- {{{ -->
AWS, Kubernetes, Docker (Compose), **JavaScript**, **React**, **Python**, Go, Bash, Solidity, C, **Django**, Node.js, Jenkins, PostgreSQL, **Linux**, **Git**, **Command Line**
Kubernetes, **JavaScript**, **React**, **Python**, Go, Bash, Solidity, C, **Django**, Node.js, Jenkins, PostgreSQL, **Linux**, **Git**, **Command Line**
{{% /resume/section %}}<!--- }}} -->
{{% resume/section education %}}<!--- {{{ -->
{{% resume/education name="University of Toronto"
title="Computer Science Specialist — 3.84 GPA (CS). Graduated with High Distinction." date="2018 — 2023" %}}
title="Computer Science Specialist — 3.84 GPA (CS)" date="2018 — 2023" %}}
{{% /resume/section %}}<!--- }}} -->

View File

@@ -1,19 +1,3 @@
<!--- CSC369 {{{ -->
{{% resume/project name="Custom Kernel Module"
url="https://kevin-mok.com/server/" date="Jan. 2022" show="true" %}}
- Wrote and installed a [custom Linux kernel module](https://github.com/Kevin-Mok/interceptor-kernel/blob/master/a1/interceptor.c) in **C**.
- Intercepted pre-existing system calls using
custom kernel module by sending commands to
userspace.
- Monitored specific process ID's in my system
call to intercept their system calls.
{{% /resume/project %}}
<!--- CSC369 }}} -->
<!--- Spotify Graphs {{{ -->
{{% resume/project name="Spotify Graphs"

View File

@@ -1,18 +0,0 @@
# To-Do
- check price of AWS server
- run Docker apps on it
- run domain
- run/create Docker compose
- Dockerize app
# Done
# Points
- run/deploy K8s locally on minikube using kubectl
- features
- Dockerize app
- run Docker on server (AWS)
# Replace
- personal server
- Astronofy

View File

@@ -19,7 +19,7 @@
<img src="{{ "img/social/github.svg" | relURL }}"
alt="github-logo">
</a>
<a href="https://git.kevin-mok.com/Kevin-Mok?tab=activity" target="_blank">
<a href="https://git.kevin-mok.com/" target="_blank">
<img src="{{ "img/social/gitea.svg" | relURL }}" alt="gitea-logo">
</a>
·

View File

@@ -12,7 +12,7 @@
{{ hugo.Generator }}
<meta name="google-site-verification" content="3aZhrY5bFgQY0HY2DNNUhbkuIfVEcwkrQHnbJd8jCCQ" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- <script src="https://cdn.khkm.tk/live.js" charset="utf-8"></script> -->
<!-- <script src="https://cdn.khkm.gq/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">
<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>
@@ -20,6 +20,8 @@
<!-- <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="https://meyerweb.com/eric/tools/css/reset/reset.css" type="text/css" media="all" /> -->
<link rel="stylesheet" type="text/css"
href="https://cdn.rawgit.com/dreampulse/computer-modern-web-font/master/fonts.css">
<link rel="stylesheet" href="{{ "css/style.css" | relURL }}" type="text/css">
{{ $main_sass := resources.Get "sass/main.scss" }}
{{ $main_style := $main_sass | resources.ToCSS }}

View File

@@ -1,7 +1,4 @@
<h1 class="site-title">
<span class="surrounding">[</span><a href="{{ .Site.BaseURL }}"><span class="base08">K</span><span
class="base0f">e</span><span class="base09">v</span><span
class="base0a">i</span><span class="base0b">n </span><span
class="base0c">M</span><span class="base0d">o</span><span
class="base0e">k</span></a><span class="surrounding">] # _</span>
<span class="surrounding"></span><a href="{{ .Site.BaseURL }}">
<span>Kevin Mok</span>
</h1>

View File

@@ -1,22 +1,10 @@
<div id="about">
<h2>Welcome to my site!</h2>
<p>
I'm Kevin Mok. Here are a few things about myself!
<ul>
<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"
target="_blank">FOSS/FLOSS</a>.
</li>
</ul>
I'm Kevin Mok - a Computer Science
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"
target="_blank">FOSS/FLOSS</a>.
</p>
{{ partial "home/me-equation.html" . }}

View File

@@ -1,8 +1,14 @@
<div class="me-equation">
<div class="equation-part">
<a href="https://www.redhat.com/" target="_blank">
<img src="{{ "img/home/red-hat.svg" | relURL }}"
alt="red-hat-logo">
<a href="https://www.gnu.org/" target="_blank">
<img src="{{ "img/home/gnu.svg" | relURL }}" id="gnu" alt="gnu-logo">
</a>
<p>+</p>
</div>
<div class="equation-part">
<a href="https://www.wikiwand.com/en/Arch_Linux" target="_blank">
<img src="{{ "img/home/arch.svg" | relURL }}" alt="linux-logo">
<!-- <img src="{{ "img/home/larbs.png" | relURL }}" alt="linux-logo"> -->
</a>
<p>+</p>
</div>
@@ -10,14 +16,8 @@
<a href="https://www.utoronto.ca/" target="_blank">
<img src="{{ "img/home/uoft-logo.svg" | relURL }}" alt="uoft-logo">
</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>
</div>
<div class="equation-part">
<img src="{{ "img/home/hexatar.png" | relURL }}" id="hexatar" alt="my-avatar">
</div>

View File

@@ -12,7 +12,7 @@
<div id="linkedin" class="col text-right">
<a href="https://www.linkedin.com/in/Kev-Mok" target="_blank">
<span class="url-info">
Kev-Mok
linkedin.com/in/Kev-Mok
</span>
<img src="{{ "img/social/linkedin.svg" | relURL }}" alt="linkedin-icon">
</a>
@@ -28,11 +28,11 @@
</a>
</div>
<div id="website" class="col text-right">
<a href="https://kevin-mok.com/" target="_blank">
<a href="https://github.com/Kevin-Mok" target="_blank">
<span class="url-info">
kevin-mok.com
github.com/Kevin-Mok
</span>
<img src="{{ "img/resume/link.svg" | relURL }}" alt="link-icon">
<img src="{{ "img/social/github.svg" | relURL }}" alt="link-icon">
</a>
</div>
</div>

View File

@@ -7,8 +7,7 @@
</div>
<div class="col text-right date">{{ .Get "date" }}</div>
</div>
<!-- <span class="title"> -->
<span>
<span class="title">
{{ .Get "title" }}
</span>
</div>

View File

@@ -3,7 +3,9 @@
See my
<a href="https://www.linkedin.com/in/Kev-Mok"
target="_blank">
LinkedIn</a> for references from my Red Hat managers/mentee,
a startup client and a graduate student mentor.
LinkedIn
</a>
for references from my Red Hat managers/mentee and a
startup client.
</span>
</div>

View File

@@ -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

Binary file not shown.

Before

Width:  |  Height:  |  Size: 465 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 465 KiB