Projects

Here are some projects I’ve done in the past.

Trace Map

Visualization of my duration of stay at each geographic location.


Watermark Toolbox

Remove watermark in images with basic CV operations.


Galaxy Simulator

This is a small simulator I’ve made after learning Three.js. It generates some planets in the 3-D space randomly and simulates the gravity and inelastic collision between them, which equals a minimal physics engine.


Life Calendar

I was impressed by the idea of Life Calendar in the passage Your Life in Weeks, and attempted to make a front-end implementation. This small application can record the things I’ve done everyday and the “meaningfulness” I assign to them, the details are recorded in the post Life Calendar.


SQL Visualizer

This AST Visualizer is a by-product of Database Course Design, as I have already made a SQL parser. The input is SQL statements, and output is the abstract syntax tree of it. The Viz.js is used for drawing, which is Graphviz compiled to front-end.


MiniDB

MiniDB is the product of my Database course design. we made a Database management system called MiniDB, which supports basic CRUD, concurrent transactions and log-based recovery.


JSCHIP-8

JSCHIP-8 is a emulator of CHIP-8 game console at last century, it also supports an extended instruction set called Super CHIP.


pptx2md

This is a tool to convert PPTX presentation files to markdown. I use it to help me take notes faster on class.


Proteus CPU

This is a project from Computer Organization, we designed a CPU using Proteus, which is micro-program based. This logical design can be compiled down to PCB layout.