Projects

2024

Fanyi main image
Fanyi

Fanyi (翻译) is a screen reading application that was made to complement my attempt at improving my Chinese. It reads either Simplified or Traditional Chinese within defined regions of your screen, attempts to break up these sentences into phrases and provides translations for them.

  • ·

    Implemented in Python with the use of EasyOCR and pkuseg

  • ·

    Makes use of the CEDICT dictionary for translating phrases

  • ·

    Preset system to define regions of the screen to be captured

PythonUI/UX Design

2023

La Biblioteca main image
La Biblioteca

La Biblioteca, also known as "The Library" in English, is a personal project that was aimed to do two things: teach myself how to develop a Rust application, as well as experimenting on how to implement a REST API after reading API Design Patterns by JJ Geewax.

  • ·

    Implemented in Rust with the Axum framework

  • ·

    Exposes APIs for interaction with a library-like system, providing features such as borrowing and returning books

  • ·

    Contains integration tests that test API functionality, with continuous integration implemented via GitHub Actions

RustAPI DesignIntegration Testing

2022

Microchip main image
Microchip

Microchip is a quality of life addition to Minecraft that allows players to keep track of the many different monsters and characters present in Minecraft. The mod provides an interface that can be toggled by the player, with various interactions and useful information displayed to them on the window.

  • ·

    Implemented in Java on top of the Minecraft Fabric development toolchain

  • ·

    Provides players an interface to view the current status (e.g. health, position) of Minecraft monsters and characters

  • ·

    Supplements players with ways to organise their tracked characters with grouping and categorising features

JavaGradleMinecraftFabricUI/UX DesignPixel Art

2021

Happy Holidays main image
Happy Holidays

Happy Holidays is a Minecraft expansion that aims to introduce elements of Christmas into Minecraft. It adds new blocks, items, entities, interactions and gameplay elements to enhance the vanilla Minecraft gameplay.

  • ·

    Implemented in Java using the Minecraft Forge framework

  • ·

    Adds ornaments for players to build with (Christmas baubles, tinsels, Christmas lights)

  • ·

    Adds new in-game characters and monster: the Grinch, Santa's Elf, Santa, Gingerbread Men, the Nutcracker

  • ·

    Introduces new gameplay elements such as boss fights and Christmas themed quests

JavaGradleMinecraftForgePixel Art3D Modelling
Sync Along main image
Sync Along

Sync Along is a web application that I developed alongside my group mates as part of CS3219 Software Engineering Patterns in the National University of Singapore. The application allows users to control a shared playlist that plays music via YouTube video links, synchronising the player's actions and timing across multiple devices.

  • ·

    Fullstack application developed with React as the frontend and TypeScript / Express on the backend

  • ·

    Provides user registration and authentication services

  • ·

    Provides chat room hosting features for users to join and listen to music together

  • ·

    Implements a music playback system that allows users to synchronise actions and timings

  • ·

    Introduces playlist controls for users to modify and choose what songs they wish to listen to with their friends

ReactNodeTypeScriptRedisMongoDB

2020

joRdan main image
joRdan

joRdan (a combination of Joash, R and Daniel) is an implementation of the R programming language in TypeScript, developed for a project as part of CS4215 Programming Language Implementation in the National University of Singapore. The system allows users to write valid R programs and executes them, using TypeScript to compile the written application.

  • ·

    Implemented with TypeScript, with heavy reference to the R language specifications

  • ·

    Parses valid R programs into TypeScript, which then compiles into functioning programs

  • ·

    Provides a user interface for Read-Eval-Print-Loop (REPL) features

RTypeScript

2018

VJChoir Archives main image
VJChoir Archives

The VJChoir Archives is an archival website that aims to document the past performances, batches and information of the Victoria Junior College Choir. It provides features such as static displays of different batches and performance information, as well as interactive elements such as music playback and playlist control features.

  • ·

    Static website implemented using Angular and deployed via GitHub pages

  • ·

    Displays information on past batches and performances

  • ·

    Provides interactive music playback features and playlist controls for users to relisten to old performances

HTMLSCSSAngularUI/UX Design

2017

Lumbridge Guide main image
Lumbridge Guide

Lumbridge Guide is an application that I worked on as part of my initial foray into the world of application development and computer science. It is an Android application that provided information regarding the player's statistics in the game Old School RuneScape.

  • ·

    Developed in Java for the Android operating system

  • ·

    Implemented high score lookup features for users to see their own player statistics

  • ·

    Provided displays of data using the Old School RuneScape APIs (e.g. in-game stock market valuation displays)

AndroidJavaGradle