字
字节笔记本
2026年2月22日
CodeGuide Starter Kit - Next.js 15 全栈启动模板
本文介绍 CodeGuide Starter Kit,一个基于 Next.js 15 的现代化全栈 Web 应用启动模板。该项目集成了认证、数据库、AI 能力和暗黑模式,帮助开发者快速构建生产级应用。
项目简介
CodeGuide Starter Kit 是由 CodeGuide.dev 开发的开源启动模板,旨在为开发者提供一个功能完备、架构现代的 Web 应用起点。截至目前,该项目在 GitHub 上已获得 514+ stars 和 109+ forks,主要使用 TypeScript 编写。
该项目特别适合:
- 需要快速启动全栈项目的开发者
- 希望学习现代 Next.js 技术栈的工程师
- 需要使用 AI 集成的应用场景
核心特性
- 🔐 认证系统:基于 Clerk 的完整认证流程,包含中间件保护
- 🗄️ 数据库集成:Supabase 数据库与第三方认证深度整合
- 🤖 AI 聊天界面:支持 OpenAI/Anthropic 的 AI 对话功能
- 🎨 丰富组件库:40+ 个 shadcn/ui 组件(New York 风格)
- 🌙 暗黑模式:支持系统偏好检测的暗黑主题
- 🎯 设置仪表板:内置服务状态监控和配置向导
- 🚀 App Router:基于 Next.js 15 App Router 的现代化架构
- 🔒 行级安全:RLS 策略示例,使用 Clerk 用户 ID
- 📱 响应式设计:基于 TailwindCSS v4 的移动端适配
- 🎨 自定义字体:Geist Sans、Geist Mono、Parkinsans
技术栈
| 技术 | 用途 |
|---|---|
| Next.js 15 | React 全栈框架(App Router) |
| TypeScript | 类型安全的开发语言 |
| Clerk | 用户认证与授权 |
| Supabase | PostgreSQL 数据库与后端服务 |
| Tailwind CSS v4 | 原子化 CSS 样式框架 |
| shadcn/ui | 高质量 React 组件库 |
| Vercel AI SDK | AI 功能集成 |
| next-themes | 主题管理 |
安装指南
前置要求
- Node.js 18+
- Clerk 账号(用于认证)
- Supabase 账号(用于数据库)
- 可选:OpenAI 或 Anthropic API Key(用于 AI 功能)
快速开始
bash
# 克隆仓库
git clone https://github.com/CodeGuide-dev/codeguide-starter-lite.git
cd codeguide-starter-lite
# 安装依赖
npm install
# 或 yarn install
# 或 pnpm install
# 配置环境变量
cp .env.example .env.local
# 启动开发服务器
npm run dev访问 http://localhost:3000 查看应用。
环境变量配置
创建 .env.local 文件并填写以下变量:
bash
# Clerk 认证
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_publishable_key
CLERK_SECRET_KEY=your_secret_key
# Supabase
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
# AI 集成(可选)
OPENAI_API_KEY=your_openai_api_key
ANTHROPIC_API_KEY=your_anthropic_api_key项目结构
text
codeguide-starter-kit/
├── src/
│ ├── app/ # Next.js App Router 页面
│ │ ├── api/chat/ # AI 聊天 API 端点
│ │ ├── globals.css # 全局样式
│ │ ├── layout.tsx # 根布局
│ │ └── page.tsx # 首页 + 设置仪表板
│ ├── components/ # React 组件
│ │ ├── ui/ # shadcn/ui 组件
│ │ ├── chat.tsx # AI 聊天界面
│ │ ├── theme-provider.tsx # 主题上下文
│ │ └── theme-toggle.tsx # 暗黑模式切换
│ ├── lib/ # 工具函数
│ │ ├── supabase.ts # Supabase 客户端
│ │ ├── user.ts # 用户工具
│ │ ├── utils.ts # 通用工具
│ │ └── env-check.ts # 环境验证
│ └── middleware.ts # Clerk 路由保护
├── supabase/
│ └── migrations/ # 数据库迁移(含 RLS 示例)
├── CLAUDE.md # AI 编码助手文档
├── SUPABASE_CLERK_SETUP.md # 集成设置指南
└── components.json # shadcn/ui 配置数据库集成
该项目采用现代化的 Clerk + Supabase 集成方案:
- 第三方认证:使用 Clerk 的官方集成(非废弃的 JWT 模板)
- 行级安全:RLS 策略使用
auth.jwt() ->> 'sub'匹配 Clerk 用户 ID - 迁移示例:包含多种 RLS 模式(用户私有、公开/私有、协作)
- 服务端客户端:自动处理 Clerk Token
AI 编码助手集成
项目针对 AI 编码助手(如 Claude Code)进行了优化:
- CLAUDE.md:提供全面的项目上下文和开发模式
- 设置指南:详细的集成步骤说明
- 迁移示例:RLS 策略模板
- 清晰的文件结构:统一的命名约定
- TypeScript 集成:完整的类型定义
使用示例
启动开发服务器
bash
npm run dev构建生产版本
bash
npm run build数据库迁移
bash
# 使用 Supabase CLI 执行迁移
supabase db push相关资源
- GitHub 仓库:CodeGuide-dev/codeguide-starter-lite
- 官方网站:codeguide.dev
- Clerk 文档:clerk.com/docs
- Supabase 文档:supabase.com/docs
- Next.js 文档:nextjs.org/docs
许可证
MIT License - 详见项目 LICENSE 文件。
分享: