当前位置: 首页 > news >正文

一套轻量、安全的问卷系统基座,提供面向个人和企业的一站式产品级解决方案

大家好,今天给大家分享的是一款轻量、安全的问卷系统基座。
XIAOJUSURVEY

XIAOJUSURVEY是一套轻量、安全的问卷系统基座,提供面向个人和企业的一站式产品级解决方案,快速满足各类线上调研场景。

内部系统已沉淀 40+种题型,累积精选模板 100+,适用于市场调研、客户满意度调研、在线考试、投票、报到、测评等众多场景。数据能力上,经过上亿量级打磨,沉淀了分题统计、交叉分析、多渠道分析等在线报表能力,快速满足专业化分析。

功能简介

  • 问卷管理:创、编、投、收、数据分析

  • 多样化题型:单行输入框、多行输入框、单项选择、多项选择、判断题、评分、投票、…

  • 用户管理:登录、注册、权限管理

  • 数据安全:传输加密、脱敏等

技术架构

Web 端:Vue3 + ElementPlus

Server 端:Nestjs + MongoDB
架构图

  • B端:面向问卷管理者,专注于问卷管理、问卷投放和数据分析三大核心能力的建设。(当然实际场景中,还涉及样本、渠道等需要进一步建设的能力。)

  • C端:面向问卷使用者,专注于多端渲染、运行时和权限管控三大核心能力的建设。(多端即在PC、H5、APP、小程序等均可单独或嵌入应用。)

  • 服务端:专注于API打造、安全能力 以及 数据资产 相关能力建设。

项目优势

一、具备全面的综合性和专业性

  • 制定了问卷标准化协议规范

领域标准保障概念互通,是全系统的基础和核心。基于实际业务经验,沉淀了两大类:

业务描述:问卷协议、题型协议
物料描述:题型物料协议,包含题型和设置器

  • 制定了问卷 UI/UX 规范

设计语言是系统灵活性、一致性的基石,保障系统支撑的实际业务运转拥有极高的用户体验。包含两部分:

设计规范:灵活、降噪、统一
交互规范:遵循用户行为特征,遵循产品定位,遵循成熟的用户习惯

  • 所见即所得,搭建渲染一致性高

实际业务使用上包含问卷生成和投放使用,即对于系统的搭建端和渲染端。我们将题型场景化设计,以满足一份问卷从加工生产到投放应用的高度一致。

  • 题型物料化设计,自由定制扩展

题型是问卷最核心的组成部分,而题型可配置化能力决定了上层业务可扩展的场景以及系统自身可复用的场景。 题型架构设计上,主打每一类题型拥有通用基础能力,每一种题型拥有原子化特性能力,并保障高度定制化。

  • 合规建设沉淀积累,安全能力拓展性高

数据加密传输、敏感信息精细化检测、投票防刷等能力,保障问卷发布、数据回收链路安全性。

二、轻量化设计,快速接入、灵活扩展

  • 产品级开源方案,快速产出一套调研流程

围绕问卷生命周期提供了完整的产品化能力,包含用户管理: 登录、注册、问卷权限,问卷管理: 创、编、投、收、数据分析,可快速构建特定领域的调研类解决方案。

  • 问卷设计开箱即用,降低领域复杂度

问卷组成具有高灵活性,此业务特征带来问卷编辑能力的高复杂性设计。我们将问卷编辑划分为五大子领域,进行产品能力聚类,同时指导系统模块化设计和开发。基于模块编排和管理,能够开箱即用。

  • 二次开发成本低,轻松定制专属调研系统

全系统设计原则基于协议标准化、功能模块化、管理配置化,并提供了一些列完整的文档和开发及扩展手册。

  • 部署成本低,快速上线

前后端分离,提供 Docker 化方案,提供了完善的部署指导手册。

工程部署

Node 版本 >= 18.x,
查看环境准备指导

复制工程

git clone git@github.com:didi/xiaoju-survey.git

服务端启动

