PageSourceSearch

https://kangcalvin.cv/

html kangcalvin.cv collected 2026-10-09 22:07:13 UTC 3,372 bytes, 85 lines download raw bytes

1<!DOCTYPE html>
2<html lang="en">
3
4<head>
5
6  <meta charset="UTF-8">
7  <meta name="viewport" content="width=device-width, initial-scale=1.0">
8  <meta name="description" content="Hello there! I'm Calvin, a Product Designer specializing in UI and design systems, with a strong background in front-end web development.">
9  <meta property="og:image" content="https://calvinckang.github.io/images/social-image.jpg">
10  <meta property="og:image:width" content="1200">
11  <meta property="og:image:height" content="627">
12  <link rel="stylesheet" href="style.css">
13  <link rel="icon" type="image/x-icon" href="images/favicon.png">
14  <title>Calvin Kang — Portfolio</title>
15
16  <!-- Global site tag (gtag.js) - Google Analytics -->
vendor: 66 bytes, lines 16-17
16
17  <script async src="https://www.googletagmanager.com/gtag/js?id=
17G-MEK505NVDB
vendor: 14 bytes, lines 17-18
17"></script>
18  
18<script>
19    
vendor: 139 bytes, lines 19-22
19window.dataLayer = window.dataLayer || [];
20    function gtag(){dataLayer.push(arguments);}
21    gtag('js', new Date());
22    gtag('config', '
22G-MEK505NVDB
vendor: 6 bytes, lines 22-23
22');
23  
23</script>
23
24
25</head>
26
27<body>
28
29  <header>
30    <a href="index.html" class="logo">Calvin Kang</a>
31    <nav>
32      <a href="#work" class="active">Work</a>
33      <a href="about.html">About</a>
34      <a href="contact.html">Contact</a>
35    </nav>
36  </header>
37
38  <section class="intro">
39    <div class="middle-column memoji-scale">
40      <img id="memoji" src="images/memoji/calvin-memoji-1.png" alt="Calvin's Memoji">
41    </div>
42    <h1 class="home-intro">Hello there! I'm Calvin, a <span class="gradient-1">Product Designer</span> specializing in UI and design systems, with a strong background in front-end web development.</h1>
43    
43<script src="main.js"></script>
43
44  </section>
45
46  <section class="jumplink" id="work"></section>
47
48  <section class="grid-layout">
49    <a href="dow-jones-risk-and-compliance.html" class="thumbnail">
50      <img src="images/dow-jones-risk-and-compliance/cover-thumbnail.png" alt="Dow Jones Risk & Compliance"/>
51      <div class="snippet">
52        <h2>Dow Jones Risk & Compliance 🔒</h2>
53        <p>Redesigning a data-dense, financial crime compliance product to enhance its usability and accessibility, and building its design system.</p>
54      </div>
55    </a>
56    <a href="dow-jones-interoperable-modules.html" class="thumbnail">
57      <img src="images/dow-jones-interoperable-modules/cover-thumbnail.png" alt="Dow Jones Interoperable Modules"/>
58      <div class="snippet">
59        <h2>Dow Jones Interoperable Modules</h2>
60        <p>Building a modular solution that integrates Dow Jones' news and data directly into customers' workspaces to optimize their workflows.</p>
61      </div>
62    </a>
63    <a href="reportly.html" class="thumbnail">
64      <img src="images/reportly/cover-thumbnail.png" alt="Reportly"/>
65      <div class="snippet">
66        <h2>Reportly</h2>
67        <p>B2B SaaS web app for creating aesthetic reports with automated data import and custom branded templates collaboratively.</p>
68      </div>
69    </a>
70    <a href="chorescore.html" class="thumbnail">
71      <img src="images/chorescore/cover-thumbnail.png" alt="Chorescore"/>
72      <div class="snippet">
73        <h2>Chorescore</h2>
74        <p>Designing a household chores scheduling app with a twist: gamifying tasks to make them fun and engaging. Game on!</p>
75      </div>
76    </a>
77  </section>
78
79  <footer>
80    <p>Copyright © 2025 Calvin Kang. All rights reserved.</p>
81  </footer>
82
83</body>
84
85</html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.