dustinober1

Dustin J. Ober - Professional Portfolio

A modern, professional portfolio website built with Next.js 16 and TypeScript, showcasing AI/ML development expertise and technical instructional design experience.

🚀 Tech Stack

📁 Project Structure

├── src/
│   ├── app/                    # Next.js App Router pages
│   │   ├── layout.tsx          # Root layout with SEO metadata
│   │   ├── page.tsx            # Homepage
│   │   └── globals.css         # Global styles & design system
│   ├── components/             # Reusable React components
│   │   ├── Navigation.tsx      # Header with mobile menu
│   │   ├── Footer.tsx          # Footer component
│   │   ├── Hero.tsx            # Hero section
│   │   ├── SkillsSection.tsx   # Technical skills
│   │   ├── ExpertiseSection.tsx
│   │   ├── ExperienceSection.tsx
│   │   ├── TestimonialsSection.tsx
│   │   ├── InsightsSection.tsx
│   │   ├── EducationSummarySection.tsx
│   │   └── ContactSection.tsx
│   ├── lib/                    # Utilities (future)
│   └── data/                   # Static data (future)
├── public/                     # Static assets
│   ├── images/
│   ├── logos/
│   ├── education/
│   └── Professional_Certifications/
├── content/                    # Blog posts (future)
├── legacy/                     # Original static HTML files
├── render.yaml                 # Render deployment config
└── package.json

🛠 Development

Prerequisites

Getting Started

# Install dependencies
npm install

# Run development server
npm run dev

# Build for production
npm run build

# Start production server
npm start

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

🎨 Design System

The site uses a cohesive design system with CSS custom properties:

--bg-color: #0d1117;        /* Dark background */
--card-bg: rgba(22, 27, 34, 0.7);
--text-primary: #e6edf3;    /* Primary text */
--text-secondary: #8b949e;  /* Secondary text */
--accent: #2f81f7;          /* Accent blue */
--accent-hover: #58a6ff;

🌐 Deployment

The site is configured for deployment on Render. See render.yaml for configuration.

Environment Variables

Set the following in your Render dashboard:

📋 Migration Status

This project is part of a migration from static HTML to Next.js. See upgrade.md for the full migration plan.

Completed

In Progress

Upcoming

📝 License

© 2025 Dustin J. Ober. All rights reserved.