# 普瑞数据中台指标系统

智能指标管理平台

## 🖥目录

- [安装](#安装)
- [使用](#使用)
- [项目结构](#项目结构)
- [技术栈](#技术栈)
- [贡献](#贡献)
- [许可证](#许可证)

## 📦安装

运行以下命令安装项目所需的依赖：`Nodejs：18.18.2` `.env`
```shell
npm install --legacy-peer-deps
```
or
```shell
npm run bootstrap
```

## 🔨使用

### 开发模式 
`React` + `JavaScripts` + `Vite`

### 打包
```shell
 npm run build
 ```

### 代码检查
```shell
npm run lint
```

### 预览
> 用于项目打包过后运行dist文件
```shell
npm run preview
```

## 🤝项目结构
```
+-- public  项目公共资源
    |   +-- *.svg 图标
    |   +-- *.png 图片
+-- src 开发中一般只关注这个文件夹
    |   +-- app 应用代码入口
            |   +-- assets 公共静态资源
            |   +-- component 公共组件
            |   +-- hooks 公共钩子函数
            |   +-- pages 页面
                    |   +-- MainPage 首页
                            |   +-- slice 进入首页后的路由、接口、状态切片
            |   +-- slice 登录api、主页状态管理
            +-- AppRouter 路由
            +-- constants.js 应用常量
    |   +-- locales i18n国际化配置相关代码
    |   +-- redux 全局状态管理配置
    |   +-- styles 全局主题配置
    |   +-- utils 工具（如：axios）
    |   +-- app 项目入口
    +-- entryPointFactory.jsx 全局装配入口
    +-- global.less 全局样式表
    +-- globalConstants.js 全局常量
    +-- main.jsx 路由、antd主题、i18n装配入口
+-- .eslintrc.cjs  eslint规则
+-- index.html  入口页面
+-- readme.md
+-- vite.config.js  构建配置文件
```

## ⌨️技术栈

- **编程语言**：JavaScript
- **框架/库**：
    - React.js ：用于构建用户界面的渐进式框架
    - react-redux ： 状态管理
    - react-router-dom ： 路由管理
    - Axios ：用于发送 HTTP 请求
    - antd ：Antd组件库
    - pro-components ：Antd重型组件库
    - i18next：国际化配置
    - ReactFlow ： 工作流组件库
    - monaco-editor ：代码编辑器-微软web
    - AntdV ：图表组件库
- **样式**：
    - CSS ：基础样式
    - Less ：增强 CSS 的功能
    - Style-components ： CSS in JS 用于统一项目样式,简化项目结构
- **构建工具**：
    - Vite ：模块打包器
    - Babel ：JavaScript 编译器
- **版本控制**：Git

