{"id":29536920,"url":"https://github.com/ethanz-code/monorepo-react-starter","last_synced_at":"2026-05-05T11:35:41.225Z","repository":{"id":302299398,"uuid":"1009726415","full_name":"ethanz-code/monorepo-react-starter","owner":"ethanz-code","description":"现代化 Monorepo 架构的 React 起手项目。","archived":false,"fork":false,"pushed_at":"2025-07-13T12:34:13.000Z","size":148,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-13T14:37:06.590Z","etag":null,"topics":["modern-web","monorepo","react","react-router","template-project","zustand-state-management"],"latest_commit_sha":null,"homepage":"https://monorepo-react-starter.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ethanz-code.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-27T15:53:44.000Z","updated_at":"2025-07-13T12:34:16.000Z","dependencies_parsed_at":"2025-07-01T16:49:54.199Z","dependency_job_id":null,"html_url":"https://github.com/ethanz-code/monorepo-react-starter","commit_stats":null,"previous_names":["ethanz-code/monorepo-react-starter"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/ethanz-code/monorepo-react-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanz-code%2Fmonorepo-react-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanz-code%2Fmonorepo-react-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanz-code%2Fmonorepo-react-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanz-code%2Fmonorepo-react-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ethanz-code","download_url":"https://codeload.github.com/ethanz-code/monorepo-react-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ethanz-code%2Fmonorepo-react-starter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265563201,"owners_count":23788664,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["modern-web","monorepo","react","react-router","template-project","zustand-state-management"],"created_at":"2025-07-17T03:38:44.133Z","updated_at":"2026-05-05T11:35:41.181Z","avatar_url":"https://github.com/ethanz-code.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# monorepo-react-starter\n\n现代化 Monorepo 架构的 React 起始项目，基于 Vite、React 19、TypeScript，内置 TailwindCSS 4 原子化方案，采用 pnpm 作为包管理工具，适合中大型团队高效开发与协作。\n\n## 项目亮点\n\n- **Monorepo 架构**：基于 pnpm workspace，支持多包统一管理，便于模块复用与团队协作。\n- **React 19 + Vite**：极速开发体验，支持最新函数组件与 Hooks。\n- **TypeScript 全量类型支持**：类型安全无忧。\n- **TailwindCSS 4 原子化 CSS**：极致灵活的样式方案，支持自定义扩展。\n- **严格代码规范**：集成 ESLint、Prettier、Commitlint、Husky，保障团队代码质量。\n- **现代化开发体验**：支持 VSCode + TypeScript，类型推断与高亮无缝体验。\n\n## 目录结构\n\n```text\nmonorepo-react-starter/\n├── packages/                # Monorepo 子包（可扩展自定义工具包）\n├── src/                     # 主应用源码\n│   ├── views/               # 页面组件\n│   ├── router/              # 路由配置\n│   ├── assets/              # 静态资源和全局样式\n│   ├── App.tsx              # 应用根组件\n│   └── main.tsx             # 应用入口\n├── public/                  # 公共资源\n├── package.json             # 根包配置，依赖与脚本\n├── pnpm-workspace.yaml      # Monorepo 配置\n├── vite.config.ts           # Vite 配置，已集成 TailwindCSS\n└── ...                      # 其他配置文件\n```\n\n## 快速开始\n\n### 环境要求\n\n- Node.js 18 及以上\n- [pnpm](https://pnpm.io/) 10 及以上\n\n### 安装依赖\n\n```sh\npnpm install\n```\n\n### 启动开发服务器\n\n```sh\npnpm dev           # 启动开发服务器\n```\n\n### 构建项目\n\n```sh\npnpm build         # 构建生产版本\npnpm preview       # 预览生产构建\n```\n\n### 代码检查与格式化\n\n```sh\npnpm lint          # 代码规范检查（oxlint + eslint）\npnpm format        # 代码格式化\npnpm commit        # 交互式提交\n```\n\n## 推荐开发工具\n\n- [VSCode](https://code.visualstudio.com/) + TypeScript 支持\n\n## 依赖说明\n\n本项目主要依赖如下：\n\n**核心框架**\n\n- `react@19` - React 核心库\n- `react-dom@19` - React DOM 渲染\n- `react-router@7` - 路由管理\n\n**构建工具**\n\n- `vite` - 构建工具\n- `@vitejs/plugin-react-swc` - React SWC 插件\n- `typescript` - TypeScript 支持\n\n**样式方案**\n\n- `tailwindcss@4` - 原子化 CSS 框架\n- `@tailwindcss/vite` - TailwindCSS Vite 插件\n\n**状态管理**\n\n- `@ethan-utils/zustand` - Zustand 状态管理\n- `@ethan-utils/axios` - Axios HTTP 客户端\n\n**代码质量**\n\n- `eslint` + `oxlint` - 代码检查\n- `prettier` - 代码格式化\n- `husky` + `lint-staged` - Git 钩子\n- `commitlint` - 提交信息规范\n\n详细依赖列表请查看 package.json 文件\n\n## 代码规范与提交\n\n- 采用 ESLint + Prettier 统一代码风格\n- 提交前自动 lint \u0026 format\n- 使用 Commitlint 规范提交信息\n- Husky 钩子自动化流程\n\n## 进阶用法\n\n- 可在 `packages/` 目录下扩展自定义工具包\n- TailwindCSS 配置可在根目录自定义\n- 支持多环境配置与环境变量注入\n\n## 参考文档\n\n- [Vite 官方文档](https://vitejs.dev/)\n- [React 官方文档](https://react.dev/)\n- [React Router 官方文档](https://reactrouter.com/)\n- [TailwindCSS 官方文档](https://tailwindcss.com/)\n- [pnpm 官方文档](https://pnpm.io/)\n\n---\n\n由 React、React Router、TailwindCSS、pnpm workspace 强力驱动。\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanz-code%2Fmonorepo-react-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fethanz-code%2Fmonorepo-react-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fethanz-code%2Fmonorepo-react-starter/lists"}