Repolode
didi

didi/xiaoju-survey

Open-source survey and form builder for creating questionnaires, exams, polls and quizzes, with online data analysis and export.

Open-source alternative to:SurveyMonkeyGoogle FormsTypeform

Stars
3,802
Forks
518
Open issues
48
Last commit
22 days ago

What is it?

XIAOJUSURVEY is a survey system aimed at both enterprises and individuals, used to build questionnaires, exams, assessments and complex forms for online research. It includes more than 40 question types and a library of prebuilt templates, covering use cases such as market research, customer satisfaction surveys, online exams and voting.

On the data side, it offers per-question statistics, cross analysis and multi-channel analysis, along with data export and management of collected responses. Surveys support display and jump logic, option and question references, custom theming, and an AI option that generates a survey from a conversational prompt through a connected LLM.

The web admin is built with Vue 3 and Element Plus, the server uses NestJS with MongoDB, and a React Native SDK embeds small surveys in other apps. Docker deployment is supported, with slim and full images.

Key features

  • 01Supports more than 40 question types, including text input, selection, rating, voting and file upload.
  • 02Logic rules for display, jumps, and option or question references.
  • 03Per-question statistics, cross analysis and data export.
  • 04AI-assisted survey generation from a conversational prompt via an LLM.
  • 05Role-based permissions and team workspaces.
  • 06Custom hooks for pushing data and messages to external systems.
  • 07Embeddable survey SDK for multiple client platforms.

Use cases

  • Running customer satisfaction or market research surveys inside a company.
  • Hosting online exams, quizzes or assessments with scored results.
  • Collecting votes or registrations with anti-spam and publish review controls.
  • Embedding short surveys into an existing mobile or web product.

Quick start

  1. 1

    Install server dependencies

    cd server && npm install
  2. 2

    Start the server locally

    cd server && npm run local
  3. 3

    Install web dependencies

    cd web && npm install
  4. 4

    Start the web front end, then open http://localhost:8080/management

    cd web && npm run serve

Things to know

  • Requires Node.js 18 or newer and a MongoDB backend.
  • Local setup spans two separate projects (server and web) that must both be running.

In collections

Topics

FAQ

What is xiaoju-survey?
Open-source survey and form builder for creating questionnaires, exams, polls and quizzes, with online data analysis and export. XIAOJUSURVEY is a survey system aimed at both enterprises and individuals, used to build questionnaires, exams, assessments and complex forms for online research. It includes more than 40 question types and a library of prebuilt templates, covering use cases such as market research, customer satisfaction surveys, online exams and voting.
Is xiaoju-survey free to use? What license does it have?
xiaoju-survey is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
Is xiaoju-survey still maintained?
Actively maintained. The last commit to xiaoju-survey was on Oct 16, 2026.
What can I use xiaoju-survey for?
Running customer satisfaction or market research surveys inside a company. Hosting online exams, quizzes or assessments with scored results. Collecting votes or registrations with anti-spam and publish review controls. Embedding short surveys into an existing mobile or web product.
How do I install xiaoju-survey?
Install server dependencies: cd server && npm install Start the server locally: cd server && npm run local Install web dependencies: cd web && npm install Start the web front end, then open http://localhost:8080/management: cd web && npm run serve
Where can I get xiaoju-survey?
The source code and installation instructions are on GitHub: https://github.com/didi/xiaoju-survey

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects