My Projects

Assertify (Lightweight TS Test Runner)

A test framework built from scratch with Node.js and TypeScript to understand the core principles of Jest/Vitest, focusing on test discovery, sandboxed execution, and reporting.

Key Features:

  • Overview: A test framework built from scratch with Node.js and TypeScript to understand the core principles of Jest/Vitest, focusing on test discovery, sandboxed execution, and reporting.
  • Metrics: Implemented 5 core APIs ('describe', 'it', 'expect') and 7+ common assertion matchers ('toBe', 'toEqual','toBeTruthy').
  • Core Implementation: Used Node.js 'vm' module for sandboxed execution contexts to prevent test contamination. Used 'fs' and 'glob' for automatic discovery and execution of '*.test.ts' files.
  • Async & Efficiency: Supported 'async/await' for asynchronous test cases and kept the core implementation concise (within 500 lines of code).

Technologies:

Node.jsTypeScriptvm moduleglob

Interactive Games

Snake Game

Playable

A classic Snake game with difficulty levels and boundary wrapping. Features original gameplay mechanics with modern React implementation.

Key Features:

  • Three difficulty levels (Easy/Medium/Hard)
  • Boundary wrapping - snake goes through edges
  • Score tracking and high score system
  • Food collision detection with overlap prevention
  • Self-collision detection
  • Game over modal with restart functionality

Technologies:

ReactTypeScriptCanvas APIJavaScript

🎮

Bouncing Ball Game

Playable

An interactive ball physics game where you control a platform to bounce a ball and destroy all bricks.

Key Features:

  • Mouse-controlled platform movement
  • Realistic ball physics and collision detection
  • 10 randomly placed bricks to destroy
  • Boundary collision with speed reversal
  • Win condition when all bricks are destroyed
  • Dynamic brick collision based on impact direction

Technologies:

ReactTypeScriptCanvas APIJavaScript

🎮

Tetris Game

Playable

A modern implementation of the classic Tetris puzzle game with smooth animations and intuitive controls.

Key Features:

  • Classic Tetris gameplay with 7 piece types
  • Line clearing and scoring system
  • Level progression with increasing speed
  • Keyboard controls (arrow keys, spacebar)
  • Game pause and resume functionality
  • Real-time collision detection and piece rotation

Technologies:

ReactTypeScriptCanvas APIJavaScript

🎮