Next.jsReact作品集

portfolio-website — Next.js 作品集模板

作者 Manusha17

基于 Next.js 与 React 的个人作品集模板,通过编辑 src/data/config.ts 即可替换个人信息、社交链接、技能与时间线内容,并支持从 GitHub、Medium、Dev.to 拉取展示内容。

看看你的网站会是什么样

浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。

2 个预览视图
桌面端首页1 / 2
桌面端截图首屏预览

由服务器浏览器实际访问页面后截取。

全部页面与视图 2

截图用于了解视觉与布局,交互效果请以实际项目为准。

采集于 2026-10-03查看来源

值得关注的模板亮点

从已有项目资料中,快速了解它的特点。

01

个人信息、社交链接、技能与时间线集中在 src/data/config.ts,改一处即可替换内容

02

支持从 GitHub 拉取仓库展示,并可开关 Medium 与 Dev.to 文章源

03

基于 Tailwind CSS 的响应式布局,提供明暗主题

04

使用 Framer Motion 实现页面动画

05

配置了 GitHub Actions 自动部署到 GitHub Pages 的流程

06

MIT 许可,允许免费使用、修改、商用和分发该版本代码

模板详细介绍

这是一个面向个人作品集场景的开源模板,使用 Next.js 与 React 构建,采用 App Router 与静态生成方式,可部署到 GitHub Pages。模板把个人信息、社交链接、技能、经历与时间线等数据集中在 src/data/config.ts 中,按 README 说明修改该文件即可替换为自己的内容。项目还提供 GitHub 仓库、Medium 文章与 Dev.to 文章的展示集成,其中 GitHub 用户名通过环境变量配置,Medium 与 Dev.to 的用户名可选,并可在 config.ts 中分别开关文章源。联系表单依赖 Web3Forms 的访问密钥,需要自行申请并写入环境变量。样式基于 Tailwind CSS,提供明暗主题与响应式布局,动画使用 Framer Motion。仓库采用 MIT 许可,允许免费使用、修改、商用和分发该版本代码,但演示图片、字体、图标等第三方素材需按各自许可核对,域名、托管等外部服务可能另外收费。

Next.jsReact作品集

适合你的项目吗?

适用场景

  • 个人开发者搭建展示项目与文章的作品集站点
  • 把 GitHub 仓库、Medium 或 Dev.to 文章聚合到同一页面展示
  • 需要静态部署到 GitHub Pages 的个人站点
  • 希望用集中配置文件快速替换内容、减少逐页修改的模板使用者

适合人群

  • 有 Next.js 或 React 基础、愿意编辑配置文件的使用者
  • 需要作品集模板并计划部署到 GitHub Pages 的个人开发者
  • 希望把 GitHub、Medium、Dev.to 内容集中展示的写作者

上手与定制指南

结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。

  1. 1

    需要 Node.js 18+ 以及 npm 或 yarn,安装依赖后运行 npm run dev 启动开发服务器

  2. 2

    在 src/data/config.ts 中修改个人资料、社交链接、技能、经历与时间线数据

  3. 3

    在 .env.local 中配置 NEXT_PUBLIC_GITHUB_USERNAME(项目展示必需)、可选的 NEXT_PUBLIC_MEDIUM_USERNAME 与 NEXT_PUBLIC_DEVTO_USERNAME,以及联系表单所需的 NEXT_PUBLIC_WEB3FORMS_ACCESS_KEY

  4. 4

    部署到 GitHub Pages 时在仓库 Settings → Pages 中把 Source 设为 GitHub Actions,推送到 main 分支后自动部署

  5. 5

    使用前核对演示图片、字体、图标等第三方素材的许可,并确认域名、托管等外部服务是否产生费用

查看仓库使用说明

授权与来源资料

使用条件与限制

免费使用 · 保留许可声明

本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。

使用时需要遵守

  • 允许免费使用、修改、商用和分发该版本代码。
  • 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
  • 代码按现状提供;担保与责任限制以原许可证及适用法律为准。

额外费用与待核对事项

  • 项目展示区依赖 GitHub 用户名环境变量,需自行提供 GitHub 账号信息才能拉取并显示仓库内容。
  • 联系表单依赖 Web3Forms 外部服务,必须自行申请访问密钥并写入环境变量,否则表单无法使用。
  • 启用 Medium 文章展示需提供 Medium 用户名,属于外部平台账号依赖。
  • 启用 Dev.to 文章展示需提供 Dev.to 用户名,属于外部平台账号依赖。
  • 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
  • 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据

Permission is hereby granted, free of charge

许可证原文

NEXT_PUBLIC_GITHUB_USERNAME=yourusername

README 原文

NEXT_PUBLIC_WEB3FORMS_ACCESS_KEY=your_access_key

README 原文

NEXT_PUBLIC_MEDIUM_USERNAME=your_medium_username

README 原文

NEXT_PUBLIC_DEVTO_USERNAME=your_devto_username

README 原文
https://github.com/Manusha17/portfolio-website/blob/master/LICENSEhttps://github.com/Manusha17/portfolio-website/blob/master/README.md

DeepSeek 根据仓库许可证和 README 整理 ·2026-10-03。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。

项目核对记录与介绍依据

