A modern, responsive portfolio website built with Next.js, TypeScript, and Tailwind CSS. This portfolio showcases my professional experience, projects, and skills with a focus on frontend development.
- Modern Design: Clean and professional layout with smooth animations
- Responsive: Fully responsive design that works on all devices
- Dark Mode: Built-in dark/light mode support
- Accessibility: WCAG compliant with proper ARIA labels and semantic HTML
- Performance: Optimized for speed with Next.js and static generation
- Animations: Smooth scroll animations using Framer Motion
- Components: Built with shadcn/ui for consistent design
- Framework: Next.js 14
- Language: TypeScript
- Styling: Tailwind CSS
- UI Components: shadcn/ui
- Animations: Framer Motion
- Icons: Lucide React
- Deployment: Vercel
- Node.js 18.17 or later
- npm or yarn
-
Clone the repository:
git clone https://github.com/wdonray/donray.dev.git
-
Navigate to the project directory:
cd donray.dev
-
Install dependencies:
npm install # or yarn install
-
Start the development server:
npm run dev # or yarn dev
-
Open http://localhost:3000 in your browser.
src/
├── app/ # Next.js app directory
├── components/ # React components
│ ├── ui/ # shadcn/ui components
│ ├── header.tsx # Navigation header
│ ├── hero.tsx # Hero section
│ ├── experience.tsx # Experience section
│ ├── projects.tsx # Projects section
│ ├── skills.tsx # Skills section
│ └── footer.tsx # Footer component
├── lib/ # Utility functions
└── styles/ # Global styles
The website uses a custom theme with primary colors and dark mode support. You can modify the theme in tailwind.config.js
.
Update the content in the respective component files:
src/components/hero.tsx
- Hero section contentsrc/components/experience.tsx
- Experience timelinesrc/components/projects.tsx
- Project showcasesrc/components/skills.tsx
- Skills and expertise
The website is fully responsive with breakpoints for:
- Mobile: < 768px
- Tablet: 768px - 1024px
- Desktop: > 1024px
The website is deployed on Vercel. To deploy your own version:
- Push your code to GitHub
- Connect your repository to Vercel
- Deploy with the following settings:
- Framework Preset: Next.js
- Build Command:
next build
- Output Directory:
.next
- LinkedIn: Donray Williams
- GitHub: wdonray
- Website: donray.dev