A retro-styled personal portfolio website that combines nostalgic Windows 95 aesthetics with modern web development practices.
Website: https://markmdev.com/
- Perfect Lighthouse Scores: 100/100 across Performance, Accessibility, Best Practices, and SEO
- Load Time: Sub-500ms first contentful paint
- Accessibility: Full screen reader compatibility with semantic HTML and ARIA roles
- SEO Optimized: Perfect search engine optimization score
- Retro Windows 95 UI - Authentic pixel-perfect design with custom components
- Responsive Design - Works seamlessly on desktop and mobile while maintaining retro aesthetic
- Interactive Elements - Clickable windows, hover effects, and smooth animations
- Project Showcase - Dedicated sections for technical projects with live demos
- Blog System - Integrated technical writing platform
- Performance Optimized - Fast loading times with static site generation
- Accessibility First - Semantic HTML and ARIA roles for screen readers
- Framework: Astro - Static site generation with component islands
- Styling: Tailwind CSS with custom Windows 95 theme
- Fonts: IBM Plex Mono, IBM_VGA_8x16, Microsoft Sans-Serif
- Deployment: Netlify with automated CI/CD
- Build Tools: Vite, GitHub Actions
- Node.js 18+
- npm or yarn
# Clone the repository
git clone https://github.com/markmdev/personal_website.git
cd personal_website
# Install dependencies
npm install
# Start development server
npm run devVisit http://localhost:4321 to see the site locally.
# Build static files
npm run build
# Preview production build
npm run preview/
├── public/ # Static assets (images, fonts, etc.)
├── src/
│ ├── components/ # Reusable Astro components
│ ├── layouts/ # Page layouts
│ ├── pages/ # Route pages
│ ├── styles/ # Global CSS and Tailwind config
│ └── images/ # Optimized images
├── astro.config.mjs # Astro configuration
- Colors: Authentic Windows 95 palette (silver, blue, gray)
- Typography: Pixel-perfect fonts matching the original OS
- Components: Custom window frames, buttons, and form elements
- Responsive: Maintains retro feel across all screen sizes
Window- Main Window componentWin95Image- Retro-styled image frameTerminal- Command-line interface
- Add project data to
src/pages/projects.astro - Include screenshots in
public/projects/ - Create project page in
src/pages/projects/
- Custom styles in
src/styles/global.css - Component-specific styles in respective
.astrofiles
The site automatically deploys to Netlify on every push to the main branch via GitHub Actions.
While this is a personal portfolio, I welcome feedback and suggestions:
- Fork the repository
- Create a feature branch (
git checkout -b feature/improvement) - Commit your changes (
git commit -am 'Add new feature') - Push to the branch (
git push origin feature/improvement) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Mark Morgan
- Website: markmdev.com
- LinkedIn: linkedin.com/in/markmdev
- GitHub: github.com/markmdev
- Windows 95 design inspiration from Microsoft's original OS
- IBM Plex font family for modern typography
- Astro community for excellent documentation and support

