# JomoUniAppX **Repository Path**: jopfroo/JomoUniAppX ## Basic Information - **Project Name**: JomoUniAppX - **Description**: 基于 UniApp X / UTS 的跨平台脚手架,一套代码可发布 App、微信小程序与 H5。技术栈含:pages.json 路由与自定义 TabBar、Swagger 接口生成、路由与 Alova 请求封装、Pinia 状态管理、UnoCSS/Tailwind、iconify/svg/iconfont 图标、ECharts、i18n 多语言、主题色与全局字号切换。可用于二次快速开发 - **Primary Language**: JavaScript - **License**: Artistic-2.0 - **Default Branch**: master - **Homepage**: https://web.jopfree.space/h5/ - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2026-08-01 - **Last Updated**: 2026-08-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # JomoUniX 基于 [uni-app x](https://doc.dcloud.net.cn/uni-app-x/) 的跨端管理端脚手架,对接 FastAPI OpenAPI,支持 App / H5 / 微信小程序。 ## 首次运行(必读) 用 HBuilderX 打开本目录前,请先在本目录执行: ```bash pnpm i pnpm dev ``` 再重新用 HBuilderX 运行到 App / 浏览器 / 微信小程序。 若编译提示 **「项目下缺少 pages.json 文件」**,说明尚未生成路由配置,请先执行上面的 `pnpm i` 和 `pnpm dev`,再重新运行项目。 `pnpm dev` 会依次生成:`pages.json`、OpenAPI 接口、图标字体。 ## 技术栈 | 能力 | 说明 | | ------- | --------------------------------------------------------- | | 语言 / 页面 | UTS + uvue(组合式 API) | | 路由 | 目录扫描生成 `pages.json`(`pnpm pages`),登录拦截与白名单 | | 请求 | `api/http` 封装;`baseUrl` 唯一源 `config/env.uts` | | OpenAPI | `pnpm openapi` 生成 `api/*.uts`,业务封装在 `api/service/` | | 样式 | UnoCSS 原子类 + 主题 tokens(浅/深色) | | 图标 | Iconify → 本地 svgfont(`pnpm icons`) | | 图表 | `e-chart`(ECharts) | | 国际化 | lime-i18n;文案按模块 `i18n/modules/*.uts`,语言聚合 `i18n/locales/` | | 状态 | `store/user.uts`、`store/app.uts`(主题 / 深色) | ## 常用命令 ```bash pnpm install pnpm pages # 扫描 pages* 生成 pages.json pnpm openapi # 从 env 基址拉取 openapi.json 并生成接口 pnpm icons # 生成图标字体 pnpm dev # 开发辅助(pages → api → icons) ``` 增减页面后执行 `pnpm pages`(或 `pnpm dev`)刷新 `pages.json`。 ## 目录要点 - `config/env.uts` — 请求基址(勿在页面展示主机地址) - `i18n/modules/` — 分模块文案(`zh` / `en` 同文件) - `pages/` — Tab:首页、我的 - `pages-sys/` — 登录、个人中心、设置、关于等 - `pages-biz/` — 业务分包(如项目管理) - `pages-test/` — 技术栈演示入口(我的 → 技术栈演示) ## 约定摘要 - 全局名称使用 `$t('app.name')` / `i18n.global.t('app.name')` - `uni.setBackgroundColor` 仅 `#ifdef APP` - 登录 Logo:`/static/logo/logo.png`