public 3d-motion repository
portfolio
// metimol/portfolio
Professional Portfolio Website - Modern UI with Next.js
š Vladyslav's Portfolio
Welcome to my professional portfolio website built with Next.js! This project showcases my skills, services, and professional projects in a modern, interactive interface with smooth animations and responsive design. š
⨠Features
- šØ Modern UI with smooth animations using GSAP and Framer Motion
- š± Fully responsive design that looks great on all devices
- š±ļø Custom cursor and interactive elements
- š Smooth scrolling experience with React Lenis
- š Dynamic project pages with detailed case studies
- š SEO-friendly structure
- š Service showcase section
- š Contact form for potential clients
š ļø Tech Stack
- Next.js - React framework with file-based routing
- TypeScript - For type safety and better developer experience
- SASS/SCSS - For component-level styling with modules
- GSAP - For advanced animations
- Framer Motion - For interactive UI components
- React Lenis - For smooth scrolling
š Getting Started
Prerequisites
- Node.js (v14 or later)
- npm or yarn
Installation
-
Clone this repository:
git clone https://github.com/metimol/portfolio.git cd portfolio -
Install dependencies:
npm install # or yarn install -
Run the development server:
npm run dev # or yarn dev -
Open http://localhost:3000 with your browser to see the portfolio in action! š
š§ Project Structure
components/ # Reusable UI components organized by page
āāā AboutPage/ # Components for About page
āāā HomePage/ # Components for Home page
āāā ProjectPage/ # Components for Project pages
āāā ContactPage/ # Contact page components
āāā Button/ # Reusable button component
āāā ...
data/ # Static data like project information
libs/ # External library configurations
pages/ # Next.js pages
public/ # Static assets
styles/ # Global styles and variables
utils/ # Utility functions
š Customization
- Projects: Edit the
data/projectsData.tsfile to update your project information - Images: Replace images in the
public/imagesdirectory with your own - Content: Modify the component files to update text content
- Styling: Adjust SCSS variables in
styles/variables.scssfor global style changes
š Deployment
Deploying to Vercel (Recommended)
The easiest way to deploy your portfolio is using Vercel:
- Create an account on Vercel if you don't have one
- Connect your GitHub repository
- Click "Import Project" and select your portfolio repository
- Deploy! š
Other Deployment Options
You can also deploy to other platforms like Netlify, AWS Amplify, or any hosting provider that supports Next.js applications:
-
Build the production version:
npm run build # or yarn build -
Start the production server:
npm run start # or yarn start
ā ļø Common Production Issues & Solutions
1. Images Not Loading
Make sure all image paths are correct. The project uses a utility function getAssetPath to handle paths - make sure this works correctly in production.
// Check utils/assetPath.ts implementation
2. GSAP Animation Issues
If animations don't work correctly in production, check that GSAP is being properly initialized. Some animations may need additional configuration for mobile devices.
3. Performance Optimization
If you experience performance issues:
- Consider implementing image optimization with Next.js Image component
- Lazy load non-critical components
- Optimize GSAP animations to reduce CPU usage
4. Environment Variables
Make sure to set up any necessary environment variables in your deployment platform for API keys or other sensitive information.
š Need Help?
Feel free to reach out if you have any questions about setting up or customizing this portfolio! š
š License
This project is available for personal use and can serve as inspiration for your own portfolio.
Built with ā¤ļø by Metimol
[INFO] 5 topics link to curated motion topic pages.