Next.jsReactPortfolio

portfolio (PraveenGongada) — Next.js Portfolio Template

By PraveenGongada

A personal portfolio template based on Next.js and TypeScript, with content driven by configuration files under app/config, including sections for Home, About, Projects, Skills, and Connect.

Explore the design

Compare the page layouts and mobile experience. Open any screenshot for a closer look.

2 previews
Desktop homepage1 / 2
Desktop captureTop of page

Actual screenshot captured by the server browser.

All pages & views 2

Screenshots show visual appearance; interactive behavior may differ.

Recorded 2026-10-14View source

What stands out

A quick read of the recorded project description.

01

Content is driven by configuration files under app/config: index.ts, projects.ts, skills.ts, and socials.tsx, making it easy to replace personal information, projects, skills, and social links

02

Includes sections for Home, About, Projects, Skills, and Connect; project cards support tech stack tags, demo and GitHub links, carousel and hover effects

03

The Skills section provides an interactive 3D technology sphere and categorized icon display

04

Built with Next.js, TypeScript, and Tailwind CSS, and uses a component-based directory structure (components, sections, types, utils)

05

The README mentions semantic HTML, ARIA attributes, keyboard navigation, and responsive adaptation

06

Uses an emerald and dark color scheme and the Geist font

Template Details

This is a personal portfolio website template. The repository is PraveenGongada/portfolio. The README states that it is built with Next.js, TypeScript, and Tailwind CSS, and uses a component-based structure. Page content is driven by configuration files in the app/config directory, including index.ts (site metadata, navigation, homepage copy, etc.), projects.ts (project display data), skills.ts (skill categories and technology icons), and socials.tsx (social links). The main sections listed in the README are: Home (greeting, name, rotating typing text, introduction, and buttons), About (career experience, core capabilities, personal traits), Projects (project cards, tech stack tags, demo and GitHub links, carousel and hover effects), Skills visualization (interactive 3D technology sphere, categorized skills and icons), and Connect (brand-colored social links with animation effects). The design uses an emerald and dark color scheme, the Geist font, and mentions semantic HTML, ARIA attributes, keyboard navigation, and responsive adaptation. The README does not provide detailed information about performance benchmarks, browser compatibility ranges, or production deployment configuration; for deployment, it only points to GitHub Pages deployment status via a badge and does not give specific deployment steps.

Next.jsPortfolio

Is it right for your project?

Use Cases

  • Developers or designers building a personal portfolio website to showcase projects, skills, and contact information in one place
  • Scenarios where portfolio content needs to be maintained through configuration files, avoiding frequent changes to component code
  • Personal site projects that want to reference a Next.js + TypeScript + Tailwind CSS component-based structure
  • Display-oriented pages that need to include a project carousel, skill visualization, and social links sections

Suitable For

  • Front-end developers with experience using Node.js and yarn
  • Users who want to quickly replace personal information based on an existing template
  • Personal portfolio sites that need a configurable content structure
  • Developers with a basic understanding of the Next.js and Tailwind CSS tech stack

Getting started & customization

Use these recorded setup notes alongside the repository instructions for your chosen version.

  1. 1

    Prerequisites: Node.js 20+ and yarn

  2. 2

    Installation steps: git clone the repository, cd portfolio, yarn install, yarn dev

  3. 3

    Modify site metadata, navigation, homepage greeting, name, rotating typing text, and introduction in app/config/index.ts

  4. 4

    Maintain project, skill, and social link data in app/config/projects.ts, skills.ts, and socials.tsx respectively

  5. 5

    Replace the app/icon.svg icon and the public/resume.pdf resume file, and place custom images in the public directory

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

This entry covers the free version under the Apache-2.0 license in the public repository; the free scope is the code of that version and does not mean that external services or third-party assets are free.

Must comply with when using

  • Free use, modification, commercial use, and distribution are permitted; when distributing, the Apache-2.0 license must be included.
  • Modified files must prominently indicate changes, and relevant copyright, patent, trademark, and attribution notices must be retained.
  • If the original project includes a NOTICE file, applicable attribution notices in it must be retained when distributing derivative works.
  • The license includes an applicable contributor patent grant; initiating patent litigation as described in the license terminates that patent grant, and no trademark use rights are granted.
  • The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.

Additional costs & items to verify

  • Demo images, fonts, icons, and other third-party assets must be checked against their respective licenses and cannot be judged solely by the code's Apache-2.0 license.
  • External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis

