Next.jsReactPortfolio

portfolio-v4.1 — Next.js Portfolio Template

By nick0221

A personal portfolio website template built with Next.js, including an animated ambient background, light/dark themes, project showcase and image galleries, with content driven by data files under src/data.

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-10View source

What stands out

A quick read of the recorded project description.

01

Multi-layered animated ambient background, including gradient orbs, floating code symbols, geometric shapes, constellation dots and particles

02

Light/dark theme switching, persisted via localStorage, detecting system preference, and using an inline script to avoid flicker

03

Project cards support cover images, tech stack badges, expandable descriptions and live demo links

04

Fullscreen image gallery modal, supporting arrow keys, ESC and swipe gestures, with thumbnail dots

05

Scroll-spy floating navigation menu and back-to-top button

06

Content driven by data files under src/data, making it easy to replace personal information and project entries

Template Details

This is a portfolio website template for personal presentation aimed at full-stack developers and DevOps professionals, built with Next.js App Router, React, TypeScript and Tailwind CSS, with animations provided by Framer Motion. The pages include a personal profile, work experience timeline, education background, tech stack categories, certifications, news and publications, as well as project cards with cover images, tech stack badges, expandable descriptions and demo links. Project images support a fullscreen gallery modal, operable with arrow keys and ESC, and with thumbnail dots.

For navigation, it provides a scroll-spy floating menu and a back-to-top button; the theme supports light/dark switching, persisted via localStorage and detecting system preference, using an inline script to avoid flicker. The site includes SEO configuration such as Open Graph and Twitter cards, and integrates Vercel Analytics.

Content maintenance is centralized in the src/data/ directory: projects, experience, skills, personal information, section order and metadata each correspond to separate files, and project images are placed under public/project-images/ and referenced in the data. The framework and library version numbers listed in the README have not been verified against the dependency manifest, and are not restated here.

Next.jsPortfolio

Is it right for your project?

Use Cases

  • Developers building a personal portfolio website to centrally showcase projects, experience, skills and certifications
  • Migrating existing resume content into a browsable online page according to the data file structure
  • As a practice or reference project for Next.js App Router and Framer Motion animations
  • Deploying to Vercel or a Next.js-compatible hosting platform as a personal site

Suitable For

  • Full-stack or front-end developers who need to quickly build a personal portfolio
  • Users who want to maintain site content via data files and avoid frequent changes to component code
  • Personal site authors who prefer light/dark themes and animation effects
  • Developers using the Next.js and TypeScript tech stack

Getting started & customization

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

  1. 1

    After cloning the repository, run npm install to install dependencies, then npm run dev to start the development server, accessible by default at http://localhost:3000

  2. 2

    For production builds, use npm run build and npm run start, and deploy to Vercel or a Next.js-compatible hosting platform

  3. 3

    Modify site content under src/data/: projects, experience, skills, personal information, section order and metadata each correspond to separate files

  4. 4

    Place project images into public/project-images/{project-name}/ and reference them in the portfolio data

  5. 5

    Third-party assets such as demo images, fonts and icons must be checked against their respective licenses; external hosting or analytics services may incur separate charges

Read repository instructions

License & source material

Usage conditions & limitations

Free to use · keep license notice

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

Must comply with when using

  • Permits free use, modification, commercial use and distribution of this version's code.
  • When distributing copies or substantial portions of the code, retain the original author's copyright notice and the full MIT license notice.
  • 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 MIT 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-10. 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-10-10
Screenshot last checked
2026-10-10

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-20261017 · 2026-10-16

Inspect the recorded source material

SHA-256: 5c4dc6e4020862a0735db224f8af7eee1c84aba19da076c376366abe16023f6a

2026-10-10T11:34:02.303Z

Source file / repository
# NickDevs Portfolio

A modern, feature-rich personal portfolio website built with **Next.js 16**, **React 19**, and **Tailwind CSS 3**. Features an immersive animated ambient background, full dark/light theme support, and a polished UI with smooth motion animations.

