重写 README.md

This commit is contained in:
HelixCopex 2025-04-19 20:31:10 +08:00
parent c906a2c013
commit 04b27ac0a2

250
README.md
View File

@ -1,153 +1,199 @@
# Simba-Index
# Simba Robotics 官方网站
本项目是一个基于 TypeScript 和 Next.js 的战队主页模板,用于生成战队主页所需的静态文件,生成后部署在具有 Nginx/OpenResty 环境的网页服务器中分发,以介绍、宣传战队。
[点击这里](https://www.simba-robotics.com)查看最新部署呈现的效果。
黑龙江大学 Simba Robotics 战队的官方网站项目,用于展示团队信息、成员、机器人作品和比赛成就。
---
## 目录
## 项目结构
- [项目概述](#项目概述)
- [开发环境需求](#开发环境需求)
- [项目目录结构](#项目目录结构)
- [安装和设置](#安装和设置)
- [编译和调试](#编译和调试)
- [部署](#部署)
- [贡献指南](#贡献指南)
项目的主要目录和文件结构如下:
## 项目概述
Simba Robotics 官方网站是一个使用 Next.js 构建的现代化 Web 应用,采用 React 框架和 Tailwind CSS 进行样式设计。网站包含以下主要功能:
- 响应式设计,适配各种设备屏幕
- 团队介绍和成员展示
- 机器人作品展示
- 比赛成就和历史记录
- 联系方式和招募信息
## 开发环境需求
要开发和运行此项目,您需要以下环境:
- **Node.js** (v18.0.0 或更高版本)
- **npm** (v8.0.0 或更高版本) 或 **yarn** (v1.22.0 或更高版本)
- 现代浏览器 (Chrome, Firefox, Safari, Edge)
- 代码编辑器 (推荐 Visual Studio Code)
- Git
## 项目目录结构
```plaintext
SimbaIndex/
├── .next/ # Next.js 构建输出目录
├── pages/ # 页面组件目录
│ ├── index.tsx # 首页
│ ├── history/ # 历史记录页面
│ │ ├── page.tsx # 历史记录页面主文件
│ │ ├── layout.tsx # 历史记录页面布局文件
├── components/ # 可复用的 React 组件
├── styles/ # 样式文件
├── public/ # 静态资源文件
├── package.json # 项目依赖和脚本
├── tsconfig.json # TypeScript 配置文件
└── README.md # 项目说明文件
simba-robotics/
├── app/ # Next.js 应用路由
│ ├── history/ # 英灵殿页面
│ ├── privacy/ # 隐私政策页面
│ ├── robots/ # 机器人详情页面
│ ├── teams/ # 团队小组页面
│ ├── terms/ # 服务条款页面
│ ├── globals.css # 全局样式
│ ├── layout.tsx # 根布局组件
│ └── page.tsx # 首页组件
├── components/ # 可复用组件
│ ├── ui/ # UI 组件库
│ ├── about-section.tsx # 关于部分组件
│ ├── achievements-section.tsx # 成就部分组件
│ ├── contact-section.tsx # 联系部分组件
│ ├── footer.tsx # 页脚组件
│ ├── header.tsx # 页头组件
│ ├── hero-section.tsx # 英雄部分组件
│ ├── robots-showcase.tsx # 机器人展示组件
│ ├── team-groups-section.tsx # 团队小组部分组件
│ └── theme-provider.tsx # 主题提供者组件
├── lib/ # 工具和数据
│ ├── achievement-data.ts # 成就数据
│ ├── robot-data.ts # 机器人数据
│ └── utils.ts # 工具函数
├── public/ # 静态资源
│ ├── icons/ # 图标文件
│ ├── grid-pattern.png # 网格背景
│ └── logo.svg # 团队 Logo
├── .gitignore # Git 忽略文件
├── next.config.js # Next.js 配置
├── package.json # 项目依赖
├── README.md # 项目说明
├── tailwind.config.ts # Tailwind CSS 配置
└── tsconfig.json # TypeScript 配置
```
---
## 安装和设置
## 开发环境要求
按照以下步骤设置开发环境:
在开始开发之前,请确保您的系统满足以下要求:
### 1. **克隆仓库**
- **Node.js**: 版本 >= 16.x
- **npm****yarn**: 用于管理依赖
- **TypeScript**: 项目使用 TypeScript 编写
- **Next.js**: 用于服务端渲染和静态站点生成
```shellscript
git clone https://github.com/your-username/simba-robotics.git
cd simba-robotics
```
---
### 2. **安装依赖**
## 安装依赖
使用 npm
在项目根目录下运行以下命令以安装所需依赖:
```bash
# 使用 npm
```shellscript
npm install
```
# 或使用 yarn
或使用 yarn
```shellscript
yarn install
```
---
### 3. **环境变量设置**
## 启动开发服务器
如果需要,创建 `.env.local` 文件并添加必要的环境变量:
运行以下命令以启动本地开发服务器:
```plaintext
NEXT_PUBLIC_SITE_URL=http://localhost:3000
```
```bash
# 使用 npm
## 编译和调试
### 开发模式
启动开发服务器:
```shellscript
npm run dev
# 或使用 yarn
# 或
yarn dev
```
开发服务器默认运行在 `http://localhost:3000`
访问 [http://localhost:3000](http://localhost:3000) 查看网站
---
### 构建项目
## 编译和构建
构建生产版本:
要生成生产环境的构建版本,请运行以下命令:
```bash
# 使用 npm
```shellscript
npm run build
# 或使用 yarn
# 或
yarn build
```
构建完成后,输出文件将存储在 `.next/` 目录中。
### 运行生产版本
---
## 调试方法
1. **本地调试**
- 启动开发服务器后,使用浏览器访问 `http://localhost:3000`
- 使用浏览器开发者工具调试页面。
2. **VS Code 调试**
- 在项目根目录中创建或编辑 `.vscode/launch.json` 文件,添加以下配置:
```json
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Next.js Debug",
"program": "${workspaceFolder}/node_modules/next/dist/bin/next",
"args": ["dev"],
"cwd": "${workspaceFolder}",
"protocol": "inspector",
"port": 9229
}
]
}
```shellscript
npm run start
# 或
yarn start
```
- 按下 `F5` 启动调试。
### 代码检查
---
运行 ESLint 检查代码:
## 常见问题
### 1. 找不到模块或类型声明
如果遇到类似 `找不到模块` 的错误,请运行以下命令安装缺失的依赖:
```bash
npm install
npm install --save-dev @types/<模块名>
```shellscript
npm run lint
# 或
yarn lint
```
### 2. 构建失败
## 部署
确保所有依赖已正确安装,并运行以下命令清理缓存后重新构建:
该项目可以部署到任何支持 Next.js 的平台。
```bash
npm run clean
npm run build
```
### 自托管部署
---
1. 构建项目:`npm run build`
2. 将 `.next``public` 目录和 `package.json` 复制到服务器
3. 在服务器上安装依赖:`npm install --production`
4. 启动服务:`npm run start`
## 贡献指南
欢迎对本项目提出改进建议或提交代码贡献。请确保在提交代码前运行以下命令以检查代码质量
我们欢迎任何形式的贡献!如果您想为项目做出贡献,请遵循以下步骤
```bash
npm run lint
npm run test
```
1. Fork 仓库
2. 创建您的特性分支:`git checkout -b feature/amazing-feature`
3. 提交您的更改:`git commit -m 'Add some amazing feature'`
4. 推送到分支:`git push origin feature/amazing-feature`
5. 提交 Pull Request
---
### 代码风格
- 使用 TypeScript 进行类型检查
- 遵循 ESLint 规则
- 使用函数组件和 React Hooks
- 使用 Tailwind CSS 进行样式设计
- 保持组件的可复用性和模块化
### 命名约定
- 组件文件:使用 kebab-case`hero-section.tsx`
- React 组件:使用 PascalCase`HeroSection`
- 函数和变量:使用 camelCase`handleClick`
- 常量:使用大写 SNAKE_CASE`MAX_ITEMS`
## 许可证
本项目基于 [GPL v3.0](LICENSE) 开源。
本项目采用 MIT 许可证 - 详情请参阅 [LICENSE](LICENSE) 文件。
## 联系方式
如有任何问题或建议,请联系:
- 电子邮件:[contact@simbarobotics.com](mailto:contact@simbarobotics.com)
- 地址Room 602, Physics Building, Heilongjiang University
---
© 2023 Simba Robotics. 保留一切权利。