Neeraj Parekh

Neeraj Parekh - Portfolio Website

A modern, interactive portfolio built with Next.js 14, TypeScript, and Tailwind CSS.

🌐 Live Site: neeraj-parekh.github.io (via Vercel)


✨ Features

Interactive Elements

Pages

| Page | Description | |β€”β€”|β€”β€”β€”β€”-| | / | Home - Hero section, About Me, My Journey, Photo Gallery | | /skills | Skills & Certifications grid | | /projects | Project showcase with hex grid photos | | /blog | Blog posts with Medium embeds | | /links | Social links and contact |

Analytics


πŸš€ Quick Start

# Install dependencies
npm install

# Run development server
npm run dev

# Build for production
npm run build

# Start production server
npm start

Development server runs at: http://localhost:3000 (or 3001 if 3000 is busy)


πŸ“ Project Structure

neeraj-portfolio/
β”œβ”€β”€ app/                    # Next.js App Router pages
β”‚   β”œβ”€β”€ page.tsx           # Home page
β”‚   β”œβ”€β”€ skills/page.tsx    # Skills page
β”‚   β”œβ”€β”€ projects/page.tsx  # Projects page
β”‚   β”œβ”€β”€ blog/page.tsx      # Blog page
β”‚   β”œβ”€β”€ links/page.tsx     # Links page
β”‚   β”œβ”€β”€ layout.tsx         # Root layout with analytics
β”‚   └── globals.css        # All styles
β”œβ”€β”€ components/            # React components
β”‚   β”œβ”€β”€ Navigation.tsx
β”‚   β”œβ”€β”€ ThemeToggle.tsx
β”‚   β”œβ”€β”€ RotatingText.tsx
β”‚   β”œβ”€β”€ CollapsibleJourney.tsx
β”‚   β”œβ”€β”€ CertificationGrid.tsx
β”‚   β”œβ”€β”€ SkillCard.tsx
β”‚   β”œβ”€β”€ PhotoGallery.tsx
β”‚   └── ...
β”œβ”€β”€ data/                  # JSON data files (edit these!)
β”‚   β”œβ”€β”€ personal.json      # Your personal info
β”‚   β”œβ”€β”€ skills.json        # Programming skills
β”‚   β”œβ”€β”€ certifications.json # Skill cards with certificates
β”‚   β”œβ”€β”€ journey.json       # Timeline configuration
β”‚   β”œβ”€β”€ projects.json      # Project data
β”‚   β”œβ”€β”€ blogs.json         # Blog posts
β”‚   β”œβ”€β”€ links.json         # Social links
β”‚   └── shots.json         # Photo gallery images
β”œβ”€β”€ public/assets/         # Static files
β”‚   β”œβ”€β”€ images/           # All images
β”‚   β”œβ”€β”€ icons/            # Icon files
β”‚   β”œβ”€β”€ photos/           # Project photos
β”‚   β”œβ”€β”€ shots/            # Gallery photos
β”‚   └── certificates/     # Certificate files
β”œβ”€β”€ tools/                 # Local visual editors (backed up on GitHub)
β”‚   β”œβ”€β”€ grid-editor.html   # Certification grid editor
β”‚   β”œβ”€β”€ home-editor.html   # Home page editor
β”‚   β”œβ”€β”€ skills-editor.html # Skills page editor
β”‚   β”œβ”€β”€ projects-editor.html # Projects page editor
β”‚   └── journey-editor.html # Journey section editor
└── HOW-TO-EDIT.md        # Detailed editing guide

πŸ“ Editing Content

All content is stored in JSON files in the /data/ folder. Edit these to update your portfolio!

Quick Reference

File What it controls
personal.json Name, bio, email, rotating texts, profile image
skills.json Programming languages & tools list
certifications.json Skill cards on skills page
journey.json Collapsible timeline sections
projects.json Project cards
blogs.json Blog post embeds
links.json Social media links
shots.json Photo gallery images

See HOW-TO-EDIT.md for detailed instructions.


🎨 Visual Editors (Local Tools)

I’ve included visual editors to help you customize the layout without editing JSON manually.

How to Use:

  1. Open the HTML file directly in your browser
  2. Drag, resize, and configure elements visually
  3. Click β€œExport JSON” when done
  4. Replace the corresponding JSON file in /data/
  5. Commit and push to see changes

Available Editors:

Editor File Purpose
Grid Editor tools/grid-editor.html Certification cards layout (rows, card sizes)
Home Editor tools/home-editor.html Home page sections & hero content
Journey Editor tools/journey-editor.html Timeline/journey configuration
Skills Editor tools/skills-editor.html Programming skills & tools list
Projects Editor tools/projects-editor.html Project cards & details

Editor Features:

Note: The /tools/ folder contains a backup copy on GitHub. The editors are standalone HTML files - just open in browser.


πŸ” Environment Variables

For analytics, create a .env.local file:

NEXT_PUBLIC_GA_ID=G-XXXXXXXXXX
NEXT_PUBLIC_CLARITY_ID=xxxxxxxxxx

Or add these in Vercel Dashboard β†’ Settings β†’ Environment Variables.

Getting the IDs:

  1. Google Analytics: analytics.google.com β†’ Create property β†’ Get Measurement ID
  2. Microsoft Clarity: clarity.microsoft.com β†’ New project β†’ Get Project ID

🚒 Deployment

  1. Push code to GitHub
  2. Go to vercel.com
  3. Import your repository
  4. Add environment variables
  5. Deploy!

Auto-deploys on every push to main branch.

Manual Build

npm run build
npm start

🎯 Special Features

Double-Click Certificate Viewing

On the Skills page, cards with a ⭐ gold star indicator have certificates attached. Double-click to view them in a modal.

To add a certificate to a card, edit certifications.json:

{
  "id": "python",
  "hasCertificate": true,
  "certificate": "/assets/certificates/python-cert.pdf",
  "certificateImage": "/assets/certificates/python-cert.png"
}

Collapsible Journey

The β€œMy Journey” section on the home page is fully collapsible. Configure it in journey.json:

{
  "title": "My Journey",
  "defaultExpanded": true,
  "items": [
    {
      "id": "about-me",
      "title": "About Me",
      "color": "#f21717",
      "content": { "type": "about", "showBio": true }
    }
  ]
}

Theme System

Three themes available:

Theme preference is saved in localStorage.


πŸ“Š Analytics Dashboard

After setup, view your analytics at:

Clarity provides:


πŸ› οΈ Tech Stack


πŸ“„ License

This portfolio is for personal use. Feel free to use as inspiration, but please don’t copy content directly.


πŸ‘€ Author

Neeraj Parekh


Made with ❀️ using Next.js