Compiled by DeepSeek based on repository license and README ·2026-10-14. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.

Project checks & description sources

Template Information

Source platforms
GitHub
Documentation and maintenance reference score
More documented · 83 / 100
Technologies
Next.js · React
Website type
Portfolio
How this score is calculated

Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.

What to verify for this project

Repository update recorded
2026-06-30
Screenshot last checked
2026-10-14

A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.

The catalog identifies Next.js as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.

Use a selection guide →

How this description was prepared

AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.

Review declaration: codex-user-requested-batch-review-20261015 · 2026-10-15

Inspect the recorded source material

SHA-256: d8cf46d58b283f486b0f1364c90d53d5be825eba60cb0ff2da13009e9d435b4a

2026-10-14T05:47:14.482Z

Source file / repository
# Portfolio ✨

<div align="center">

[![Deployment](https://img.shields.io/github/deployments/PraveenGongada/portfolio/github-pages?style=flat-square&label=GitHub%20Pages)](https://github.com/PraveenGongada/portfolio/deployments)
[![Next.js](https://img.shields.io/badge/Next.js-15.1.7-black?style=flat-square&logo=next.js)](https://nextjs.org)
[![TypeScript](https://img.shields.io/badge/TypeScript-5.x-blue?style=flat-square&logo=typescript)](https://www.typescriptlang.org)
[![Tailwind](https://img.shields.io/badge/Tailwind-3.4.1-38B2AC?style=flat-square&logo=tailwind-css)](https://tailwindcss.com)
[![License](https://img.shields.io/badge/License-Apache%202.0-green?style=flat-square)](LICENSE)

  <div>
    <p></p>
    <p style="margin: 0; font-size: 16px; color: #eaeaea;">🚀 Showcase your journey with this modern, interactive portfolio template 🌟</p>   <p></p>
    <img src="https://raw.githubusercontent.com/PraveenGongada/portfolio/refs/heads/main/docs/images/home.png" alt="Portfolio Home" width="90%" style="border-radius: 12px; margin-bottom: 20px; box-shadow: 0 8px 16px rgba(0,0,0,0.2);" />
  </div>
</div>

## 📸 Screenshots

<div align="center">
  <div style="display: flex; justify-content: space-between; gap: 20px; margin-top: 20px;">
    <div style="flex: 1;">
      <img src="https://raw.githubusercontent.com/PraveenGongada/portfolio/refs/heads/main/docs/images/about.png" alt="About Section" width="100%" style="border-radius: 12px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);" />
      <p><em>About section with personal journey and qualities</em></p>
    </div>
    <div style="flex: 1;">
      <img src="https://raw.githubusercontent.com/PraveenGongada/portfolio/refs/heads/main/docs/images/projects.png" alt="Projects Section" width="100%" style="border-radius: 12px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);" />
      <p><em>Projects showcase with carousel</em></p>
    </div>
  </div>
  
  <div style="display: flex; justify-content: space-between; gap: 20px; margin-top: 10px;">
    <div style="flex: 1;">
      <img src="https://raw.githubusercontent.com/PraveenGongada/portfolio/refs/heads/main/docs/images/skills.png" alt="Skills Section" width="100%" style="border-radius: 12px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);" />
      <p><em>Skills visualization with interactive elements</em></p>
    </div>
    <div style="flex: 1;">
      <img src="https://raw.githubusercontent.com/PraveenGongada/portfolio/refs/heads/main/docs/images/connect.png" alt="Connect Section" width="100%" style="border-radius: 12px; box-shadow: 0 4px 8px rgba(0,0,0,0.1);" />
      <p><em>Connect section with animated social links</em></p>
    </div>
  </div>
</div>

## 🌈 Feature Highlights

### 🧠 About Me Section

- Professional journey highlights with responsive layout
- Core competencies with visual gradient indicators
- Personal qualities and areas of expertise

### 💻 Project Showcase

- Detailed project cards with:
  - Technology stack tags with custom styling
  - Live demo and GitHub links
  - Interactive carousels with hover effects
  - Animated project transitions

### 🛠️ Skills Visualization

- Interactive 3D technology sphere
- Categorized skill display with custom icons
- Visual representation of expertise areas

### 📞 Connect Section

- Social media integration with branded colors
- Animated interaction effects
- Professional contact information

## ✨ Key Design Principles

### Minimalist Elegance

- **UI/UX Approach**: Clean, purposeful design that prioritizes content and user experience
- **Color Palette**: Sophisticated emerald and dark mode color scheme with subtle gradient transitions
- **Typography**: Precision-crafted using Geist Font for maximum readability and modern aesthetics

### Interactive Storytelling

- Dynamic section transitions that guide users through my professional landscape
- Micro-interactions and hover effects that provide delightful user engagement
- Seamless navigation that feels more like a journey than a website

## 🚀 Technical Architecture

### Design Approach

- **Component-Driven Structure**: Modular, reusable components that maintain consistency throughout the site
- **Config-First Customization**: Core portfolio content and styling controlled through configuration files
- **Progressive Enhancement**: Core functionality works without JavaScript, enhanced with animations when available

### Performance Optimizations

- Optimized asset loading with automatic image optimization
- Efficient rendering with component memoization
- Smooth animations with hardware acceleration

### Accessibility & Responsiveness

- Semantic HTML structure with proper ARIA attributes
- Responsive design adapts to all device sizes
- Keyboard navigation support throughout the interface
- Color contrast ratios meeting WCAG guidelines

## 🔧 Getting Started

### Prerequisites

- Node.js 20+
- yarn

### Installation Steps

```bash
# Clone repository
git clone https://github.com/praveengongada/portfolio.git

# Navigate to project directory
cd portfolio

# Install dependencies
yarn install

# Run development server
yarn dev
```

## 🛠️ Creating Your Own Portfolio

This portfolio template is designed to be easily customizable. Follow these steps to personalize it for your own use:

### Configuration Overview

The entire portfolio is driven by configuration files located in the `app/config` directory:

- `index.ts`: Main portfolio configuration
- `projects.ts`: Your project showcase
- `skills.ts`: Your technical skills
- `socials.tsx`: Your social media profiles

### Step 1: Update Main Configuration

Edit `app/config/index.ts` to customize:

```typescript
// Personal information
siteMetadata: {
  title: "Your Name",
  description: "Your portfolio description",
  author: "Your Name",
},

// Navigation
navigation: {
  logo: {
    text: "YN", // Your initials (should match what you put in logo.tsx)
  },
  // Navigation links (no need to change unless adding new sections)
},

// Home section (landing page)
sections: {
  home: {
    greeting: "Hi, I'm",
    name: "Your Name",
    typingTexts: [
      "Your custom typing text",
      "Add multiple lines",
      "They will rotate automatically",
    ],
    description: "Write a short engaging bio here...",
    // Update button links as needed
  },

  // Continue customizing other sections...
}
```

### Step 2: Add Your Projects

Edit `app/config/projects.ts` to showcase your own work:

```typescript
export const projects: Project[] = [
  {
    id: 1,
    title: 'Your Project Name',
    description: 'Describe what your project does and its key features',
    tags: ['React', 'TypeScript', 'Your Technologies'],
    githubLink: 'https://github.com/yourusername/your-repo',
    type: 'Web App', // Project type (Web, Mobile, Plugin, etc.)
    liveLink: 'https://your-project-url.com', // Optional
    thumbnail: 'https://your-image-url.com/image.jpg', // Main project thumbnail

    // Optional: GIF to display when hovering over the project
    gifUrl: 'https://your-project-animation.gif',

    // Optional: Multiple images for carousel display
    carouselImages: [
      'https://your-image-url.com/slide1.jpg',
      'https://your-image-url.com/slide2.jpg',
      'https://your-image-url.com/slide3.jpg',
    ],

    // Optional: Carousel configuration
    carouselConfig: {
      interval: 3000, // Time between slides in milliseconds
      infinite: true, // Whether to loop the carousel
    },
  },
  // Add more projects...
];
```

### Step 3: Update Your Skills

Edit `app/config/skills.ts` to reflect your technical expertise:

```typescript
export const skills: Skill[] = [
  {
    category: 'Your Category', // e.g., Frontend, Backend, Mobile
    technologies: [
      {
        name: 'Technology Name',
        color: '#HexColorCode', // Brand color of the technology
        icon: 'https://cdn.jsdelivr.net/gh/devicons/devicon/icons/technology/technology-original.svg',
      },
      // Add more technologies...
    ],
  },
  // Add more skill categories...
];
```

### Step 4: Connect Your Social Media

Edit `app/config/socials.tsx` to link your social profiles:

```typescript
export const socials: Social[] = [
  {
    name: "GitHub",
    icon: <Github size={20} />, // Using Lucide React icons
    url: "https://github.com/yourusername",
    color: "#333333",
  },
  // Add more social profiles...
];
```

### Step 5: Update Favicon

- Replace the `app/icon.svg` file with your own favicon containing your initials (the code brackets are a signature part of the design)

### Step 6: Customize Styling (Optional)

For deeper customization:

- Edit `app/globals.css` to adjust the color scheme
- Modify component files in the `app/sections` directory for structural changes
- Update `app/components` for UI element customization

### Step 7: Replace Assets

- Replace `/public/resume.pdf` with your own resume
- Add your custom images to the `/public` directory

## 🏗️ Project Structure

```
portfolio/
├── app/                 # Next.js app directory
│   ├── config/          # Configuration files
│   │   ├── index.ts     # Main portfolio config
│   │   ├── projects.ts  # Projects data
│   │   ├── skills.ts    # Skills data
│   │   └── socials.tsx  # Social links
│   ├── components/      # Reusable UI components
│   │   ├── button.tsx   # Custom button component
│   │   ├── logo.tsx     # Portfolio logo
│   │   └── tech-sphere.tsx # 3D tech visualization
│   ├── sections/        # Main page sections
│   │   ├── about.tsx    # About me section
│   │   ├── connect.tsx  # Connect with me section
│   │   ├── home.tsx     # Home section (hero)
│   │   ├── projects.tsx # Projects showcase
│   │   └── skills.tsx   # Skills display
│   ├── types/           # TypeScript type definitions
|   |-- utils/           # Utility functions
│   ├── globals.css      # Global styles
│   └── layout.tsx       # Root layout
└── public/              # Static assets
```

## 🙏 Acknowledgements

This portfolio project wouldn't be possible without these amazing technologies and libraries:

- [Next.js](https://nextjs.org/) - The React framework for production
- [React](https://reactjs.org/) - A JavaScript library for building user interfaces
- [TypeScript](https://www.typescriptlang.org/) - Typed JavaScript for better code quality
- [Tailwind CSS](https://tailwindcss.com/) - Utility-first CSS framework
- [Framer Motion](https://www.framer.com/motion/) - Animation library for React
- [Lucide React](https://lucide.dev/) - Beautiful & consistent icon toolkit
- [React Icon Cloud](https://icon-cloud.netlify.app/) - Interactive 3D icon rendering
- [Geist Font](https://vercel.com/font) - Beautiful, modern typeface by Vercel

## 📄 License

This project is licensed under the Apache License 2.0 - see the [LICENSE](LICENSE) file for details.

---

<div align="center">
  <p>Made with ❤️ by <a href="https://github.com/PraveenGongada">Praveen Kumar</a></p>
  <p>
    <a href="https://linkedin.com/in/praveengongada">LinkedIn</a> •
    <a href="https://praveengongada.com">Website</a>
  </p>
</div>
Report a correction

Explore similar templates

Compare previews and descriptions within the same stack and category.

react-resume-template

react-resume-template

A personal resume website template for software developers, built with Next.js, React, and TypeScript and styled with Tailwind CSS. Site content is driven by a single data file at /src/data/data.tsx, with types in dataDef.ts and images in src/images/.

Next.js · Portfolio

nxt-lnk

nxt-lnk

nxt-lnk is a Next.js-based bio link page template that manages personal information and links via BioData.js and LinksData.js, positioned as a self-hosted alternative to Linktree. It groups links by type, supports enabling/disabling individual links, and offers hexagonal or oval avatars.

Next.js · Portfolio

sylph

sylph

Sylph is a minimal portfolio and blog template built on Next.js, supporting MDX/Markdown writing, light/dark themes, and automatic OG image generation. It includes sitemap, robots.txt, metadata, and syntax highlighting, with automatic blog timestamps.

Next.js · Portfolio

sleek-portfolio

sleek-portfolio

A modern, responsive portfolio template built with Next.js 15, TypeScript, Tailwind CSS, and Shadcn UI. It includes an MDX blog, project showcase, work experience timeline, and a contact form that receives messages via Telegram Bot.

Next.js · Portfolio

research-website-template

research-website-template

A React + Next.js template for research personal websites, aimed at PhD students and researchers. It centralizes publications, projects, and other content in src/data as arrays of objects, with optional fields automatically generating UI components.

Next.js · Portfolio

shadcn-portfolio

shadcn-portfolio

A developer portfolio template built with Next.js 15, shadcn/ui, Tailwind CSS, and Framer Motion, featuring an MDX blog, light and dark modes, responsive design, and SEO meta tags.

Next.js · Portfolio