# 炫酷工厂 **Repository Path**: drm/cool-factory ## Basic Information - **Project Name**: 炫酷工厂 - **Description**: 科技风格的 厂区 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-10-24 - **Last Updated**: 2026-07-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智慧大楼可视化(cool-factory) 基于 **React + Three.js + MobX + Ant Design** 的 3D 可视化大屏 Web 应用。 ## 技术栈 - **前端框架**:React 18 + TypeScript - **构建工具**:Vite 7 - **状态管理**:MobX 6 - **3D 渲染**:Three.js 0.167 / three-base / three-csg-ts - **UI 组件**:Ant Design 5 - **对象存储**:ali-oss(阿里云 OSS 上传) - **工具库**:axios / lodash / shortid / jszip / archiver ## 项目结构 ``` srcWeb/ # Web 前端应用(React + Three.js 大屏) api/ # API 接口定义(含 OSS 上传工具 utilsApi.ts) public/ # 静态资源(构建产物 dist.zip 生成于此) script/ # 部署脚本(上传 dist 到阿里云 OSS) types/ # 全局类型定义 build-dist.js # 生产构建并打包为 dist.zip vite.config.ts # Vite 构建配置 ``` ## 快速开始 ### 环境要求 - Node.js ≥ 16(建议 18+) - 一个 `.env` 配置文件(见下文) ### 安装依赖 ```bash npm install ``` ### 本地开发 ```bash npm run dev ``` 开发服务器默认端口 **5222**。 ### 生产构建 ```bash npm run build:prod ``` 执行 `node build-dist.js`:先用 Vite 编译生产包,再打包为 `public/dist.zip`。 ### 部署上传 ```bash npm run upload ``` 读取项目根目录 `.env` 中的 OSS 配置,将 `dist/` 上传到 OSS 路径 `/cool-factory`(bucket 见 `.env`)。 ## 环境变量(.env) 复制一份 `.env`(已在 `.gitignore` 中,不会入库),填入以下配置: ```env NODE_ENV=development accessKeyId=xxx accessKeySecret=xxx region=oss-cn-shanghai bucket=www-3dkeshihua oss_host=https://www-3dkeshihua.oss-cn-shanghai.aliyuncs.com ``` `upload` 脚本依赖 `accessKeyId` / `accessKeySecret` / `region` / `bucket` 四个变量。 (注:`.env` 中可能还残留旧项目的数据库等配置,当前前端项目未使用,可忽略或清理。) ## 访问地址 - 开发环境:http://localhost:5222/ - 生产环境:https://www.3dkeshihua.com/cool-factory/ ## 可用脚本 | 命令 | 说明 | | ----------------------- | -------------------------------------- | | `npm run dev` | 启动开发服务器 | | `npm run build:prod` | 生产构建并打包 `dist.zip` | | `npm run build:test` | 生产构建 + 测试构建 + 上传 OSS | | `npm run preview` | 本地预览生产包 | | `npm run upload` | 上传 `dist` 到 OSS | | `npm run open:prod` | 浏览器打开生产环境地址 | ## 数据接口说明 - 设备 / 文本 / 全景盒数据:开发环境下从 `https://www.3dkeshihua.com/cool-factory_upload/*.json` 加载; 生产环境下读取与页面同目录的 `deviceData.json` / `tests.json` / `panoramaBoxData.json`。 ## 备注 - LICENSE:本项目当前未包含 LICENSE 文件,如需开源请补充。