TC

Personal Website

·
Coding · Design · Web

A portfolio site that demonstrates technical depth through visual craft. Built with Next.js 16, featuring a custom business card component with physically-accurate cardstock texture rendering using normal maps and real-time lighting calculations.

View Live Site, or View on GitHub

Technical Implementation

Core Technologies:

  • Next.js 16 (App Router) with React 19 Server Components
  • TypeScript (strict mode) with comprehensive type safety
  • Custom canvas-based rendering engine
  • Tailwind CSS v4 for styling system

Key Technical Achievement: Developed a modular texture rendering library that simulates realistic cardstock using computer graphics techniques typically found in game engines. The system decodes normal maps (RGB-encoded surface vectors) and applies Lambertian reflectance models per-pixel to generate dynamic, high-fidelity paper textures at runtime.

Engineering Highlights:

  • Designed clean separation between rendering logic and component layer
  • Implemented performance optimizations (image caching, pre-computed light vectors)
  • Built fully type-safe API with pure functional lighting calculations
  • Documented architectural decisions for long-term maintainability

Skills

  • Frontend Architecture: Modern React patterns, Server Components, modular library design
  • Computer Graphics: Normal mapping, lighting models, canvas rendering optimization
  • TypeScript Expertise: Advanced type systems, strict mode compliance
  • Performance Engineering: Caching strategies, runtime optimization
  • Visual Design: Attention to detail, color theory, responsive scaling
  • Documentation: Comprehensive technical documentation and decision logs