模板资料

来源平台
GitHub
资料与维护参考分
资料较完整 · 88 / 100
技术栈
Next.js · React
网站类型
作品集
这个分数如何计算

本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。

这个项目需要核对什么

记录的仓库更新时间
2026-09-06
截图检查日期
2026-10-03

已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。

目录记录的主要技术栈是 Next.js。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。

查看具体选型方法 →

介绍的制作与核对状态

介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。

审核声明: [email protected] · 2026-10-04

查看当时使用的来源资料

SHA-256: 0b6dea878c7d47b73210fdcfa18d4094bf24dcd198d00ec72e775f9a339930c1

2026-10-03T20:20:04.524Z

来源文件 / 仓库
# Personal Portfolio Website

A modern, accessible personal portfolio website built with Next.js, TypeScript, and Tailwind CSS. Designed to showcase projects, articles, and professional experience with optimal performance and accessibility.

See how it looks with actual data: https://manusha17.github.io/

## Features

- 🚀 **Next.js 14+** with App Router and Static Site Generation
- 🎨 **Tailwind CSS** for responsive design and styling with light and dark theme
- 📱 **Fully Responsive** - works on mobile, tablet, and desktop
- ♿ **Accessibility First** - WCAG 2.1 AA compliant
- 🔍 **SEO Optimized** with meta tags and structured data
- 🎭 **Smooth Animations** with Framer Motion
- 📊 **GitHub Integration** - automatically fetch and display repositories
- 📝 **Medium Integration** - display published articles from Medium
- 📝 **Dev.to Integration** - display published articles from Dev.to
- 🚀 **GitHub Pages Ready** - optimized for static deployment

## Tech Stack

- **Framework:** Next.js 16 with TypeScript and React Compiler
- **Styling:** Tailwind CSS 4
- **Animation:** Framer Motion
- **Deployment:** GitHub Pages
- **Code Quality:** ESLint, Prettier

## Getting Started

### Prerequisites

- Node.js 18+
- npm or yarn

### Installation

1. Clone the repository
2. Install dependencies:

   ```bash
   npm install
   ```

3. Start the development server:

   ```bash
   npm run dev
   ```

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

## Available Scripts

- `npm run dev` - Start development server
- `npm run build` - Build for production
- `npm run export` - Export static files for GitHub Pages
- `npm run lint` - Run ESLint
- `npm run lint:fix` - Fix ESLint errors
- `npm run format` - Format code with Prettier
- `npm run format:check` - Check code formatting
- `npm run type-check` - Run TypeScript type checking
- `npm run test:deployment` - Test deployment configuration locally
- `npm run validate:deployment <url>` - Validate deployed site
- `npm run build:github` - Build with custom base path for GitHub Pages
- `npm run serve` - Serve built files locally

## Project Structure

```
src/
├── app/                 # Next.js app directory
├── components/          # React components
│   ├── atoms/          # Basic UI components
|   ├── icons/          # SVG icon components
│   ├── molecules/      # Simple component combinations
│   ├── organisms/      # Complex UI sections
│   └── templates/      # Page layouts
├── data/               # Static data and configuration
├── lib/                # Utility functions
└── types/              # TypeScript type definitions
```

## Deployment

This project is configured for automatic deployment to GitHub Pages using GitHub Actions.

### Quick Setup

1. **Fork or clone this repository**
2. **Enable GitHub Pages:**
   - Go to repository Settings → Pages
   - Set Source to "GitHub Actions"
3. **Push to main branch** - deployment happens automatically!

### Advanced Configuration

For detailed deployment setup, custom domains, and troubleshooting, see [DEPLOYMENT.md](./DEPLOYMENT.md).

### Local Testing

Test your deployment configuration before pushing:

```bash
# Test the complete deployment process
npm run test:deployment

# Build and serve locally
npm run build
npm run serve

# Validate a deployed site
npm run validate:deployment https://yourusername.github.io/repository-name
```

## Customization

### Personal Information

Update personal information in `src/data/config.ts`:

- Basic profile information (name, title, bio)
- Social media links
- Skills and experience data
- Timeline items (education, work, achievements)

### Article Sources Configuration

Configure which article sources to use in `src/data/config.ts`:

```typescript
articles: {
  sources: {
    medium: true,  // Enable/disable Medium articles
    devto: true,   // Enable/disable Dev.to articles
  },
},
```

### Environment Variables

Create a `.env.local` file with your configuration:

```bash
# GitHub username (required for projects section)
NEXT_PUBLIC_GITHUB_USERNAME=yourusername

# Medium username (optional, for Medium articles)
NEXT_PUBLIC_MEDIUM_USERNAME=your_medium_username

# Dev.to username (optional, for Dev.to articles)
NEXT_PUBLIC_DEVTO_USERNAME=your_devto_username

# Web3Forms access key (required for contact form)
NEXT_PUBLIC_WEB3FORMS_ACCESS_KEY=your_access_key
```

### Styling

Customize colors and styling in `src/app/globals.css` and Tailwind configuration.

## License

MIT License - feel free to use this template for your own portfolio!
反馈内容错误

看看同类模板

对比同技术栈与用途的模板,找到更适合的视觉与内容结构。