Skip to content

devfreddy/devfreddy.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

74 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

DevFreddy Portfolio

Personal portfolio website showcasing professional experience, technical skills, and projects.

🌐 Live Site: https://devfreddy.github.io

Overview

A modern, interactive portfolio built with React, featuring smooth animations, particle effects, and a unique cocktail recipe collection. The site demonstrates proficiency in frontend development, UI/UX design, state management, and deployment practices.

Key Features

Core Portfolio Sections

  • Hero Section - Animated landing page with particle background and floating tech icons
  • About Section - Personal story, skills showcase, and professional focus areas
  • Experience Section - Detailed work history and education timeline
  • Navigation System - Responsive navbar with smooth scroll and routing

Interactive Elements

  • Particle Background - D3.js-powered interactive animation system
  • Floating Tech Icons - Animated technology stack visualization
  • Dark Mode - Color theme toggle with system preference detection
  • Construction Banner - Dismissible status banner with cross-tab state synchronization

Unique Features

  • Cocktails Page - Searchable and filterable recipe collection with 100+ cocktails
  • Client-Side Routing - React Router with GitHub Pages optimization

πŸ“š View Complete Feature Catalog β†’

Tech Stack

Frontend Framework

  • React 19.1.0 - UI library
  • React Router DOM 7.8.0 - Client-side routing
  • Vite 7.0.6 - Build tool and dev server

UI & Animations

  • Chakra UI 3.23.0 - Component library
  • Framer Motion 12.23.11 - Animation library
  • Emotion - CSS-in-JS styling
  • D3.js 7.9.0 - Data visualization and particles

State & Data

  • Zustand 5.0.6 - State management
  • React Hooks - Local state and effects
  • localStorage - Banner state persistence

Development

  • ESLint 9.30.1 - Code linting
  • Node.js 24.4.1 (via Volta) - Runtime environment

Getting Started

Prerequisites

  • Node.js 24.4.1 (managed via Volta)
  • npm or yarn

Installation

  1. Clone the repository

    git clone https://github.com/devfreddy/devfreddy.github.io.git
    cd devfreddy.github.io
  2. Install dependencies

    cd frontend-project
    npm install
  3. Start development server

    npm run dev

    Open http://localhost:5173 to view the site.

Build for Production

npm run build

Output will be in frontend-project/dist/

Preview Production Build

npm run preview

Deployment

The site is automatically deployed to GitHub Pages using GitHub Actions. On every push to the main branch:

  1. Builds the React app in frontend-project
  2. Deploys the build output to GitHub Pages
  3. Ensures 404.html is in place for client-side routing

View the workflow at .github/workflows/deploy.yml

Project Structure

devfreddy.github.io/
β”œβ”€β”€ frontend-project/          # React application
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ components/        # React components
β”‚   β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   β”‚   β”œβ”€β”€ data/              # Static data (cocktails)
β”‚   β”‚   β”œβ”€β”€ store/             # Zustand store
β”‚   β”‚   └── main.jsx           # App entry point
β”‚   β”œβ”€β”€ public/                # Static assets
β”‚   └── package.json           # Dependencies
β”œβ”€β”€ docs/                      # Documentation
β”‚   β”œβ”€β”€ features/              # Feature documentation
β”‚   β”œβ”€β”€ sessions/              # Session notes
β”‚   β”œβ”€β”€ COMMANDS.md            # Useful commands
β”‚   β”œβ”€β”€ SETUP_LOG.md           # Setup history
β”‚   └── TODO.md                # Task tracking
β”œβ”€β”€ .github/workflows/         # GitHub Actions workflows
└── README.md                  # This file

Documentation

Comprehensive documentation is available in the docs/ directory:

Featured Documentation

Development Workflow

Feature Development

  1. Check feature catalog for existing features
  2. Create feature documentation folder if needed
  3. Implement feature following project patterns
  4. Document while building (not after)
  5. Update feature index with status

Session Management

  1. Create session notes in docs/sessions/YYYY-MM-DD/
  2. Track accomplishments, findings, and blockers
  3. Link to relevant feature documentation
  4. Update TODO.md with new/completed tasks

Code Quality

  • Match existing code style and patterns
  • Use hooks for state management
  • Optimize with useMemo for expensive operations
  • Keep components focused and reusable

Available Scripts

Command Description
npm run dev Start development server (port 5173)
npm run build Build for production
npm run preview Preview production build
npm run lint Run ESLint

Performance

  • First Contentful Paint: < 1.5s
  • Time to Interactive: < 3s
  • Lighthouse Score: 90+ (Performance, Accessibility, Best Practices)

Browser Support

  • βœ… Chrome 120+
  • βœ… Firefox 120+
  • βœ… Safari 17+
  • βœ… Edge 120+

Roadmap

In Progress

  • Complete documentation for all features
  • Accessibility improvements (ARIA, keyboard nav)

Planned

  • Add Projects Section
  • Implement contact form
  • Performance optimization pass
  • SEO enhancements
  • Add testimonials section

See TODO.md for complete task list.

Contributing

This is a personal portfolio project, but suggestions and feedback are welcome!

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/suggestion)
  3. Commit your changes
  4. Push to the branch
  5. Open a Pull Request

License

This project is open source and available under the MIT License.

Contact

Michael Frederick (DevFreddy)

Acknowledgments


Built with ❀️ and β˜• by DevFreddy

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •