一飞开源,介绍创意、新奇、有趣、实用的开源应用、系统、软件、硬件及技术,一个探索、发现、分享、使用与互动交流的开源技术社区平台。致力于打造活力开源社区,共建开源新生态!
一、开源项目简介
XIAOJUSURVEY是一套轻量、安全的问卷系统,提供面向个人和企业的一站式产品级解决方案,快速满足各类线上调研场景。
系统已沉淀40+种题型,累积精选模板100+,适用于市场调研、客户满意度调研、在线考试、投票、报道、测评等众多场景。数据能力上,经过上亿量级打磨,沉淀了分题统计、交叉分析、多渠道分析等在线报表能力,快速满足专业化分析。
使用Apache-2.0开源协议
输入框分为两种,单行输入框和多行输入框。默认限制字数500字以内,均可自由设置字数区间,两个输入框题目可以随时切换。页面展示如下图所示:
输入框分为两种,单行输入框和多行输入框。默认限制字数500字以内,均可自由设置字数区间,两个输入框题目可以随时切换。页面展示如下图所示:
支持横向排列和纵向排列,选项还有很多高级配置:
下面我们来详细介绍一下。
支持直接切换单选题、多选题,及选项排列方式。
选中某一题后,无论该题选择了什么,都会跳转到指定的题目去;如果设置了无条件跳题,选项跳题将无法设置。
选项文案:选项的展示文本。
选项图:支持选项以图片形式展示,可直接上传图片。
上限:该选项最多可以被选择多少次。
选项后增添输入框:勾选这个功能,选项下方会出现一个输入框,通常用于选项中“其它”,要求答题者填写自己的答案。
默认选中第一项
选项随机排序:题目的选项将打乱顺序展示
注意:选项随机后,如需要指定部分选项不随机,可在选项后勾选“不随机”。
多选展示效果如下,和单选一样,也支持横向和纵向排列。
多选题的配置和单选题非常类似,这里主要说一些不同点。
多选题可以设置题目互斥,假设有A、B、C三个选项,A设置了互斥;当A已经选择了又选择B时,A会自动取消选择;多选题支持限制最多选择数和最少选择数,当用户的选择不满足条件时,会实时的给出错误提示。
判断题默认有两个选项,对和错,不能添加更多选项。效果如下:
用户可进行评分,评分方式为选择星级,效果如下:
投票题的配置与单选题类似,只是展示有所不同,会在每个选项下展示改项已有多少人选择,占多少比例。
如不想实时展示投票结果,可在「设置」——「投票配置」选择提交后展示或不展示。
(更多题型和题型高级功能将陆续开放...)
本次开源主要围绕问卷生命周期提供了完整的产品化能力:
问卷管理:创、编、投、收、数据分析
多样化题型:单行输入框、多行输入框、单项选择、多项选择、判断题、评分、投票
(更多题型将陆续开放。快速自定义题型)
用户管理:登录、注册、权限管理
数据安全:传输加密、脱敏等
(个人和企业用户均可快速构建特定领域的调研类解决方案。)
1、具备全面的综合性和专业性
制定了问卷标准化协议规范
领域标准保障概念互通,是全系统的基础和核心。基于实际业务经验,沉淀了两大类:
业务描述:问卷协议、题型协议
物料描述:题型物料协议,包含题型和设置器
制定了问卷UI/UX规范
设计语言是系统灵活性、一致性的基石,保障系统支撑的实际业务运转拥有极高的用户体验。包含两部分:
设计规范:灵活、降噪、统一
交互规范:遵循用户行为特征,遵循产品定位,遵循成熟的用户习惯
所见即所得,搭建渲染一致性高
实际业务使用上包含问卷生成和投放使用,即对于系统的搭建端和渲染端。我们将题型场景化设计,以满足一份问卷从加工生产到投放应用的高度一致。
题型物料化设计,自由定制扩展
题型是问卷最核心的组成部分,而题型可配置化能力决定了上层业务可扩展的场景以及系统自身可复用的场景。题型架构设计上,主打每一类题型拥有通用基础能力,每一种题型拥有原子化特性能力,并保障高度定制化。
合规建设沉淀积累,安全能力拓展性高
数据加密传输、敏感信息精细化检测、投票防刷等能力,保障问卷发布、数据回收链路安全性。
2、轻量化设计,快速接入、灵活扩展
产品级开源方案,快速产出一套调研流程
围绕问卷生命周期提供了完整的产品化能力,包含用户管理: 登录、注册、问卷权限,问卷管理: 创、编、投、收、数据分析,可快速构建特定领域的调研类解决方案。
问卷设计开箱即用,降低领域复杂度
问卷组成具有高灵活性,此业务特征带来问卷编辑能力的高复杂性设计。我们将问卷编辑划分为五大子领域,进行产品能力聚类,同时指导系统模块化设计和开发。基于模块编排和管理,能够开箱即用。
二次开发成本低,轻松定制专属调研系统
全系统设计原则基于协议标准化、功能模块化、管理配置化,并提供了一些列完整的文档和开发及扩展手册。
部署成本低,快速上线
前后端分离,提供Docker化方案,提供了完善的部署指导手册。
Web端:Vue2(Vue3版本24年上半年推出)+ ElementUI
Server端:Nestjs + MongoDB
架构的设计最终是为了场景可以快速扩展,基于工程底座,使用者能够专注于业务领域的深入。
B端:面向问卷管理者,专注于问卷管理、问卷投放和数据分析三大核心能力的建设。(当然实际场景中,还涉及样本、渠道等需要进一步建设的能力。)
C端:面向问卷使用者,专注于多端渲染、运行时和权限管控三大核心能力的建设。(多端即在PC、H5、APP、小程序等均可单独或嵌入应用。)
服务端:专注于API打造、安全能力 以及 数据资产 相关能力建设。
进一步,整个系统也关注如何布点来同企业其他系统可整合打通,如嵌入式、自定义推送等能力。
Node版本 >= 16.x, 查看环境准备指导
复制工程
访问一飞开源:https://code.exmay.com/ 下载
便于快速预览工程,对于正式项目需要使用方案二。
1、安装依赖
cd server
npm install
npm run local
服务运行依赖 mongodb-memory-server:
1、数据保存在内存中,重启服务会更新数据。
2、启动内存服务器新实例时,如果找不到MongoDB二进制文件会自动下载,因此首次可能需要一些时间。
方案二、(生产推荐)
项目使用MongoDB:MongoDB安装指导
启动和配置数据库,查看MongoDB启动
cd server
npm install
npm run dev
cd web
npm install
npm run serve
http://localhost:8080/management
创建并发布问卷。
http://localhost:8080/render/:surveyPath
访问一飞开源:https://code.exmay.com/