Source code for my game and software development portfolio website — zachhubbard.com
- React 18 — UI framework
- Vite — build tool and dev server
- React Router v6 — hash-based routing (
createHashRouter) - MUI v5 — Grid layout and theming
- Bootstrap 5 / React Bootstrap — Navbar component
- CSS custom properties — site-wide design tokens
| Page | Route |
|---|---|
| RerunTV | #/RerunTV |
| WV Quest | #/WVQuest |
| Cart Smash | #/CartSmash |
| Seed-A-Pult | #/SeedAPult |
| Escape Room | #/EscapeRoom |
| Weathered Home | #/WeatheredHome |
| All Game Projects | #/GameProjects |
Site was created using React.js, JavaScript, HTML, and CSS.
Node.js packages used for development:
- Material UI – Used for CSS and formatting of site components, open-source under MIT License.
- React Bootstrap – Used for CSS formatting and formatting some site components under the MIT License, such as the navbar and the footer.
- Vite – Build tool and dev server, open-source under MIT License.
- ESLint VS Code Extension – for JavaScript code suggestions and code formatting.
Used Claude AI (Claude Code by Anthropic) to assist with the following:
- Site theme redesign: color palette, CSS custom properties, card and footer component styling
- Navbar redesign: glassmorphism effect, hover animations, and font consistency fixes
- Page transition animations: enter/exit keyframe animations on route changes
- Scroll-reveal animation system: IntersectionObserver-based fade-in for grid items and section headers
- Project page layout: restructured pages to side-by-side media/text layout using MUI Grid
- CSS formatting fixes: feature list bullet rendering, responsive breakpoints, media hover effects
- Homepage updates: replaced Quest System card with Epic Door card in featured projects grid
- Routing updates: removed in-progress BPQuestSystem route from site navigation
- Vite migration: replaced Create React App with Vite, resolving all dependency vulnerabilities
- Site Logo — Created by Zach Hubbard using Adobe Photoshop CC
- PortfolioCropped.jpg — Taken as part of Mon River Games Fall 2022 session and MDIA 472 Capstone Course
- Donut.jpg — Render created by Zach Hubbard through completion of Blender Guru's Beginner Blender 4.0 Tutorial Playlist/Course on YouTube
- BlenderDonut.mp4 — Video created by Zach Hubbard through completion of Blender Guru's Beginner Blender 4.0 Tutorial Playlist/Course on YouTube
- SodaCan.png — Created by Zach Hubbard using Adobe Photoshop CC
- HighBytes.png — Art created by fellow CS 450 group project member Jeryle Begay for the project
- Shop.png, DawnOfAlina.jpg, DawnOfAlinaLarge.jpg — Art for Dawn of Alina shop and inventory created by Mon River Games Summer and Fall 2022 session member Madison Roy
- WVQuest.png — UI designed by Jackson Sigler and implemented into Unity project by capstone member Tessla Muir
- RegistrationWVQuest.png — UI designed by Jackson Sigler and implemented into Unity project by capstone member Tessla Muir
- AppalachianSeedLaunch.png — Background image created by Heather Cole for the 2023 Global Game Jam
- RampCrash.png — 2024 Global Game Jam submission, image taken in Unity by group member David Haley
- GDC.jpg — Image of myself at the 2022 Game Developer's Conference
- ModelingDiorama/ images (FullUV.png, HouseUV.png, MayaDryFittingNew.png, MayaTextured.png, ModelingStepsNew.png, ModularComponentsNew.png, NextGenTextures2.png, TexturedModularComponents.png, UnrealDryFittingNew.png, UnrealNextGenTextures.png) — Screenshots of Maya and Unreal Engine modeling work created by Zach Hubbard
- LeaderboardDiagram.png, SwitchboardDiagram.png — System design diagrams created by Zach Hubbard
- SwitchboardMinigameDemo.mp4 — Gameplay footage recorded by Zach Hubbard