Skip to content

A modern personal portfolio website showcasing my projects, skills, and experience. Built with scalability in mind and deployed on Netlify for performance and reliability.

Notifications You must be signed in to change notification settings

yourclipperid-a11y/DyexaPortfolio

Β 
Β 

Repository files navigation

🌟 Dyexa Rahardika - Portfolio Website

A comprehensive, modern portfolio website showcasing skills, projects, and experience with an aesthetic design using light blue color palettes and dual theme support (light/dark).

✨ Features

  • 🎨 Modern UI/UX - Clean, professional design with light blue aesthetic
  • πŸŒ“ Dual Theme - Seamless dark/light mode with smooth transitions
  • ✨ Interactive Animations - Engaging scroll animations, particle effects, and typing animations
  • πŸ“± Fully Responsive - Perfect on mobile, tablet, and desktop
  • πŸš€ Performance Optimized - Fast load times with code splitting
  • 🎭 Motion Animations - Smooth animations powered by Motion (Framer Motion)
  • πŸ“Š Data Visualization - Interactive charts with Recharts
  • πŸ’Ό Comprehensive Sections - Hero, About, Skills, Projects, Experience, Roadmap, Testimonials, Contact
  • 🎯 3D Effects - 3D project cards and interactive hover effects
  • 🌠 Particle Backgrounds - Twinkling stars and animated backgrounds
  • πŸ“ Contact Form - Integrated contact form with validation

πŸš€ Quick Start

Prerequisites

  • Node.js 18+ (Download)
  • npm, yarn, or pnpm

Installation

# 1. Install dependencies
npm install

# 2. Start development server
npm run dev

# 3. Open browser to http://localhost:5173

That's it! Your portfolio is now running locally. πŸŽ‰

πŸ‘‰ Having issues? Check START_HERE.md for detailed troubleshooting.

πŸ“œ Available Scripts

