Portfolio

Full Stack Developer Portfolio

A modern, responsive portfolio website showcasing expertise in Laravel, React, Node.js, and MERN Stack development. Built with the MERN stack and featuring a clean, professional design.

🛠️ Tech Stack Expertise

Laravel & PHP

React & Frontend

Node.js & Backend

MERN Stack

🚀 Features

Features

Tech Stack

Frontend

Backend

Getting Started

Prerequisites

Installation

  1. Clone the repository
    git clone <your-repo-url>
    cd full_stack
    
  2. Install server dependencies
    cd server
    npm install
    
  3. Install client dependencies
    cd ../client
    npm install
    
  4. Set up environment variables

    The server already has a .env file with MongoDB connection. If you need to change it:

    MONGO_URI=your_mongodb_connection_string
    PORT=5000
    
  5. Start the development servers

    Terminal 1 - Start the backend server:

    cd server
    npm run dev
    

    Terminal 2 - Start the frontend:

    cd client
    npm start
    
  6. Open your browser

    Navigate to http://localhost:3000 to view your portfolio!

Project Structure

full_stack/
├── client/                 # React frontend
│   ├── public/
│   ├── src/
│   │   ├── components/     # Reusable components
│   │   ├── pages/         # Page components
│   │   ├── sections/      # Section components
│   │   ├── services/      # API service functions
│   │   └── App.js
│   └── package.json
├── server/                 # Node.js backend
│   ├── models/            # MongoDB models
│   ├── routes/            # API routes
│   ├── server.js          # Main server file
│   └── package.json
└── README.md

Customization

Personal Information

  1. Update Hero Section (client/src/sections/Hero.js):
    • Change Abdulrahman Chohan, title, and description
    • Replace the placeholder profile image
  2. Update About Section (client/src/sections/About.js):
    • Modify your personal story and experience
    • Update education and background information
  3. Update Contact Information (client/src/sections/Contact.js):
    • Add your real email, phone, and location
    • Update social media links

Projects

The projects are loaded dynamically from the MongoDB database. You can:

  1. Add projects via API or
  2. Update the Projects component to use static data

To add projects programmatically, you can use tools like Postman to make POST requests to /api/projects.

Skills

Update the skills in client/src/sections/Skills.js:

Styling

The design uses Tailwind CSS classes. You can:

API Endpoints

Projects

Contact

Deployment

Frontend (React)

cd client
npm run build

Deploy the build folder to your hosting service (Netlify, Vercel, etc.)

Backend (Node.js)

Deploy to services like Heroku, DigitalOcean, AWS, etc.

Database

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Test thoroughly
  5. Submit a pull request

License

This project is open source and available under the MIT License.

Support

If you need help customizing or deploying your portfolio, feel free to reach out!


Built with ❤️ using MERN Stack