Projects

SyncBoard (iOS)

SyncBoard is a whiteboard iOS app synchronized via local Bluetooth and Wi-Fi connectivity. Unlike other existing whiteboard apps, SyncBoard does not require an internet connection.

SyncBoard 2 is an ongoing project of the exceeding version of SyncBoard. Instead of depending on the local network only, SyncBoard 2 allows users to use an internet server based on node.js to interact with other users remotely. Also, cybersecurity is another improvement to the first version. The new version uses encrypted protocols to communicate with other peers. In addition, users can install and set up their own server easily to get private sessions.

Keynote.js

Keynote.js is a framework I developed for one of my freelancer clients. With this framework, building web pages with sophisticated animation sequences become much easier and intuitive. I used this framework to create and implement several commercial homepage designs.

Also, since this framework is based on fundamental technology such as HTML5, CSS3 and ECMAScript 6, it is painless to use and integrate with other existing CMS platforms such as WordPress without the need of more plug-ins. Dynamic contents and AJAX data are also compatible.

Demo: http://www.studiokatana.com

Source Code:  GitHub (Version 1) GitHub (Version 2) 

PachyDB (current)

PachyDB is an ongoing project of implementation of a relational database using C++. Based on the paged file system and in-page directory system, PachyDB reads and writes data record efficiently. SQL interpreter will be implemented soon.

Visual Genetic Algorithm Emulator

Visual Genetic Algorithm Emulator uses JavaScript to visualize the process of genetic algorithm for solving 2D and 3D problem.

Source Code: GitHub

Research: Parallax-controlled Finger Pointing Interface for Mixed Reality Environment

Selecting an object far away from the standing position in mixed reality environment using finger is challenging. Because of the existence of relative binocular parallax between the user’s hand and the object of the target, the pointing directions of the finger from the left eye and the right eye differ slightly. This difference makes two variable paths passing the finger from both eyes, resulting in ambiguity for selections. Therefore, it makes selecting objects far away from the user becomes a difficult task and significantly impacts the user’s performance.

In this paper, a novel method was introduced. This approach improved the user’s performance on such tasks utilizing diminished reality techniques with stereo RGB cameras. By adjusting the binocular parallax of hand, the approach in this paper made the pointing position of the finger from both eyes the same. Thus, it kept pointing positions of the finger from both eyes match the same location. As a result, the performance and accurateness of pointing and selection task can be improved.

Download: Research Paper

PachyVPN

Created a VPN service for visiting blocked websites from China.
Multiple protocols for different internet connection conditions.

PachyNet.IO

PachyNet.IO is a project using modern front-end techniques to mimic a multi-function, text based user interface of UNIX terminal. 

Link: Visit

AirForce (Game)

AirForce is a simple Shoot ’em up game implemented with jQuery and GIMP image editor.

Source Code: GitHub

Digital Scale Reader

Digital Scale Reader reads the measure result from OMRON body composition monitor with scale by analyzing video footage of the display showing the results. This program is implemented using OpenCV and Python.

Source Code: GitHub

WordMaster

WordMaster is a multi-platform app for memorizing vocabulary of any given language database. The database can be converted from major word listing websites and books easily. WordMaster is created using Python and Qt User Interface Library to achieve better compatibility of both macOS and Windows operating system.

Source Code: GitHub

CanShooter (AR Game)

CanShooter is an AR game developed in Unity 3D and Vuforia library. This game uses Vuforia markers to locate virtual gun and gaming platform, and uses a LED for trigger. 

Source Code: GitHub