Selected Projects

A curated collection of software engineering projects spanning systems programming, backend development, web applications, and AI.

MockOS command line demo
Project 01

MockOS

Modular in-memory file system demonstrating extensible object-oriented software architecture in C++14.

Tech Stack

C++14 · CMake · GoogleTest · CLI

Key Highlights

  • Designed an extensible command framework using abstract interfaces
  • Applied 7 classic object-oriented design patterns
  • Built an in-memory file system supporting multiple file types
  • Implemented macro command composition and password-protected files
  • Developed comprehensive GoogleTest unit tests
Ancient Chinese Bronzes web application preview
Project 02

Ancient Chinese Bronzes

React-based educational web application combining curated historical content with live museum collection data through REST API integration.

Tech Stack

React · Vite · React Router · JavaScript · CSS · REST API

Key Highlights

  • Built a multi-page React application with client-side routing using React Router
  • Integrated The Metropolitan Museum of Art Collection API for live artifact browsing
  • Implemented dynamic filtering by historical period and artifact type
  • Developed an interactive lightbox for browsing grouped artifact images
  • Designed reusable React components for timelines, galleries, and structured content sections
Banking CLI App command line demo
Project 03

Banking CLI App

Java command-line banking simulator demonstrating modular object-oriented design, business-rule modeling, and automated testing through reusable customer and administrator workflows.

Tech Stack

Java · JUnit 5 · Bash · CLI · OOP

Key Highlights

  • Designed a modular banking system with separated domain logic, customer workflows, and administrator controls
  • Implemented checking and savings account support with transfers, transaction history, overdraft protection, and statement generation
  • Built administrator features including account freezing, maintenance fee collection, and configurable savings interest
  • Refactored account modeling with Java enum types and centralized reusable CLI input validation to improve maintainability and robustness
  • Developed automated JUnit 5 tests covering banking logic, customer authentication, and interactive CLI workflows