方案一、快速启动,无需安装数据库

便于快速预览工程,对于正式项目需要使用方案二。

1、安装依赖
cd server
npm install
2、启动
npm run local

服务运行依赖 mongodb-memory-server:

1、数据保存在内存中,重启服务会更新数据。
2、启动内存服务器新实例时,如果找不到 MongoDB 二进制文件会自动下载,因此首次可能需要一些时间。

方案二、(生产推荐)
1、启动数据库

项目使用 MongoDB:MongoDB 安装指导

  • 配置数据库,查看MongoDB 配置

  • 启动本地数据库,查看MongoDB 启动

2、安装依赖
cd server
npm install
3、启动
npm run dev

前端启动

安装依赖
cd web
npm install
启动
npm run serve

访问

问卷管理端

http://localhost:8080/management

问卷投放端

创建并发布问卷。

http://localhost:8080/render/:surveyPath

项目地址

https://github.com/didi/xiaoju-survey

相关文章:

  • K-Means 算法详解
  • 游戏中的寻路算法研究
  • 解决内核模块加载使用-f参数无法加载的问题
  • 为什么要学Java?
  • Linux驱动开发(二)--字符设备驱动开发提升 LED驱动开发实验
  • 18个机器学习核心算法模型总结
  • 2025计算机毕业设计选题题目推荐-毕设题目汇总大全
  • 智慧校园综合管理系统:打造高效智慧的学校管理平台
  • 契约锁电子签章平台 add 远程命令执行漏洞复现(XVE-2023-23720)
  • 关于面试被面试官暴怼:“几年研究生白读” 的前因后果
  • React获取DOM节点
  • 【Android】基于webView打造富文本编辑器(H5)
  • 网络故障排查-TCP标志位
  • VB.net调用VC DLL(二)
  • AD域离线破解新思路:Trustroasting和TimeRoasting
  • JavaScript-如何实现克隆(clone)函数
  • Computed property XXX was assigned to but it has no setter
  • css布局,左右固定中间自适应实现
  • ES6, React, Redux, Webpack写的一个爬 GitHub 的网页
  • HomeBrew常规使用教程
  • HTTP--网络协议分层,http历史(二)
  • HTTP中GET与POST的区别 99%的错误认识
  • Java 多线程编程之:notify 和 wait 用法
  • MyEclipse 8.0 GA 搭建 Struts2 + Spring2 + Hibernate3 (测试)
  • opencv python Meanshift 和 Camshift
  • rabbitmq延迟消息示例
  • Storybook 5.0正式发布:有史以来变化最大的版本\n
  • Vue 重置组件到初始状态
  • vue数据传递--我有特殊的实现技巧
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 翻译 | 老司机带你秒懂内存管理 - 第一部(共三部)
  • ​Linux·i2c驱动架构​
  • ​第20课 在Android Native开发中加入新的C++类
  • #Java第九次作业--输入输出流和文件操作
  • (¥1011)-(一千零一拾一元整)输出
  • (1)(1.9) MSP (version 4.2)
  • (145)光线追踪距离场柔和阴影
  • (7)svelte 教程: Props(属性)
  • (C++17) optional的使用
  • (react踩过的坑)antd 如何同时获取一个select 的value和 label值
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (附源码)ssm学生管理系统 毕业设计 141543
  • (黑客游戏)HackTheGame1.21 过关攻略
  • (黑马C++)L06 重载与继承
  • (六)DockerCompose安装与配置
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (转)linux 命令大全
  • (转)菜鸟学数据库(三)——存储过程
  • .Net Core中的内存缓存实现——Redis及MemoryCache(2个可选)方案的实现
  • .net dataexcel 脚本公式 函数源码
  • .net 后台导出excel ,word
  • .NET 中的轻量级线程安全
  • .NET/C# 的字符串暂存池
  • .NET高级面试指南专题十一【 设计模式介绍,为什么要用设计模式】
  • .Net中ListT 泛型转成DataTable、DataSet