A modern, multilingual React.js portfolio website showcasing full-stack development skills, innovative projects, and multilingual accessibility across 100+ languages.
π Live Website: www.pattygcoding.com
This is the personal portfolio website of Patrick Goodwin, a passionate full-stack software engineer, web developer, game developer, and content creator. Built entirely from scratch using modern React.js, this website demonstrates advanced web development techniques, innovative features, and a commitment to accessibility and internationalization.
Patrick Goodwin is an experienced full-stack software engineer with a demonstrated history of successfully leading development projects, from creating Java modifications for Minecraft to enhancing user experience in React.js and implementing secure REST APIs. He consistently employs agile methodologies and effective team collaboration. Additionally, Patrick is a geography content creator who has successfully leveraged social media algorithms across Instagram, YouTube, and TikTok to build an engaging follower base.
- Comprehensive Translation System: Supports over 100 languages using Google Translate API
- Automated Translation Pipeline: Python script with intelligent caching and progress tracking
- Smart Language Detection: Fallback system with English as default
- Real-time Language Switching: Seamless user experience across all supported languages
- Tiger Language Interpreter: Custom programming language with WebAssembly implementations in both Go and Rust
- 3D Rubik's Cube Solver: Interactive 3D cube solver using Three.js with painting and algorithm features
- JSON & YAML Formatter: WebAssembly-powered formatter with real-time validation
- Responsive Design: Mobile-first approach with Bootstrap 5
- Interactive Animations: Typewriter effects, smooth transitions, and hover animations
- Accessible Design: ARIA compliant with keyboard navigation support
- Professional Theming: Clean, modern interface with consistent branding
- React 18.2.0 - Modern React with hooks and context
- React Router 6 - Client-side routing with language-aware links
- Bootstrap 5.2.3 - Responsive CSS framework
- Three.js - 3D graphics and WebGL rendering
- PrismJS - Syntax highlighting for code blocks
- WebAssembly (WASM) - High-performance compiled modules
- Go & Rust - WebAssembly implementations for Tiger language
- Python 3 - Translation automation scripts
- Node.js 18 - Development environment
- Google Translate API - Automated translation service
- EmailJS - Contact form functionality
- GitHub Pages - Static site hosting
- Yarn - Package management
- React App Rewired - Custom webpack configuration
- ESLint - Code linting and formatting
A custom programming language implementation with dual WebAssembly backends:
- Go Implementation: Fast execution with goroutines support
- Rust Implementation: Memory-safe compilation with zero-cost abstractions
- Interactive Editor: Real-time code execution and syntax highlighting
- WebAssembly Integration: Seamless browser-based execution
An interactive 3D Rubik's cube solver built with Three.js:
- 3D Visualization: Realistic cube rendering with smooth animations
- Interactive Painting: Click-to-color interface for cube configuration
- Advanced Algorithms: Multiple solving algorithms implementation
- Real-time Validation: State validation and move tracking
A high-performance formatter with WebAssembly backend:
- Real-time Formatting: Instant JSON/YAML formatting and validation
- Error Detection: Comprehensive error reporting and suggestions
- WebAssembly Performance: Native-speed parsing and formatting
- Multi-format Support: JSON, YAML, and automatic format detection
- Node.js (v18 or higher)
- Yarn package manager
- Python 3 (for translation features)
-
Clone the repository
git clone https://github.com/pattygcoding/PG-Website.git cd PG-Website -
Install dependencies
yarn install
-
Start the development server
yarn start
The application will be available at
http://localhost:3000
yarn buildyarn deployThis will build the project and deploy it to GitHub Pages.
The website features an advanced multilingual system supporting 100+ languages:
# Translate all content to all supported languages
python src/assets/lang/lang.py
# Skip already translated content (recommended for updates)
python src/assets/lang/lang.py -skip- Intelligent Caching: Avoids re-translating unchanged content
- Progress Tracking: Real-time translation progress with threading
- Error Handling: Robust error handling with fallback mechanisms
- Pretty JSON Output: Formatted, readable translation files
The system supports 100+ languages including but not limited to:
- Major world languages (English, Spanish, French, German, Chinese, Japanese, etc.)
- Regional variants and dialects
- Less common languages for maximum accessibility
- Right-to-left (RTL) language support
src/
βββ app/ # Main app configuration
βββ assets/
β βββ lang/ # Translation files (100+ languages)
β β βββ lang.py # Translation automation script
β β βββ *.json # Individual language files
β βββ links/ # External links configuration
βββ components/ # Reusable React components
βββ cursor/ # Custom cursor implementation
βββ hooks/ # Custom React hooks
βββ lang/ # Language context and utilities
βββ menu/ # Navigation components
βββ pages/ # Main page components
β βββ about/ # About page
β βββ contact/ # Contact form
β βββ home/ # Landing page
β βββ portfolio/ # Portfolio showcase
β βββ projects/ # Interactive projects
β βββ cube-solver/
β βββ formatter/
β βββ tiger/
βββ routes/ # Application routing
While this is a personal portfolio project, suggestions and feedback are welcome! Please feel free to:
- Report Issues: Open an issue for any bugs or suggestions
- Feature Requests: Suggest new features or improvements
- Translation Improvements: Help improve translation accuracy
This project is licensed under the MIT License - see the LICENSE file for details.
Patrick Goodwin
- π Website: www.pattygcoding.com
- π§ Email: Contact Form
- πΌ LinkedIn: Connect through the website
- π± Social Media: Follow @pattygcoding
- React Community for the amazing ecosystem
- Google Translate API for enabling multilingual support
- WebAssembly Community for high-performance web applications
- Three.js Contributors for incredible 3D capabilities
- Open Source Community for inspiration and tools
β If you found this project interesting, please consider giving it a star!
Built with β€οΈ by Patrick Goodwin