Skip to content

babeyjack/babeyjack.github.io

Repository files navigation

Jack's Portfolio - Vite + Bootstrap

A modern, responsive portfolio website showcasing my CV, qualifications, and programming projects. Built with Vite for fast development and production builds, and Bootstrap for professional styling.

πŸš€ Features

  • Fast Development: Vite provides instant server start and lightning-fast HMR (Hot Module Replacement)
  • Responsive Design: Bootstrap ensures the site looks great on all devices
  • Multiple Pages: Home, Profile (CV & Qualifications), and Projects showcase
  • Dynamic Data Loading: Content loaded from JSON files for easy maintenance
  • Production Optimized: Minified and optimized builds ready for deployment
  • Modern JavaScript: ES modules and functional components

πŸ“ Project Structure

β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.js                 # Entry point
β”‚   β”œβ”€β”€ app.js                  # Main app logic
β”‚   β”œβ”€β”€ style.css               # Global styles
β”‚   β”œβ”€β”€ components/
β”‚   β”‚   β”œβ”€β”€ navbar.js           # Navigation component
β”‚   β”‚   └── hero.js             # Hero section
β”‚   β”œβ”€β”€ pages/
β”‚   β”‚   β”œβ”€β”€ profile.js          # CV & Qualifications page
β”‚   β”‚   └── projects.js         # Projects showcase page
β”‚   └── utils/
β”‚       └── dataLoader.js       # JSON data loader utility
β”œβ”€β”€ public/
β”‚   └── json/
β”‚       β”œβ”€β”€ profile.json        # Qualifications data
β”‚       └── projects.json       # Projects data
β”œβ”€β”€ json/                        # Original JSON files
β”œβ”€β”€ css/                         # Original CSS (legacy)
β”œβ”€β”€ js/                          # Original JS (legacy)
β”œβ”€β”€ img/                         # Images directory
β”œβ”€β”€ index.html                   # HTML entry point
β”œβ”€β”€ vite.config.js              # Vite configuration
β”œβ”€β”€ package.json                # Dependencies
└── dist/                        # Production build output

πŸ›  Installation & Setup

Prerequisites

  • Node.js (v14 or higher)
  • npm (comes with Node.js)

Installation

  1. Install dependencies:
npm install

πŸƒ Development

Start the development server:

npm run dev

This will start a local server at http://localhost:5173/ with hot module replacement enabled.

πŸ”¨ Production Build

Create an optimized production build:

npm run build

The build output will be in the dist/ directory.

Preview Production Build

npm run preview

πŸ“Š Data Management

Your portfolio content is stored in JSON files for easy updates:

public/json/profile.json

Contains your qualifications and achievements organized by category:

  • Education
  • Certifications
  • Training
  • Achievements

public/json/projects.json

Contains your programming projects with:

  • Project name and description
  • Technologies used
  • Links to repositories
  • Update dates and versions

To update your portfolio, simply edit these JSON files. The changes will be reflected immediately in development mode and after rebuilding for production.

🎨 Customization

Colors & Styling

Edit src/style.css to customize:

  • Color scheme (CSS variables at the top)
  • Font styling
  • Component styling
  • Responsive breakpoints

Navigation

Edit the navigation items in src/app.js:

const navItems = [
    { label: 'Home', id: 'home' },
    { label: 'Profile', id: 'profile' },
    { label: 'Projects', id: 'projects' }
]

Hero Section

Customize the hero section in src/components/hero.js to change welcome text, buttons, and styling.

πŸš€ Deployment

The dist/ folder contains your production-ready website and can be deployed to:

GitHub Pages

  1. Build the project: npm run build
  2. Push the dist/ folder to your gh-pages branch
  3. Or configure GitHub Actions to auto-build

Other Platforms

  • Netlify: Connect your repository and set build command to npm run build, deploy directory to dist/
  • Vercel: Similar setup to Netlify
  • Traditional Hosting: Upload the dist/ folder via FTP/SFTP

πŸ“¦ Dependencies

  • Vite - Next generation frontend tooling
  • Bootstrap - Responsive CSS framework

πŸ”§ Available Scripts

Script Description
npm run dev Start development server
npm run build Create production build
npm run preview Preview production build locally

πŸ“ License

See LICENSE file for details.

About

My personal website / interactive CV

Resources

License

Stars

1 star

Watchers

1 watching

Forks

Packages

 
 
 

Contributors