SurveyJS is a modern way to add surveys and forms to your website. It has versions for Angular, jQuery, knockout, react and vue.
SurveyJS Library Documentation
SurveyJS Library Live Examples
Create your Survey or Form now
Survey Creator sources are here
Export to PDF sources are here
SurveyJS is the most feature-rich Survey / Form Library available at the current moment. It can be easily customized and extended to suit your needs.
- Text Question
- Radigroup Question
- Dropdown Question
- Checkboxes Question
- Boolean Question
- Matrix Question
- Matrix Rubric Question
- Matrix Dropdown Question
- Matrix Dynamic Question
- Multiple Text Question
- Rating Question
- Ranking Question
- Comment Question
- Html Question
- Files uploading Question
- Panel Container
- Panel Dynamic Question
- Expression Question
- Image Picker Question
- Support for third-party popular UI widgets. The custom widgets GitHub repo
You may create a very complex forms with a lot of pages, like this one.
- Change questions visibility using logical expressions
- Create custom functions to use it in expression
- Filter choices in checkbox, radiogroup and dropdown questions
- Filter rows and columns in matrix question
- Disabled/enabled questions based on logical expressions
- Questions value validation
- Seven built-in Themes
- Bootstrap support
- CSS styles customization
- API for adding new or changing existing HTML elements
- Render Questions in one line
- Markdown support
- Quiz creation
- Show survey or form in the popup window
- Display mode
- Custom navigation
- Sharing same data between questions
- go to the SurveyJS Library Site
- explore the live Examples
- and create a survey or form using Survey Creator
Install the library using npm.
Angular version:
npm install survey-angular
jQuery version:
npm install survey-jquery
Knockout version:
npm install survey-knockout
React version:
npm install survey-react
Vue version:
npm install survey-vue
Or use unpkg CDN:
- https://unpkg.com/survey-angular@{version-number}/survey.angular.min.js
- https://unpkg.com/survey-knockout@{version-number}/survey.ko.min.js
- https://unpkg.com/survey-react@{version-number}/survey.react.min.js
- https://unpkg.com/survey-jquery@{version-number}/survey.jquery.min.js
- https://unpkg.com/survey-vue@{version-number}/survey.vue.min.js
You find all versions/builds in the surveyjs/build repo.
Or dowload a version as zip file from Releases
If you want to import it in another script:
import * as Survey from "survey-jquery";
To build library yourself:
-
Clone the repo from GitHub
git clone https://github.com/surveyjs/survey-library.git cd survey-library
-
Acquire build dependencies. Make sure you have Node.js installed on your workstation. You need a version of Node.js greater than 6.0.0 and npm greater than 2.7.0. This is only needed to build surveyjs from sources.
npm install -g karma-cli npm install
-
Build the library
npm run build_prod
After that you should have the libraries (angular, jquery, knockout, react and vue) at 'packages' directory.
-
Run samples
npm start
This command will run local http server at the http://localhost:7777 You can open http://localhost:7777/examples/knockout to view KnockoutJS samples, http://localhost:7777/examples/react to view ReactJS samples and so on
-
Run unit tests
npm run test
This command will run unit tests using Karma