1326 字
7 分钟
项目创建流程

前端项目创建流程速查表#

背景#

在前端开发中,不同的技术栈,项目创建流程也不同。增加我的心智负担。本文整理了主流技术栈的统一创建流程,帮助快速启动项目。

🎯 通用创建流程#

无论选择哪种技术栈,都遵循以下通用步骤:

1. 环境准备#

Terminal window
# 检查 Node.js 版本(推荐 18+)
node --version
# 检查包管理器
npm --version # 或 yarn --version 或 pnpm --version

2. 项目创建#

Terminal window
# 使用官方脚手架创建项目
<official-cli> create <project-name>
# 进入项目目录
cd <project-name>
# 安装依赖
npm install # 或 yarn 或 pnpm install
# 启动开发服务器
npm run dev # 或 yarn dev 或 pnpm dev

3. 项目配置#

  • 🔧 配置开发工具(ESLint、Prettier)
  • 📁 调整目录结构
  • ⚙️ 设置环境变量
  • 📝 编写 README.md

📦 主流技术栈创建命令#

React 生态系统#

Create React App (CRA)#

Terminal window
# 创建项目
npx create-react-app my-app
cd my-app
npm start
# TypeScript 版本
npx create-react-app my-app --template typescript

Vite + React#

Terminal window
# 创建项目
npm create vite@latest my-react-app -- --template react
cd my-react-app
npm install
npm run dev
# TypeScript 版本
npm create vite@latest my-react-app -- --template react-ts

Next.js#

Terminal window
# 创建项目
npx create-next-app@latest my-nextjs-app
cd my-nextjs-app
npm run dev
# 带 TypeScript
npx create-next-app@latest my-nextjs-app --typescript
# 带 App Router
npx create-next-app@latest my-nextjs-app --app

Vue 生态系统#

Vue CLI#

Terminal window
# 安装 CLI(全局)
npm install -g @vue/cli
# 创建项目
vue create my-vue-app
cd my-vue-app
npm run serve

Vite + Vue#

Terminal window
# 创建项目
npm create vue@latest my-vue-app
cd my-vue-app
npm install
npm run dev

Nuxt.js#

Terminal window
# 创建项目
npx nuxi@latest init my-nuxt-app
cd my-nuxt-app
npm install
npm run dev

Angular 生态系统#

Angular CLI#

Terminal window
# 安装 CLI(全局)
npm install -g @angular/cli
# 创建项目
ng new my-angular-app
cd my-angular-app
ng serve

其他流行框架#

Svelte#

Terminal window
# SvelteKit(推荐)
npm create svelte@latest my-svelte-app
cd my-svelte-app
npm install
npm run dev
# 经典 Svelte
npx degit sveltejs/template my-svelte-app
cd my-svelte-app
npm install
npm run dev

Astro#

Terminal window
# 创建项目
npm create astro@latest my-astro-app
cd my-astro-app
npm install
npm run dev
# 使用模板
npm create astro@latest my-astro-app -- --template blog

Remix#

Terminal window
# 创建项目
npx create-remix@latest my-remix-app
cd my-remix-app
npm install
npm run dev

Solid.js#

Terminal window
# 创建项目
npx degit solidjs/templates/js my-solid-app
cd my-solid-app
npm install
npm run dev
# TypeScript 版本
npx degit solidjs/templates/ts my-solid-app

🛠️ 构建工具对比#

工具特点适用场景创建命令
Vite⚡ 极速启动现代项目首选npm create vite@latest
Webpack🔧 高度配置复杂项目配置集成在各框架CLI中
Parcel🎯 零配置快速原型npx parcel index.html
Rollup📦 库开发组件库打包手动配置

🎨 CSS 方案选择#

Tailwind CSS#

Terminal window
# Vite 项目
npm install -D tailwindcss postcss autoprefixer
npx tailwindcss init -p
# Next.js 自动配置
npx create-next-app@latest my-app -- --tailwind

Styled Components#

Terminal window
# React
npm install styled-components
npm install --save-dev @types/styled-components

CSS Modules#

Terminal window
# 大多数脚手架默认支持
# 文件命名:Component.module.css

📋 项目配置模板#

package.json 脚本标准化#

