# Simba Index 黑龙江大学 Simba Robotics 战队的官方网站项目,用于展示团队信息、成员、机器人作品和比赛成就。 ## 目录 - [项目概述](#项目概述) - [开发环境需求](#开发环境需求) - [项目目录结构](#项目目录结构) - [安装和设置](#安装和设置) - [编译和调试](#编译和调试) - [部署](#部署) - [贡献指南](#贡献指南) ## 项目概述 Simba Index 是一个使用 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 simba-index/ ├── 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. **克隆仓库** ```shellscript git clone https://git.sloray.com/PRAM/simba-index.git cd simba-index ``` ### 2. **安装依赖** 使用 npm: ```shellscript npm install ``` 或使用 yarn: ```shellscript yarn install ``` ### 3. **环境变量设置** 如果需要,创建 `.env.local` 文件并添加必要的环境变量: ```plaintext NEXT_PUBLIC_SITE_URL=http://localhost:3000 ``` ## 编译和调试 ### 开发模式 启动开发服务器: ```shellscript npm run dev # 或 yarn dev ``` 访问 [http://localhost:3000](http://localhost:3000) 查看网站。 ### 构建项目 构建生产版本: ```shellscript npm run build # 或 yarn build ``` ### 运行生产版本 ```shellscript npm run start # 或 yarn start ``` ### 代码检查 运行 ESLint 检查代码: ```shellscript npm run lint # 或 yarn lint ``` ## 部署 该项目可以部署到任何支持 Next.js 的平台。 ### 自托管部署 1. 构建项目:`npm run build` 2. 将 `.next`、`public` 目录和 `package.json` 复制到服务器 3. 在服务器上安装依赖:`npm install --production` 4. 启动服务:`npm run start` ## 贡献指南 我们欢迎任何形式的贡献!如果您想为项目做出贡献,请遵循以下步骤: 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](LICENSE) 文件。 ## 联系方式 如有任何问题或建议,请联系: - 电子邮件:[contact@simba-robotics.com](mailto:contact@simba-robotics.com) - 地址:602 实验室,电子工程学院,黑龙江大学 --- © 2025 Simba Robotics. 保留一切权利。