设计资源DESIGN· MOTION
sanidhyy/modern-portfolio
一个用Next.js和Framer Motion搭的3D动画个人作品集网站模板A Next.js portfolio starter with 3D animations, particle effects, and a contact form using Resend and reCAPTCHA.
根据公开文档整理,未运行实测;费用以项目官网为准。Based on public documentation, without runtime testing. Check the project site for pricing.
能力CAPABILITIES
搭建带3D动画的个人作品集网站
通过联系表单接收访客留言
用reCAPTCHA防机器人骚扰
一键部署到Vercel或Netlify
Showcase your work with 3D particle backgrounds
Add smooth page transitions between sections
Receive visitor messages via a Resend-powered form
Protect the contact form with Google reCAPTCHA v3
Deploy the portfolio to Vercel or Netlify in one click
上手GET STARTED
文档里没有找到可识别的安装命令。这类项目按发布规则不会进入榜单,只能在这里查看。No recognisable install command was found in the docs. Projects like this never enter the ranked list under our publishing rules — they are viewable here only.
克隆仓库后,在根目录运行 `npm install --legacy-peer-deps` 或 `pnpm install --legacy-peer-deps`。After cloning, create a .env.local file with your Resend and reCAPTCHA keys, then run 'npm install --legacy-peer-deps' or 'pnpm install --legacy-peer-deps' and start with 'npm run dev' or 'pnpm dev'.
使用限制LIMITATIONS
以下要求与风险来自文档静态检查,未执行项目代码;扫描没有命中,不代表使用安全。Risk here is evidence, not an alarm. These findings come from static scanning of the docs; we never execute a project’s code.
限制LIMITS
未知Unknown
项目动态PROJECT ACTIVITY
首次发现FIRST SEEN
03 OCT 202603 OCT 2026
增长GROWTH
+1.1%+1.1%
280 → 283 stars · 16 个快照280 → 283 stars · 16 snapshots
状态STATUS
持续活跃Active
近7天有12次提交,项目处于活跃维护状态。Received 283 GitHub stars and 114 forks, showing community interest
静态扫描STATIC SCAN
在 README、SKILL.md 和依赖清单中没有匹配到已知风险模式。No known risk patterns matched in the README, SKILL.md or dependency list.
静态扫描未发现明显风险,但不代表安全。The static scan found no known risk patterns, but this does not prove the project is fully secure. Review the code and dependencies before using it on a production site.
依赖:Dependencies:@tsparticles/engine, @tsparticles/react, framer-motion, next, react, react-countup, react-dom, react-google-recaptcha-v3, react-hot-toast, react-icons, resend, swiper
{
"agents": [],
"apiKey": "EMETRY_DISABLED=\"1\" # resend RESEND_API_KEY=\"re_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\" R",
"docker": null,
"taxonomy": {
"scores": {
"design": 9,
"ai-tools": 0,
"dev-tools": 1,
"indie-web": 0,
"skill-agent": 0,
"productivity": 0
},
"primary": "design",
"secondary": "motion"
},
"localRuntime": null,
"skillMdTotal": 0,
"skillMdErrors": [],
"treeTruncated": false,
"categoryScores": {
"data": 0,
"agent": 0,
"media": 0,
"design": 10,
"browser": 0,
"devtool": 1,
"security": 0,
"marketing": 0,
"productivity": 0
},
"classification": [],
"scannedSources": [
"readme"
],
"skillMdFetched": 0
}每周一周刊Monday weekly digest