{
"scripts": {
"dev": "启动开发服务器",
"build": "构建生产版本",
"preview": "预览生产版本",
"test": "运行测试",
"lint": "代码检查",
"format": "代码格式化"
}
}

环境变量配置#

.env.local
NEXT_PUBLIC_API_URL=http://localhost:3001
DATABASE_URL=postgresql://...
# .env.example(提交到版本控制)
NEXT_PUBLIC_API_URL=your_api_url_here
DATABASE_URL=your_database_url_here

Git 配置#

Terminal window
# 初始化 Git
git init
git add .
git commit -m "feat: initial commit"
# 添加远程仓库
git remote add origin https://github.com/username/repo.git
git push -u origin main

🔧 开发工具配置#

ESLint + Prettier#

Terminal window
# 安装依赖
npm install --save-dev eslint prettier eslint-config-prettier
# 配置文件
echo '{"extends": ["next", "prettier"]}' > .eslintrc.json
echo '{"semi": true, "singleQuote": true, "trailingComma": "es5"}' > .prettierrc

TypeScript#

Terminal window
# 添加到现有项目
npm install --save-dev typescript @types/node
# 生成配置文件
npx tsc --init

Husky + lint-staged#

Terminal window
# 安装
npm install --save-dev husky lint-staged
# 配置 Git hooks
npx husky-init && npm install

🚀 部署配置速查#

Vercel#

Terminal window
# 安装 CLI
npm install -g vercel
# 部署
vercel --prod

Netlify#

Terminal window
# 安装 CLI
npm install -g netlify-cli
# 部署
netlify deploy --prod

GitHub Pages#

.github/workflows/deploy.yml
name: Deploy to GitHub Pages
on:
push:
branches: [ main ]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
- run: npm install
- run: npm run build
- uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./dist

📊 技术选型决策树#

想要选择合适的技术栈?遵循以下决策路径:

  1. 静态网站 → Astro、Next.js (SSG)
  2. SPA 应用 → React/Vue + Vite
  3. 全栈应用 → Next.js、Nuxt.js
  4. 快速原型 → Vite + 任何框架
  5. 企业级 → Angular、React + 成熟生态

🎯 最佳实践总结#

✅ 推荐做法#

  1. 统一包管理器:项目内保持一致(npm/yarn/pnpm)
  2. 版本锁定:提交 package-lock.jsonpnpm-lock.yaml
  3. 环境隔离:使用 .env 文件管理环境变量
  4. 代码规范:配置 ESLint + Prettier + Husky
  5. 类型安全:优先选择 TypeScript

⚠️ 避免的坑#

  1. 全局依赖冲突:避免全局安装过多CLI工具
  2. 版本不一致:团队统一 Node.js 和包管器版本
  3. 配置过度:初期保持简单,按需添加配置
  4. 缓存问题:遇到奇怪问题先清除 node_modules

🔖 快速参考#

最常用的创建命令#

Terminal window
# React 项目(推荐)
npm create vite@latest my-app -- --template react-ts
# Vue 项目(推荐)
npm create vue@latest my-app
# Next.js 项目(推荐)
npx create-next-app@latest my-app --typescript
# Astro 项目(推荐)
npm create astro@latest my-app

一键创建脚本#

create-project.sh
#!/bin/bash
echo "选择技术栈:"
echo "1) React (Vite)"
echo "2) Vue (Vite)"
echo "3) Next.js"
echo "4) Nuxt.js"
echo "5) Astro"
read -p "输入选择 (1-5): " choice
read -p "项目名称: " project_name
case $choice in
1) npm create vite@latest $project_name -- --template react-ts ;;
2) npm create vue@latest $project_name ;;
3) npx create-next-app@latest $project_name --typescript ;;
4) npx nuxi@latest init $project_name ;;
5) npm create astro@latest $project_name ;;
*) echo "无效选择" ;;
esac
echo "项目创建完成!"
echo "下一步: cd $project_name && npm install && npm run dev"

📚 延伸阅读#

通过这个速查表,您可以快速在不同技术栈间切换,大大减少记忆负担,专注于核心开发工作!🚀

项目创建流程
https://fuwari.vercel.app/posts/project-create/
作者
Lorem Ipsum
发布于
2025-09-05
许可协议
CC BY-NC-SA 4.0