A modern, responsive portfolio website built with React and Vite, featuring a sleek UI with dark/light mode support, interactive components, and a contact form.
- Responsive Design - Optimized for all device sizes
- Dark/Light Theme - Toggle between themes with a single click
- Interactive UI - Smooth animations and transitions
- Portfolio Showcase - Filterable project gallery
- Contact Form - Integrated with EmailJS for seamless communication
- Testimonials - Swiper-powered testimonial carousel
- Pricing Section - Showcase service offerings and pricing plans
- Frontend Framework: React 18
- Build Tool: Vite
- Styling: CSS with custom variables
- Icons: React Icons, Font Awesome
- Email Integration: EmailJS
- Notifications: React-Toastify
- Slider/Carousel: Swiper
- Node.js (v14.0 or later)
- npm or yarn
-
Clone the repository
git clone https://github.com/yourusername/fovero-folio.git cd fovero-folio -
Install dependencies
npm install # or yarn -
Setup environment variables
Create a
.envfile in the root directory and add your EmailJS credentials:VITE_EMAILJS_SERVICE_ID=your_service_id VITE_EMAILJS_TEMPLATE_ID=your_template_id VITE_EMAILJS_PUBLIC_KEY=your_public_key -
Start the development server
npm run dev # or yarn devThe site will be available at
http://localhost:5173/
npm run build
# or
yarn buildThe build artifacts will be stored in the dist/ directory.
fovero-folio/
├── public/ # Public assets
├── src/
│ ├── assets/ # Images and static assets
│ ├── components/ # React components
│ │ ├── about/ # About section components
│ │ ├── blog/ # Blog section components
│ │ ├── contact/ # Contact form components
│ │ ├── home/ # Home section components
│ │ ├── portfolio/ # Portfolio section components
│ │ ├── pricing/ # Pricing section components
│ │ ├── resume/ # Resume section components
│ │ ├── services/ # Services section components
│ │ ├── sidebar/ # Sidebar navigation
│ │ ├── testimonials/ # Testimonials section components
│ │ └── themeToggle/ # Theme toggle component
│ ├── context/ # React context providers
│ │ └── theme.jsx # Theme context for dark/light mode
│ ├── App.jsx # Main application component
│ ├── index.css # Global styles
│ └── main.jsx # Application entry point
└── package.json # Project dependencies and scripts
You can customize this portfolio by:
- Modifying content: Update the data in each component to reflect your information
- Changing colors: Edit the CSS variables in
src/index.css - Adding new sections: Create new components and add them to
App.jsx - Updating images: Replace images in the
src/assetsdirectory
Kavinda Weerasinghe
- LinkedIn: Kavinda Maduranga
- Twitter: @kavindzMW
- GitHub: @foverokavindz
- React Icons - react-icons.github.io
- Swiper - swiperjs.com
- React Toastify - fkhadra.github.io/react-toastify
- EmailJS - emailjs.com
Made with ❤️ by Kavinda Weerasinghe
