构建a Portfolio Site:Claude Code 实战指南
了解building a portfolio site:Claude Code 实战. 包含实用代码示例。
ポートフォリオサイトを通过 Claude Code作る
エンジニアやデザイナーにとって、ポートフォリオサイトは自分のスキルを示す最高のツールです。借助 Claude Code,デザイン性の高いポートフォリオを短时间で构建可以。
セクション结构を指示する
> Astro + Tailwind CSSでポートフォリオサイトを作って。
> Hero、About、Skills、Projects、Contact の5セクション结构で。
> ダークモード支持と滚动动画も入れて。
Heroセクションの实现
// src/components/Hero.tsx
import { motion } from 'framer-motion';
export function Hero() {
return (
<section className="min-h-screen flex items-center justify-center relative overflow-hidden">
<div className="absolute inset-0 bg-gradient-to-br from-blue-600 to-purple-700 dark:from-gray-900 dark:to-blue-900" />
<motion.div
initial={{ opacity: 0, y: 30 }}
animate={{ opacity: 1, y: 0 }}
transition={{ duration: 0.8 }}
className="relative z-10 text-center text-white px-4"
>
<h1 className="text-5xl md:text-7xl font-bold mb-4">
田中 太郎
</h1>
<p className="text-xl md:text-2xl text-blue-100 mb-8">
フルスタックエンジニア
</p>
<div className="flex gap-4 justify-center">
<a href="#projects" className="bg-white text-blue-600 px-8 py-3 rounded-full font-medium hover:bg-blue-50 transition">
作品を見る
</a>
<a href="#contact" className="border-2 border-white px-8 py-3 rounded-full font-medium hover:bg-white/10 transition">
お問い合わせ
</a>
</div>
</motion.div>
</section>
);
}
项目カード组件
// src/components/ProjectCard.tsx
import { motion } from 'framer-motion';
interface Project {
title: string;
description: string;
image: string;
tags: string[];
demoUrl?: string;
githubUrl?: string;
}
export function ProjectCard({ project, index }: { project: Project; index: number }) {
return (
<motion.div
initial={{ opacity: 0, y: 20 }}
whileInView={{ opacity: 1, y: 0 }}
transition={{ delay: index * 0.1 }}
viewport={{ once: true }}
className="bg-white dark:bg-gray-800 rounded-xl overflow-hidden shadow-lg hover:shadow-xl transition-shadow"
>
<div className="relative aspect-video">
<img src={project.image} alt={project.title} className="object-cover w-full h-full" />
</div>
<div className="p-6">
<h3 className="text-xl font-bold mb-2 dark:text-white">{project.title}</h3>
<p className="text-gray-600 dark:text-gray-300 mb-4">{project.description}</p>
<div className="flex flex-wrap gap-2 mb-4">
{project.tags.map((tag) => (
<span key={tag} className="text-xs bg-blue-100 dark:bg-blue-900 text-blue-800 dark:text-blue-200 px-2 py-1 rounded">
{tag}
</span>
))}
</div>
<div className="flex gap-3">
{project.demoUrl && (
<a href={project.demoUrl} className="text-blue-600 hover:underline text-sm" target="_blank" rel="noopener noreferrer">
デモ →
</a>
)}
{project.githubUrl && (
<a href={project.githubUrl} className="text-gray-600 hover:underline text-sm" target="_blank" rel="noopener noreferrer">
GitHub →
</a>
)}
</div>
</div>
</motion.div>
);
}
スキルセクション
// src/components/Skills.tsx
const skills = [
{ name: 'TypeScript', level: 90 },
{ name: 'React', level: 85 },
{ name: 'Node.js', level: 80 },
{ name: 'Python', level: 75 },
{ name: 'AWS', level: 70 },
];
export function Skills() {
return (
<section id="skills" className="py-20 px-4 max-w-4xl mx-auto">
<h2 className="text-3xl font-bold text-center mb-12 dark:text-white">Skills</h2>
<div className="space-y-6">
{skills.map((skill) => (
<div key={skill.name}>
<div className="flex justify-between mb-1">
<span className="font-medium dark:text-white">{skill.name}</span>
<span className="text-gray-500">{skill.level}%</span>
</div>
<div className="w-full bg-gray-200 dark:bg-gray-700 rounded-full h-3">
<motion.div
className="bg-blue-600 h-3 rounded-full"
initial={{ width: 0 }}
whileInView={{ width: `${skill.level}%` }}
transition={{ duration: 1 }}
viewport={{ once: true }}
/>
</div>
</div>
))}
</div>
</section>
);
}
性能とSEOの优化
让 Claude Code图片优化やメタタグの配置を添加で依頼すると、Lighthouse スコアの高いサイトに仕上がります。图片はWebP形式での配信、字体はサブセット化を行うのがポイントです。
関連文章
デザイン面では响应式デザインの实现、动画的详细信息请参阅动画实现指南が参考になります。此外ダークモード实现の文章也请一并查看。
ポートフォリオ用のデザインインスピレーションはDribbbleで探すのもおすすめです。
免费 PDF:5 分钟看懂 Claude Code 速查表
只需留下邮箱,我们就会立即把这份 A4 一页速查表 PDF 发送给你。
我们会严格保护你的个人信息,绝不发送垃圾邮件。
把 Claude Code 变成真正能带来结果的工作流
先领取中文说明的免费 PDF,再进入英文商品页选择合适的教材。如果你需要团队落地、流程设计或内容变现支持,也可以直接咨询。
本文作者
Masa
深度使用 Claude Code 的工程师。运营 claudecode-lab.com——一个涵盖 10 种语言、超过 2,000 页内容的科技媒体。
相关文章
每天发布多语言 Claude Code 文章前,要先检查的 7 件事
一份实用清单,帮助你每天发布多语言 Claude Code 文章时避免漏语言、CTA 错位和线上内容未更新。
Codex Automations 是什么?让 AI 在你睡觉时完成内容运营
用 Codex Automations 自动查看流量、选择主题、写文章、改善转化路径并部署网站的实用指南。
Claude Code × GCP Cloud Functions 完全指南 | 极速开发无服务器函数
用 Claude Code 高效开发 GCP Cloud Functions。从 HTTP/Pub/Sub/Firestore 触发器实现到本地测试、部署自动化,基于 Masa 的实战经验,附完整可运行代码示例。