Calvin Liang
I'm a full-stack developer and a student at the University of British Columbia.
GitHub LinkedIn Email Public Key

Projects

Reorderable

120 Stars on GitHub
Mobile
Android
Kotlin
Jetpack Compose
A simple library that enable drag-and-drop reordering in lists in Jetpack Compose.

See it in action

Webpack Image Loaders

461k+ Downloads on NPM 103 Stars on GitHub
Node.js
JavaScript
TypeScript
A suite of 6 loaders for the Webpack JavaScript bundler that offers features like thumbnail creation, dominant color extraction for pre-loading previews, and generating differently sized images for responsive design. These project enhances image loading efficiency, saving bandwidth and reducing loading times for an improved user experience.

See it in action

Clicka!

Clicka!

161k+ downloads on the App Store with 4.8★ 12k+ downloads on Google Play with 4.7★
Mobile
iOS
tvOS
Swift
SwiftUI
Android
Kotlin
Jetpack Compose
An absurdly simple yet addictive game, it involves a counter rising with each click, alongside a timer tracking your total game time. With each click, enjoy satisfying sound effects and visual ripples, celebrate milestones with confetti showers, unlock achievements, and compare your stats with players worldwide.

See it in action

CalcGPT.io

CalcGPT.io

Web
Vue.js
Astro
JavaScript
TypeScript
Sass
Machine Learning
LLM
CI/CD
An amusing web app, satirizing the trend of employing advanced GPT large language models for trivial tasks. It depicts a simple calculator with adjustable "Temperature" and "Top P" sliders, embodying a comical way to control overkill AI functionalities. This project humorously illustrates the potential redundancy of next-generation AI for straightforward tasks, serving as a lighthearted critique of the tech industry's novelty obsession.

See it in action

SecretDrop.io

SecretDrop.io

Web
Vue.js
Astro
JavaScript
TypeScript
Sass
Cryptography
CI/CD
A web app designed to establish secure communication in public domain. It generates encryption and decryption links, allowing texts and files to be safely shared. Developed out of a real-life need to send private messages on public forums, SecretDrop.io democratizes public key cryptography. Ideal for anyone looking to securely communicate over public platforms.

See it in action

Kitsilano School App

Kitsilano School App

Mobile
iOS
Objective-C
Android
Java
Database
Express.js
TypeScript
React Native
A multifunctional iOS and Android application I created in high school. This app was designed to keep students updated about upcoming school events and homework assignments. Additionally, it offers a platform for administrators, teachers, and clubs to share events, send out notifications, and disseminate news, ensuring efficient and seamless communication within the school community.

Media Appearances

Kitsilano Secondary Heritage Tour

Kitsilano Secondary Heritage Tour

Web
JavaScript
A virtual journey through the historic Kitsilano Secondary School, created before its destructive renovation. The project serves as a digital time capsule, preserving the walls that bore witness to countless student memories. Designed in collaboration with my arts teacher Mr.Mehl during my time at the school.

See it in action

Media Appearances

toggleairport

191 Stars on GitHub
macOS
A script for macOS to turn off WiFi when Ethernet is plugged in, and turn on WiFi when Ethernet is unplugged.

See it in action

USB Morse Code Key

USB Morse Code Key

C
Arduino
A project that breathes life into a historical communication method, marrying it with modern hardware and software to forge an interactive, functional tool. It's more than just a historical novelty; it yields practical use. Perfect for Morse Code enthusiasts and history buffs.

See it in action

Hot Words on Reddit

Hot Words on Reddit

Web
JavaScript
TypeScript
D3.js
Express.js
Machine Learning
Natural Language Processing
A web app that leverages natural language processing and sentiment analysis to creates interactive word clouds that visually represent the most discussed topics on Reddit. Each word's sentiment is intuitively color-coded, with a scale from green (positive) to red (negative). By providing a real-time snapshot of trending conversations, Hotwords of Reddit serves as a unique tool for understanding public sentiment on various issues.
Kitsilano Grad Composite Gallery

Kitsilano Grad Composite Gallery

Web
JavaScript
A web app designed for Kitsilano Secondary School alumni. It serves as a digital yearbook, offering an online space for alumni to reminisce and reconnect with their high school days.

See it in action

Martini Call Blocker

Martini Call Blocker

Mobile
Android
Kotlin
Jetpack Compose
An Android app that offers robust call blocking for intrusive spam calls. Utilizing the new STIR/SHAKEN protocol mechanisms, it ensures users receive only authenticated calls.

See it in action

NaviChat

NaviChat

Electron
Node.js
JavaScript
TypeScript
Raspberry Pi
An innovative way-finding kiosk designed for Emily Carr University to guide students and visitors alike. Combining a large touchscreen display with an integrated voice assistant, it provides an interactive experience of location search. Running on a Raspberry Pi and powered by Electron, the software includes 500 context-aware dialogs for voice-activated queries. Users can conveniently search for direction by typing or speaking, effectively simplifying campus navigation.

RPi-MFRC522

Node.js
JavaScript
TypeScript
C++
Raspberry Pi
A driver written in C++ for MFRC522 RFID card readers that exposes them to the Node.js runtime.

See it in action

Touch ID Box

Touch ID Box

Apple
3D Printing
A 3D printed enclosure that transform your Apple Magic Keyboard into a standalone Touch ID button.

See it in action

Barrelfish

C
Operating Systems
Distributed Systems
Redesigned and re-implemented parts of the experimental operating system, Barrelfish, originally developed by ETH Zurich and Microsoft Research, to explore the frontier of multikernel and heterogeneous hardware approaches

Peer-to-Peer Isolation-Aware Value Access Network - P2P IVAN

Go
Distributed Systems
A distributed, peer-to-peer, fault-tolerant, and scalable key-value store.