# bsin-app-scaffold
**Repository Path**: s11e-DAO/bsin-app-scaffold
## Basic Information
- **Project Name**: bsin-app-scaffold
- **Description**: Bsin-App Uni 是一个基于uni-app为开发者打造面向未来的跨终端开发框架,框架使用了最新技术栈Vite5、Vue3、TypeScript、Uni Mini Router、UnoCss 和 Wot-Design-UI,内置小程序开发基础组件和示例,如AI对话、微信授权登录、图片上传等。
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 17
- **Forks**: 0
- **Created**: 2025-02-21
- **Last Updated**: 2025-05-13
## Categories & Tags
**Categories**: cross-platform-mobiledev
**Tags**: None
## README
Bsin-App Uni 一个为开发者打造面向未来的跨终端开发框架
Bsin-App Uni 是一个基于uni-app为开发者打造面向未来的跨终端开发框架,框架使用了最新技术栈Vite5、Vue3、TypeScript、Uni Mini Router、UnoCss 和 Wot-Design-UI,内置小程序开发基础组件和示例,如AI对话、微信授权登录、图片上传等。
📓 文档地址
| H5 | IOS | 安卓 | 微信小程序 |
| --- | --- | ---- | ---------- |
| ✔️ | ✔️ | ✔️ | ✔️ |
## ☘️ 环境配置
- Node.js 18+
- Pnpm 9+
- Vue3 3.4+
- TypeScript 4.9+
## 项目目录结构
```
project-root/
├── mock/ # mock
├── src/ # 目录
│ ├── components/ #
│ │── layouts/ # 页面布局
│ ├── pages/ # tabBar页面
│ ├── utils/ # 工具函数
│ ├── services/ # API服务
│ │ └── api/ # api接口
│ │ └── request # service实例
│ │ └── index.ts # service导出文件
│ ├── static/ # 静态资源
│ │ ├── tabBar/ # tabBar图片资源
│ │ ├── images/ # 图片资源
│ │ ├── svg/ # svg资源
│ │ └── styles/ # 样式文件
│ ├── store/ # pinia 状态管理
│ ├── theme/ # 主题色相关配置
│ ├── types/ # ts类型导出
│ └── App.vue
│ └── main.ts # 应用入口
│ └── manifest.json 应用配置文件
│ └── pages.json 页面配置文件 - 无需手动修改 通过pages.config.ts 文件生成
│ └── uni.scss 全局scss 变量
│
├── package.json # 项目依赖配置
├── pages.config.ts # 项目依赖配置 - 利用uni-page 插件自动生成pages 无需手动修改pages.json配置文件
├── tsconfig.json # TypeScript配置
├── eslint.config.mjs # eslint配置
├── .eslintrc-auto-import.json # 自动导入防止eslint报错
├── prettier.config.mjs # prettier格式化配置
├── stylelint.config.mjs # stylelint 配置文件 - 检测css格式
├── .release-it.json # release-it 插件配置 版本更新自动化发布npm
├── commitlint.config.cjs # git 提交检测 配置
├── .env # 环境变量
├── uno.config.js # unocss 配置文件 实现 color-primary 取用 theme 文件夹下定义的主题色
├── .gitignore # Git忽略文件
└── README.md # 项目说明文档
```
### layout 页面布局
#### 基于 vite-plugin-uni-layouts 实现
src/layouts 文件夹下的 vue 文件都会自动生成一个布局,默认的布局文件名为 default ,路径 src/layouts/default.vue 。
如果需要修改使用的布局,可以通过 vue 文件内 route 代码块指定需要的布局,如下示例使用 demo 布局。
```
{
layout: 'demo',
style: {
navigationBarTitleText: '关于',
},
}
```
### 项目规范
#### 命名规范
- 页面命名规范
- 页面级别组件采取小驼峰命名
```
src/
├── pages/
│ ├── products/
│ │ ├── index.vue # 产品列表页
│ │ ├── detail.vue # 产品详情页
```
- 组件命名规范
- 组件采取大驼峰命名
```
src/
├── components/
│ ├── MyButton/
│ │ ├── index.vue # 组件
│ │ ├── type.ts # 组件的ts类型
```
#### Git 提交规范
提交信息必须符合以下规则:
- 必须包含类型(type)
- 必须包含主题(subject)
- 提交信息最大长度不超过 108 个字符
- Emoji 图标位于左侧
##### 提交类型说明
| 类型 | Emoji | 说明 | 示例 |
| -------- | ----- | -------------------------- | ------------------------------- |
| init | 🎉 | 初始化项目 | `🎉 init: 项目初始化` |
| feat | ✨ | 新增功能 | `✨ feat: 添加用户登录功能` |
| fix | 🐞 | 修复bug | `🐞 fix: 修复登录验证失败问题` |
| docs | 📃 | 文档变更 | `📃 docs: 更新 README 文档` |
| style | 🌈 | 代码格式(不改变代码逻辑) | `🌈 style: 调整代码缩进格式` |
| refactor | 🦄 | 代码重构 | `🦄 refactor: 重构用户认证模块` |
| perf | 🎈 | 性能优化 | `🎈 perf: 优化列表加载性能` |
| test | 🧪 | 测试相关 | `🧪 test: 添加登录模块测试` |
| build | 🔧 | 构建流程、依赖更改 | `🔧 build: 升级依赖版本` |
| ci | 🐎 | CI 配置变更 | `🐎 ci: 修改 Docker 配置` |
| chore | 🐳 | 构建过程或工具变更 | `🐳 chore: 更新 git hooks` |
| wip | 🔓️ | 开发中的提交 | `🔓️ wip: 用户管理功能开发中` |
| workflow | ⏳️ | 工作流改进 | `⏳️ workflow: 优化开发流程` |
| types | 🚙 | 类型定义修改 | `🚙 types: 更新接口类型定义` |
| versions | 🔖 | 版本相关变更 | `🔖 versions: 发布 v1.0.0 版本` |
| revert | ↩ | 回滚提交 | `↩ revert: 回滚到上一版本` |
##### 提交规则
1. **类型**:必须是上述类型之一
2. **主题**:
- 必须填写
- 简短精炼
- 清晰描述本次变更
##### 使用方式
1. **交互式提交**(推荐):
```bash
pnpm cz
```
2. **直接提交**:
```bash
git commit -m "🎉 init: 初始化项目"
```
##### 注意事项
- 不允许空的提交类型
- 不允许空的提交主题
- 不允许空的 issue 前缀
- 不允许自定义 issue 前缀
- 提交时会自动跳过 scope、body、breaking、footer 相关问题
##### 提交示例
```bash
🎉 init: 初始化项目基础架构
✨ feat: 新增用户登录功能
🐞 fix: 修复表单验证失败
📃 docs: 更新项目文档
```
##### 欢迎加入社区
