A modern, responsive portfolio website built with Vue 3, TypeScript, and Tailwind CSS. Features a clean design with emerald/green color scheme and smooth animations.
- π¨ Modern UI/UX - Clean and aesthetic design with emerald/green theme
- π Dark Mode - Seamless light/dark theme switching
- π± Responsive Design - Optimized for all devices (mobile, tablet, desktop)
- β‘ Fast Performance - Built with Vite for lightning-fast development and production builds
- π Smooth Animations - Beautiful transitions using @vueuse/motion
- π§© Component Library - Powered by Shadcn Vue components
- π― Type-Safe - Full TypeScript support for better DX
- βΏ Accessible - WCAG compliant with semantic HTML
- Vue 3 - Progressive JavaScript framework
- TypeScript - Type-safe JavaScript
- Vite - Next generation frontend tooling
- Tailwind CSS 4.0 - Utility-first CSS framework
- Shadcn Vue - Re-usable components built with Radix Vue
- Lucide Icons - Beautiful & consistent icon set
- @vueuse/motion - Vue composables for animations
- @vueuse/core - Collection of essential Vue composition utilities
- class-variance-authority - CSS utility for component variants
- clsx & tailwind-merge - Utility for constructing className strings
web-portofolio-vue/
βββ src/
β βββ assets/ # Static assets (images, SVG patterns)
β βββ components/
β β βββ layout/ # Layout components (Navbar, Footer)
β β βββ sections/ # Page sections (Hero, About, Projects, Experience)
β β βββ ui/ # Shadcn UI components
β βββ data/ # Portfolio data (projects, experience, etc.)
β βββ lib/ # Utility functions
β βββ App.vue # Root component
β βββ main.ts # Application entry point
β βββ style.css # Global styles & Tailwind config
βββ public/ # Public static files
βββ index.html # HTML entry point
- Node.js (v18 or higher)
- npm or yarn or pnpm
-
Clone the repository
git clone https://github.com/yourusername/web-portofolio-vue.git cd web-portofolio-vue -
Install dependencies
npm install
-
Run development server
npm run dev
-
Open your browser
http://localhost:5173
npm run buildThe built files will be in the dist directory.
npm run previewThe portfolio uses an emerald/green color scheme defined in src/style.css:
:root {
--primary: 142.1 76.2% 36.3%; /* Emerald */
--primary-foreground: 355.7 100% 97.3%;
/* ... other color variables */
}To change the color scheme, modify these HSL values.
Edit your personal information, projects, and experience in:
src/data/portofolio.data.ts
All UI components are located in:
src/components/ui/- Shadcn Vue componentssrc/components/sections/- Page sectionssrc/components/layout/- Layout components
| Command | Description |
|---|---|
npm run dev |
Start development server |
npm run build |
Build for production |
npm run preview |
Preview production build |
npm run type-check |
Run TypeScript type checking |
npm run lint |
Lint code with ESLint |
npm run format |
Format code with Prettier |
npm run test:unitUnit tests are powered by Vitest.
- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
Chromium-based browsers (Chrome, Edge, Brave):
Firefox:
This project is licensed under the MIT License - see the LICENSE file for details.
Oxa Defrizal Khasay
- LinkedIn: oxadefrizalkhasay
- GitHub: @zadeka
Contributions, issues, and feature requests are welcome!
- Fork the project
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
β Don't forget to star this repo if you found it helpful!