# oj-frontend **Repository Path**: chenchi1985/oj-frontend ## Basic Information - **Project Name**: oj-frontend - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-14 - **Last Updated**: 2025-11-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # hoj-vue-pc ## 技术栈 ### 1. 核心框架和工具 - **Vue 生态** - Vue 2.7.14 - Vuex 3.6.2 (状态管理) - Vue Router 3.5.4 (路由管理) - Vue-i18n (国际化解决方案) - **构建工具** - Vite 5.4.11 - ESLint (代码质量检查) - StyleLint (样式代码检查) - Prettier (代码格式化) ### 2. UI 组件库 - Element UI 2.15.3 (主要 UI 框架) - Muse UI 3.0.2 (辅助 UI 组件) - VXE Table 3.11.39 (表格组件) - VXE PC UI 3.3.46 (PC 组件库) ### 3. 功能组件和库 - **编辑器相关** - Mavon Editor (Markdown 编辑器) - CodeMirror (代码编辑器) - Highlight.js (代码高亮) - KaTeX (数学公式渲染) - **数据可视化** - ECharts (图表库) - Vue Calendar Heatmap (日历热图) - **工具库** - Axios (HTTP 请求) - Moment.js (时间处理) - Papa Parse (CSV 解析) - Vue-cropper (图片裁剪) ### 4. 样式和预处理器 - Less (CSS 预处理器) - Font Awesome 4.7.0 (图标库) ## Development Environment Requirements We recommend using Node.js version 14.21.3. If you wish to not disrupt your existing development environment, you can download precompiled binaries of Node.js and temporarily modify your environment variables to use this version. [Download Precompiled Binaries](https://nodejs.org/en/download/prebuilt-binaries) ## Project setup ``` npm install ``` ### Compiles and hot-reloads for development ``` npm run serve ``` ### Compiles and minifies for production ``` npm run build ``` ### Customize configuration See [Configuration Reference](https://cli.vuejs.org/config/). ## 项目结构 ### 主要目录说明 - **`docker/`**: docker 配置,打包脚本 - **`public/`**: 静态资源目录,不会被构建工具处理,入口页面index.html - **`src/`**: 项目源代码 - **`assets/`**: 静态资源文件,图片,字体等 - **`common/`**: 公共配置,常量,工具类 - **`api.js`**: 后端接口定义和封装,axios封装 - **`constants.js`**: 全局常量定义 - **`filters.js`**: 全局过滤器 - **`highlight.js`**: 代码高亮 - **`message.js`**: 全局消息通知 - **`storage.js`**: localStorage封装 - **`time.js`**: 时间处理,封装了moment.js - **`utils.js`**: 通用工具函数 - **`components/`**: 公共组件 - **`i18n/`**: 国际化配置,admin文件夹为管理后台的资源,oj为前台页面资源,主要语言:zh-CN.js,en-US.js - **`router/`**: 路由组件配置 - **`adminRoutes.js.js`**: 管理后台路由配置 - **`index.js`**: 路由入口文件 - **`ojRoutes.js`**: 前台页面路由配置 - **`store/`**: Vuex状态管理 - **`style/`**: 全局样式文件,使用了自定义的element-ui主题 - **`views/`**: 页面组件 - **`App.vue`**: 项目入口文件 - **`main.js`**: 项目主入口文件 ### 特殊文件说明 - **`.eslintrc.js`**: ESLint配置 - **`.prettierrc`**: Prettier格式化配置 - **`vite.config.js`**: Vite构建配置 - **`package.json`**: 项目依赖配置