My Projects

A selection of frontend and full-stack work focused on clean UI, real-world functionality, and maintainable architecture.

Crochet Cosmos logo

Crochet Cosmos

Full-Stack E-Commerce Platform — Next.js, TypeScript, Supabase, Stripe

Built a full-stack e-commerce platform for a real business using Next.js (App Router), TypeScript, Supabase, and Stripe. Designed a flexible product system to support variations, inventory tracking, and dynamic product pages, while implementing secure authentication and checkout flows. Focused on creating a scalable architecture that can support future admin tools, analytics, and business growth.

Highlights

  • Designed dynamic product system with variation support and inventory tracking
  • Implemented Supabase authentication and relational database structure
  • Built Stripe checkout integration with secure payment handling
  • Developed admin dashboard for managing products and stock
  • Structured scalable component architecture using Next.js App Router
Cellular Sales website screenshot

Cellular Sales Website

Production Retail Website — WordPress → Next.js Migration

Worked on a high-traffic production retail website for a nationwide Verizon authorized retailer. Contributed to maintaining and improving marketing and product pages, while supporting a migration from WordPress to a modern Next.js + TypeScript + Tailwind architecture. Focused on clean UI implementation, performance, and consistency within strict brand guidelines.

Highlights

  • Maintained and updated high-traffic production pages
  • Implemented UI changes aligned with strict Verizon design standards
  • Supported migration from WordPress to Next.js architecture
  • Worked within a CI/CD production workflow
  • Collaborated with marketing and design stakeholders
React Dictionary App

React Dictionary

API-Driven Dictionary Application — React

Built a React-based dictionary application that integrates a third-party API to provide real-time word definitions. Focused on managing asynchronous data flows, controlled inputs, and conditional rendering while maintaining a clean and reusable component structure.

Highlights

  • Integrated third-party REST API for dynamic data retrieval
  • Managed component state with controlled inputs
  • Implemented conditional rendering patterns
  • Structured reusable functional components
  • Handled asynchronous flows with loading and error states
My Weather App

Stormy Weather App

Weather Dashboard — JavaScript, HTML, CSS

Developed a weather dashboard that consumes live API data to display real-time conditions and forecasts. Implemented asynchronous JavaScript, geolocation-based requests, and responsive UI updates based on user input.

Highlights

  • Consumed live weather API with fetch and async/await
  • Implemented geolocation-based data requests
  • Processed and formatted real-time forecast data
  • Managed user-driven search queries and state updates
  • Handled API response parsing and edge cases
etch a sketch browser game

Click-A-Sketch Browser Game

Interactive Drawing Tool — Vanilla JavaScript

Built an interactive browser-based drawing tool using vanilla JavaScript. Focused on dynamic DOM manipulation, event handling, and performance optimization for real-time grid updates without external libraries.

Highlights

  • Programmatically generated interactive grid system
  • Implemented custom color state logic
  • Managed complex DOM event delegation
  • Built interactive UI without external libraries
  • Optimized rendering performance for large grid updates
Return to top of page