**Live site:** [https://nickdevs.vercel.app](https://nickdevs.vercel.app)

---

## ✨ Features

### 🎨 Visual & Animation
- **Animated Ambient Background** — Multi-layered background with gradient orbs, floating code symbols, geometric shapes, constellation dots, and particles that drift and pulse
- **Dark / Light Theme** — Full theme support with localStorage persistence, system preference detection, and zero-flash inline script
- **Smooth Animations** — Framer Motion powered fade-ins, reveals, scale-ins, slides, and staggered reveal effects
- **Custom Scrollbar** — Styled scrollbar that matches the theme

### 🧭 Navigation
- **Floating Navigation Menu** — Scrollspy-driven floating menu that highlights the current section, with smooth anchor scrolling
- **Back to Top** — Floating button that appears on scroll

### 💼 Portfolio
- **Project Cards** — Rich project entries with cover images, tech stack badges, expandable descriptions, and live demo links
- **Image Gallery Modal** — Fullscreen modal with keyboard navigation (arrow keys + ESC), swipe support, and thumbnail dots
- **13 Projects** — Showcasing work across Laravel, Next.js, React, PHP, and more

### 🧩 Sections
- **Profile** — Personal info, profile picture, and social links (GitHub, LinkedIn, Email, CV download)
- **Experience** — Timeline with company details and responsibilities
- **Education** — Academic background with institution and degree info
- **Tech Stacks** — Categorized skills with interactive badge chips
- **Certifications** — Certification cards with issuer details
- **News & Publications** — News and publication entries (as featured sections)

### 🔧 Technical
- Fully responsive (mobile, tablet, desktop)
- TypeScript throughout
- SEO optimized with Open Graph and Twitter cards
- Vercel Analytics integration
- Optimized WebP images with Next.js Image component

---

## Tech Stack

| Category | Technologies |
|----------|-------------|
| **Framework** | [Next.js 16](https://nextjs.org/) (App Router) |
| **UI Library** | [React 19](https://react.dev/) |
| **Language** | [TypeScript](https://www.typescriptlang.org/) |
| **Styling** | [Tailwind CSS 3](https://tailwindcss.com/) |
| **Animations** | [Framer Motion](https://www.framer.com/motion/) |
| **Icons** | [Lucide React](https://lucide.dev/) |
| **Analytics** | [Vercel Analytics](https://vercel.com/analytics) |
| **Fonts** | Geist (sans), PT Serif (serif) |

---

## Installation

```bash
# Clone the repository
git clone https://github.com/nick0221/portfolio-v4.1.git
cd portfolio-v4.1

# Install dependencies
npm install

# Run development server
npm run dev
```

Open [http://localhost:3000](http://localhost:3000) in your browser.

---

## Build for Production

```bash
npm run build
npm run start
```

Deploy to [Vercel](https://vercel.com/) or any Next.js-compatible hosting.

---

## Project Structure

```
src/
├── app/
│   ├── globals.css        # Global styles, CSS variables, animations
│   ├── layout.tsx         # Root layout with ThemeProvider, footer, nav
│   └── page.tsx           # Main page with all sections
├── components/
│   ├── AmbientBackground  # Animated multi-layer background
│   ├── BackToTop          # Floating scroll-to-top button
│   ├── FloatingMenu       # Scrollspy floating navigation
│   ├── GalleryModal       # Fullscreen image gallery
│   ├── ThemeProvider      # Dark/light theme context provider
│   ├── motion/            # Animation wrappers (FadeIn, Reveal, ScaleIn, Slide, StaggerReveal)
│   ├── logo/              # NickDevs SVG logo (light + dark)
│   └── *-entry.tsx        # Section components (profile, experience, education, portfolio, etc.)
├── data/
│   ├── aboutme.ts         # Personal information
│   ├── portfolio.ts       # Portfolio project entries
│   ├── experience.ts      # Work experience
│   ├── education.ts       # Academic background
│   ├── technical-skills.ts # Skills by category
│   ├── certification.ts   # Certifications
│   ├── news.ts            # News entries
│   ├── publication.ts     # Publications
│   ├── section-order.ts   # Section ordering configuration
│   └── title-description.ts # Custom metadata
└── lib/
    └── constants.ts       # Shared constants (e.g., blur placeholder)
```

---

## Customization

All portfolio content is driven by data files in `src/data/`:

- **Projects** → `src/data/portfolio.ts`
- **Experience** → `src/data/experience.ts`
- **Skills** → `src/data/technical-skills.ts`
- **Personal Info** → `src/data/aboutme.ts`
- **Section Order** → `src/data/section-order.ts`
- **Metadata** → `src/data/title-description.ts`

Add project images to `public/project-images/{project-name}/` and reference them in the portfolio data.

---

## License

This project is open-source and available under the [MIT License](LICENSE).

---

## Demo

Visit the live site: [https://nickdevs.vercel.app](https://nickdevs.vercel.app/)
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