This is my personal portfolio website, designed to showcase my skills and projects. It is a fully responsive web application combining a modern React frontend with a reliable PHP backend.
- Dynamic Content: Skills and projects are dynamically loaded from a MySQL database.
- Interactive UI: Built with a mix of React components and vanilla JavaScript for smooth navigation.
- Contact Form: A functional contact form using PHPMailer to send messages directly to email.
- Responsive Design: Fully optimized for mobile, tablet, and desktop devices using CSS.
- React: Used for dynamic sections (Skills & Projects).
- JavaScript: Used for Navbar logic, and contact form handling (Async/Await, Fetch API).
- HTML5 & CSS3: Structural layout and custom styling.
- Axios: For seamless API communication with the backend.
- PHP: Handles database communication and server-side logic.
- PHPMailer: A library used for secure SMTP email delivery.
- MySQL: Database management for storing project and skills data.
To run this project locally, follow these steps:
- Import the
database.sqlfile provided in this repository.
- Navigate to the
php/folder. - Create a file named
config.phpin the root directory. - Populate this file with the variables provided in the
config.php.sample.phptemplate and enter your local database credentials.
- Run these commands in your terminal:
- Frontend (React):
npm install - Backend (PHP Libraries):
composer install. Ensure you have Composer installed.
- Start your local server (XAMPP/Apache).
- In the project terminal, start the React development server:
npm start.