Command Description
npm run dev Start development server (http://localhost:5173)
npm run build Build for production (outputs to /dist)
npm run preview Preview production build locally
npm run lint Run ESLint to check code quality

πŸ› οΈ Tech Stack

Core

  • React 18.3 - UI library with latest features
  • TypeScript 5.6 - Type-safe JavaScript
  • Vite 6.0 - Next-generation build tool
  • Tailwind CSS v4 - Utility-first CSS framework

UI & Animations

  • Motion 11.17 - Smooth animations (Framer Motion)
  • Radix UI - Accessible headless components
  • Lucide React - Beautiful icon library
  • shadcn/ui - High-quality component library

Forms & Validation

  • React Hook Form 7.55 - Performant form handling
  • Zod 3.24 - TypeScript-first schema validation

Data & Charts

  • Recharts 2.14 - Composable charting library

Build & Development

  • SWC - Super-fast TypeScript/JavaScript compiler
  • ESLint - Code quality and consistency
  • Prettier - Code formatting

πŸ“ Project Structure

PORTOFOLIO/
β”œβ”€β”€ .vscode/                    # VS Code workspace settings
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ figma/                 # Figma components
β”‚   β”œβ”€β”€ navigation/            # Navigation components
β”‚   β”‚   └── FloatingNav.tsx   # Sticky navigation bar
β”‚   β”œβ”€β”€ sections/              # Main page sections
β”‚   β”‚   β”œβ”€β”€ HeroSection.tsx   # Landing section
β”‚   β”‚   β”œβ”€β”€ AboutSection.tsx  # About me
β”‚   β”‚   β”œβ”€β”€ SkillsSection.tsx # Skills showcase
β”‚   β”‚   β”œβ”€β”€ ProjectsSection.tsx
β”‚   β”‚   β”œβ”€β”€ ExperienceSection.tsx
β”‚   β”‚   β”œβ”€β”€ RoadmapSection.tsx
β”‚   β”‚   β”œβ”€β”€ TestimonialsSection.tsx
β”‚   β”‚   β”œβ”€β”€ ContactSection.tsx
β”‚   β”‚   └── Footer.tsx
β”‚   β”œβ”€β”€ shared/                # Reusable components
β”‚   β”‚   β”œβ”€β”€ TwinkleBackground.tsx
β”‚   β”‚   β”œβ”€β”€ ProjectCard.tsx
β”‚   β”‚   β”œβ”€β”€ SkillCard.tsx
β”‚   β”‚   β”œβ”€β”€ TypingAnimation.tsx
β”‚   β”‚   └── ...more
β”‚   └── ui/                    # shadcn/ui components (40+)
β”œβ”€β”€ data/                      # Content data
β”‚   β”œβ”€β”€ personal.ts           # Your personal info
β”‚   β”œβ”€β”€ projects.ts           # Your projects (15 samples)
β”‚   β”œβ”€β”€ skills.ts             # Your skills
β”‚   β”œβ”€β”€ experience.ts         # Work experience
β”‚   β”œβ”€β”€ education.ts          # Education history
β”‚   β”œβ”€β”€ roadmap.ts            # Future goals
β”‚   └── testimonials.ts       # Testimonials
β”œβ”€β”€ hooks/                     # Custom React hooks
β”‚   β”œβ”€β”€ useTheme.ts           # Theme management
β”‚   β”œβ”€β”€ useScrollAnimation.ts # Scroll animations
β”‚   └── useScrollProgress.ts  # Progress tracking
β”œβ”€β”€ styles/
β”‚   └── globals.css           # Global styles + Tailwind
β”œβ”€β”€ utils/                     # Utility functions
β”œβ”€β”€ App.tsx                    # Main app component
β”œβ”€β”€ main.tsx                   # React entry point
β”œβ”€β”€ index.html                 # HTML entry point
└── vite.config.ts            # Vite configuration

🎨 Customization

1. Personal Information

File: data/personal.ts

export const personal = {
  name: "Your Name",
  title: "Your Title",
  email: "[email protected]",
  github: "yourusername",
  linkedin: "yourusername",
  discord: "yourusername",
  // ... more fields
};

2. Projects

File: data/projects.ts

Add your projects with descriptions, technologies, images, and links.

3. Skills

File: data/skills.ts

List your technical skills with proficiency levels (0-100).

4. Theme Colors

File: styles/globals.css

:root {
  --primary: #0ea5e9;      /* Your primary color */
  --secondary: #bae6fd;    /* Your secondary color */
  --accent: #38bdf8;       /* Your accent color */
}

See SETUP_GUIDE.md for complete customization guide.

πŸ“š Documentation

🚒 Deployment

Deploy to Vercel (Recommended)

  1. Push code to GitHub
  2. Import project in Vercel
  3. Deploy automatically

Or use CLI:

npm i -g vercel
vercel

Deploy to Netlify

  1. Build the project: npm run build
  2. Drag /dist folder to Netlify
  3. Done!

Build Settings:

  • Build command: npm run build
  • Publish directory: dist

Deploy to GitHub Pages

npm install -D gh-pages
npm run build && npx gh-pages -d dist

πŸ”§ Configuration Files

All configuration files are set up for you:

  • βœ… tsconfig.json - TypeScript configuration
  • βœ… tsconfig.app.json - App TypeScript config
  • βœ… tsconfig.node.json - Node TypeScript config
  • βœ… vite.config.ts - Vite build configuration
  • βœ… postcss.config.js - PostCSS with Tailwind v4
  • βœ… eslint.config.js - ESLint rules
  • βœ… .prettierrc - Prettier formatting
  • βœ… .vscode/settings.json - VS Code workspace settings

πŸ› Troubleshooting

No styles showing?

Check that main.tsx imports globals.css:

import './styles/globals.css';

TypeScript errors?

rm -rf node_modules package-lock.json
npm install

Port already in use?

Change port in vite.config.ts:

server: { port: 3000 }

More help: See START_HERE.md troubleshooting section.

πŸ“± Browser Support

  • Chrome (latest)
  • Firefox (latest)
  • Safari (latest)
  • Edge (latest)

πŸ“„ License

MIT License - Feel free to use this for your own portfolio!

πŸ‘€ Author

Dyexa Rahardika

  • πŸŽ“ Information System Student at Mulia University
  • πŸ“§ Email: [email protected]
  • πŸ’¬ Discord: dyexzzz
  • πŸ”— GitHub: [Your GitHub]
  • πŸ’Ό LinkedIn: [Your LinkedIn]

πŸ™ Acknowledgments

  • shadcn/ui - For the beautiful component library
  • Tailwind CSS - For the utility-first CSS framework
  • Motion - For smooth animations
  • Radix UI - For accessible components
  • Lucide - For the icon library

🌟 Features Showcase

  • ⭐ Twinkling star background animation
  • 🎨 Gradient text effects
  • πŸ’« Scroll-triggered animations
  • 🌈 Smooth theme transitions
  • 🎯 Interactive 3D project cards
  • πŸ“Š Animated skill progress bars
  • ✨ Typing animation effects
  • πŸŽͺ Floating navigation with magical effects
  • πŸ“± Discord integration
  • 🎨 Glass morphism UI elements

Made with ❀️ by Dyexa Rahardika

Star ⭐ this repo if you found it helpful!

About

A modern personal portfolio website showcasing my projects, skills, and experience. Built with scalability in mind and deployed on Netlify for performance and reliability.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 98.1%
  • CSS 1.5%
  • Other 0.4%