Compare commits
16 Commits
main
...
feature/wo
Author | SHA1 | Date | |
---|---|---|---|
|
ff0b2487bb | ||
|
c4e8b8e466 | ||
|
47c8a797a5 | ||
|
23e69988e1 | ||
|
56b0ba2a09 | ||
|
a5630f0f63 | ||
|
2ca95d5703 | ||
|
52c70198d9 | ||
|
26becfe3d4 | ||
|
1eb0fa31b5 | ||
|
5188d3d795 | ||
|
49635fcf5a | ||
|
3345960351 | ||
|
04766db716 | ||
|
bf9a423064 | ||
|
c46176e39e |
39
.github/workflows/codecov.yml
vendored
Normal file
39
.github/workflows/codecov.yml
vendored
Normal file
@ -0,0 +1,39 @@
|
||||
# Unit Test Coverage Report
|
||||
name: Test Coverage
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- feature/workflow
|
||||
- develop
|
||||
- main
|
||||
- releases/**
|
||||
- feature/**
|
||||
paths:
|
||||
- server/**
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Coverage
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
|
||||
- name: Install dependencies
|
||||
run: cd server && npm install
|
||||
|
||||
- name: Run tests and collect coverage
|
||||
run: cd server && npm run test:cov
|
||||
|
||||
- name: Upload coverage to Codecov
|
||||
uses: codecov/codecov-action@v4
|
||||
env:
|
||||
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
34
.github/workflows/server-lint.yml
vendored
Normal file
34
.github/workflows/server-lint.yml
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
# Lint
|
||||
name: Server Lint
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- feature/workflow
|
||||
- develop
|
||||
- main
|
||||
- releases/**
|
||||
- feature/**
|
||||
paths:
|
||||
- server/**
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
|
||||
- name: Install dependencies
|
||||
run: cd server && npm install
|
||||
|
||||
- name: Lint
|
||||
run: cd server && npm run lint
|
34
.github/workflows/web-lint.yml
vendored
Normal file
34
.github/workflows/web-lint.yml
vendored
Normal file
@ -0,0 +1,34 @@
|
||||
# Lint
|
||||
name: Web Lint
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- feature/workflow
|
||||
- develop
|
||||
- main
|
||||
- releases/**
|
||||
- feature/**
|
||||
paths:
|
||||
- web/**
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: 20
|
||||
|
||||
- name: Install dependencies
|
||||
run: cd web && npm install
|
||||
|
||||
- name: Lint
|
||||
run: cd web && npm run lint
|
27
README.md
27
README.md
@ -28,6 +28,7 @@
|
||||
  系统已沉淀 40+种题型,累积精选模板 100+,适用于市场调研、客户满意度调研、在线考试、投票、报道、测评等众多场景。数据能力上,经过上亿量级打磨,沉淀了分题统计、交叉分析、多渠道分析等在线报表能力,快速满足专业化分析。
|
||||
|
||||
# 简介
|
||||
|
||||
本次开源主要围绕问卷生命周期提供了完整的产品化能力:
|
||||
|
||||
- 问卷管理:创、编、投、收、数据分析
|
||||
@ -47,25 +48,28 @@
|
||||
_**(个人和企业用户均可快速构建特定领域的调研类解决方案。)**_
|
||||
|
||||
# 技术
|
||||
|
||||
Web 端:Vue2(Vue3 版本 24 年上半年推出)+ ElementUI
|
||||
|
||||
Server 端:Nestjs + MongoDB
|
||||
|
||||
架构:[架构解读](https://xiaojusurvey.didi.cn/docs/next/document/%E8%AE%BE%E8%AE%A1%E5%8E%9F%E7%90%86/%E6%9E%B6%E6%9E%84)
|
||||
|
||||
|
||||
# 项目优势
|
||||
|
||||
**一、具备全面的综合性和专业性**
|
||||
|
||||
- [制定了问卷标准化协议规范](https://xiaojusurvey.didi.cn/docs/next/agreement/%E3%80%8A%E9%97%AE%E5%8D%B7Meta%E5%8D%8F%E8%AE%AE%E3%80%8B)
|
||||
|
||||
领域标准保障概念互通,是全系统的基础和核心。基于实际业务经验,沉淀了两大类:
|
||||
|
||||
- 业务描述:问卷协议、题型协议
|
||||
- 物料描述:题型物料协议,包含题型和设置器
|
||||
|
||||
- [制定了问卷 UI/UX 规范](https://xiaojusurvey.didi.cn/docs/next/design/%E3%80%8A%E8%AE%BE%E8%AE%A1%E8%A7%84%E8%8C%83%E3%80%8B)
|
||||
|
||||
设计语言是系统灵活性、一致性的基石,保障系统支撑的实际业务运转拥有极高的用户体验。包含两部分:
|
||||
|
||||
- 设计规范:灵活、降噪、统一
|
||||
- 交互规范:遵循用户行为特征,遵循产品定位,遵循成熟的用户习惯
|
||||
|
||||
@ -83,6 +87,7 @@ Server端:Nestjs + MongoDB
|
||||
数据加密传输、敏感信息精细化检测、投票防刷等能力,保障问卷发布、数据回收链路安全性。
|
||||
|
||||
**二、轻量化设计,快速接入、灵活扩展**
|
||||
|
||||
- [产品级开源方案,快速产出一套调研流程](https://xiaojusurvey.didi.cn/docs/next/document/%E4%BA%A7%E5%93%81%E6%89%8B%E5%86%8C/%E6%A6%82%E8%BF%B0)
|
||||
|
||||
围绕问卷生命周期提供了完整的产品化能力,包含用户管理: 登录、注册、问卷权限,问卷管理: 创、编、投、收、数据分析,可快速构建特定领域的调研类解决方案。
|
||||
@ -105,6 +110,7 @@ Node版本 >= 16.x,
|
||||
[查看环境准备指导](https://xiaojusurvey.didi.cn/docs/next/document/%E6%A6%82%E8%BF%B0/%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B)
|
||||
|
||||
复制工程
|
||||
|
||||
```shell
|
||||
git clone git@github.com:didi/xiaoju-survey.git
|
||||
```
|
||||
@ -112,15 +118,18 @@ git clone git@github.com:didi/xiaoju-survey.git
|
||||
## 服务端启动
|
||||
|
||||
### 方案一、快速启动,无需安装数据库
|
||||
|
||||
> _便于快速预览工程,对于正式项目需要使用方案二。_
|
||||
|
||||
#### 1、安装依赖
|
||||
|
||||
```shell
|
||||
cd server
|
||||
npm install
|
||||
```
|
||||
|
||||
#### 2、启动
|
||||
|
||||
```shell
|
||||
npm run local
|
||||
```
|
||||
@ -140,33 +149,41 @@ npm run local
|
||||
- 启动本地数据库,查看[MongoDB 启动](https://xiaojusurvey.didi.cn/docs/next/document/%E6%A6%82%E8%BF%B0/%E6%95%B0%E6%8D%AE%E5%BA%93#%E4%BA%94%E5%90%AF%E5%8A%A8)
|
||||
|
||||
#### 2、安装依赖
|
||||
|
||||
```shell
|
||||
cd server
|
||||
npm install
|
||||
```
|
||||
|
||||
#### 3、启动
|
||||
|
||||
```shell
|
||||
npm run dev
|
||||
```
|
||||
|
||||
## 前端启动
|
||||
|
||||
### 安装依赖
|
||||
|
||||
```shell
|
||||
cd web
|
||||
npm install
|
||||
```
|
||||
|
||||
### 启动
|
||||
|
||||
```shell
|
||||
npm run serve
|
||||
```
|
||||
|
||||
## 访问
|
||||
|
||||
### 问卷管理端
|
||||
|
||||
[http://localhost:8080/management](http://localhost:8080)
|
||||
|
||||
### 问卷投放端
|
||||
|
||||
创建并发布问卷。
|
||||
|
||||
[http://localhost:8080/render/:surveyPath](http://localhost:8080/render/:surveyPath)
|
||||
@ -182,21 +199,23 @@ npm run serve
|
||||
[<img src="https://img-hxy021.didistatic.com/static/starimg/img/iJUmLIHKV21700192846057.png" width="210" />](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=P61UJI_q8AzizyBLGOm-bUvzNrUnSQq-&authKey=yZFtL9biGB5yiIME3%2Bi%2Bf6XMOdTNiuf0pCIaviEEAIryySNzVy6LJ4xl7uHdEcrM&noverify=0&group_code=920623419)
|
||||
|
||||
## Star
|
||||
|
||||
如果该项目对你有帮助,star 一下 ❤️❤️❤️
|
||||
|
||||
[![Star History Chart](https://api.star-history.com/svg?repos=didi/xiaoju-survey&type=Date)](https://star-history.com/#didi/xiaoju-survey&Date)
|
||||
|
||||
## 记录
|
||||
|
||||
[谁在使用](https://github.com/didi/xiaoju-survey/issues/64)
|
||||
|
||||
## 贡献
|
||||
|
||||
[贡献者指南](https://xiaojusurvey.didi.cn/docs/next/share/%E7%94%9F%E6%80%81%E5%BB%BA%E8%AE%BE)
|
||||
|
||||
## Feature
|
||||
|
||||
[官方 Feature](https://github.com/didi/xiaoju-survey/issues/45)
|
||||
|
||||
## CHANGELOG
|
||||
[MAJOR CHANGELOG](https://github.com/didi/xiaoju-survey/issues/48)
|
||||
|
||||
## 分享
|
||||
[文章](https://github.com/didi/xiaoju-survey/issues)
|
||||
[MAJOR CHANGELOG](https://github.com/didi/xiaoju-survey/issues/48)
|
||||
|
@ -4,8 +4,8 @@
|
||||
"private": true,
|
||||
"type": "module",
|
||||
"scripts": {
|
||||
"serve": "vite",
|
||||
"dev": "vite",
|
||||
"serve": "npm run dev",
|
||||
"dev": "vite --open",
|
||||
"build": "run-p type-check \"build-only {@}\" --",
|
||||
"preview": "vite preview",
|
||||
"build-only": "vite build",
|
||||
@ -43,6 +43,7 @@
|
||||
"@vue/tsconfig": "^0.5.1",
|
||||
"eslint": "^8.49.0",
|
||||
"eslint-plugin-vue": "^9.17.0",
|
||||
"husky": "^9.0.11",
|
||||
"npm-run-all2": "^6.1.1",
|
||||
"prettier": "^3.0.3",
|
||||
"sass": "^1.72.0",
|
||||
@ -54,8 +55,19 @@
|
||||
"vite-plugin-virtual-mpa": "^1.11.0",
|
||||
"vue-tsc": "^1.8.27"
|
||||
},
|
||||
"husky": {
|
||||
"hooks": {
|
||||
"pre-commit": "lint-staged"
|
||||
}
|
||||
},
|
||||
"lint-staged": {
|
||||
"src/**/*.{.vue,.js,.jsx,.cjs,.mjs,.ts,.tsx,.cts,.mts}": [
|
||||
"prettier --write",
|
||||
"eslint --fix"
|
||||
]
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.21.0",
|
||||
"npm": ">=6.14.17"
|
||||
"node": ">=18.0.0",
|
||||
"npm": ">=8.6.0"
|
||||
}
|
||||
}
|
||||
|
@ -37,6 +37,7 @@ export default {
|
||||
},
|
||||
watch: {
|
||||
skinConf(value) {
|
||||
console.log(11111111)
|
||||
this.setSkin(value)
|
||||
}
|
||||
},
|
||||
|
Loading…
Reference in New Issue
Block a user