https://github.com/surveyjs/survey-library
Free JavaScript form builder library with integration for React, Angular, Vue, jQuery, and Knockout.
https://github.com/surveyjs/survey-library
angular dynamic-form-builder form form-builder forms javascript jquery json knockoutjs questionnaire quiz react reactjs survey surveyjs surveys typescript vue vue3 web-forms
Last synced: 6 days ago
JSON representation
Free JavaScript form builder library with integration for React, Angular, Vue, jQuery, and Knockout.
- Host: GitHub
- URL: https://github.com/surveyjs/survey-library
- Owner: surveyjs
- License: mit
- Created: 2015-08-14T08:53:22.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-04-05T10:43:18.000Z (9 days ago)
- Last Synced: 2025-04-05T18:03:14.919Z (9 days ago)
- Topics: angular, dynamic-form-builder, form, form-builder, forms, javascript, jquery, json, knockoutjs, questionnaire, quiz, react, reactjs, survey, surveyjs, surveys, typescript, vue, vue3, web-forms
- Language: TypeScript
- Homepage: https://surveyjs.io/form-library
- Size: 170 MB
- Stars: 4,371
- Watchers: 70
- Forks: 855
- Open Issues: 540
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Support: docs/supported-browsers.md
Awesome Lists containing this project
- best-of-react - GitHub - 11% open · ⏱️ 06.06.2024): (Input Components)
- best-of-react - GitHub - 11% open · ⏱️ 06.06.2024): (Input Components)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- awesome-react - surveyjs - The advanced Survey and Form library.  (UI Components / Form Components)
- awesome-repositories - surveyjs/survey-library - Free JavaScript form builder library with integration for React, Angular, Vue, jQuery, and Knockout. (TypeScript)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- fucking-awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- best-of-react - GitHub - 11% open · ⏱️ 06.06.2024): (Input Components)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- awesome-react-components - surveyjs - The advanced Survey and Form library (Code Design / Form Logic)
- awesome-starred - surveyjs/survey-library - Free JavaScript form builder library with integration for React, Angular, Vue, jQuery, and Knockout. (angular)
README

[](https://dev.azure.com/SurveyJS/SurveyJS%20Integration%20Tests/_build/latest?definitionId=7&branchName=master)
[](LICENSE)
![]()
![]()
![]()
![]()
# SurveyJS Form LibrarySurveyJS Form Library is a free to use MIT-licensed client-side component that allows you to render dynamic JSON-based forms in any JavaScript application, collect responses, and send all form submission data to a database of your choice. You can use it for multi-page forms of any length and complexity, pop-up surveys, quizzes, scored surveys, calculator forms, and more. SurveyJS Form Library has **native support for React, Angular, Vue, and Knockout;** jQuery is supported via a wrapper over the Knockout version. The library interacts with the server using JSON objects—for both form metadata, also known as form JSON schemas, and results. The [SurveyJS product family](https://surveyjs.io/) also includes a robust [form builder library](https://surveyjs.io/survey-creator/documentation/overview) that automatically generates form configuration files in JSON format. The form builder features a drag-and-drop UI, CSS Theme Editor, and GUI for conditional logic and form branching.
Documentation
·
Roadmap
·
View Demos
·
Generate JSON form
·
Report Bug
·
https://github.com/surveyjs/survey-library/assets/102306951/844563b2-c7c3-400c-962f-bcdbe7274d55
## Features
- It's suitable for multi-page forms, quizzes, scored surveys, calculator forms, and survey pop-ups
- Integration with React, Angular, Vue, jQuery, and Knockout
- [Compatible with any server & database](https://surveyjs.io/documentation/backend-integration)
- [Integration examples for PHP, ASP.NET Core, and NodeJS](https://surveyjs.io/backend-integration/examples)
- [All data is stored on your own servers](https://surveyjs.io/form-library/documentation/how-to-store-survey-results); therefore, there are no limits on the number of forms, submissions, and file uploads
- 20+ accessible input types, panels for question grouping, dynamic questions with a duplicate group option
- [Input validation](https://surveyjs.io/form-library/documentation/data-validation), partial submits & auto-save, lazy loading, load choices from web services
- Custom input fields
- Carry forward responses, text piping, autocomplete
- Integration with 3rd-party libraries and payment systems
- Support for webhooks
- Expression language (Built-in & Custom Functions), data aggregation within a form
- TypeScript support
- [Auto-localization and multi-locale surveys](https://surveyjs.io/form-library/documentation/survey-localization), support for RTL languages
- [Weekly updates](https://surveyjs.io/stay-updated/release-notes)
- [120+ starter demos & tutorials](https://surveyjs.io/form-library/examples/overview)
- Community-supported UI localization to 50+ languages
- Built-in themes and CSS customization
- e-Signature field
- Image capture
- All popular types of form navigation## Get Started
- [Angular](https://surveyjs.io/Documentation/Library?id=get-started-angular)
- [React](https://surveyjs.io/Documentation/Library?id=get-started-react)
- [Vue](https://surveyjs.io/Documentation/Library?id=get-started-vue)
- [HTML/CSS/JavaScript](https://surveyjs.io/form-library/documentation/get-started-html-css-javascript)## Resources
- [Website](https://surveyjs.io/)
- [Documentation](https://surveyjs.io/form-library/documentation/overview)
- [Starter Demos](https://surveyjs.io/form-library/examples/overview)
- [What's New](https://surveyjs.io/stay-updated/major-updates/2023)## SurveyJS Product Family
- [**Form Library**](https://surveyjs.io/form-library/documentation/overview) - A free and open-source MIT-licensed JavaScript library that renders dynamic JSON-based forms in your web application, and collects responses.
- [**Survey Creator**](https://surveyjs.io/survey-creator/documentation/overview) - A self-hosted drag-and-drop form builder that automatically generates JSON definition (schemas) of your forms in real time. Try out a [free full-featured demo](https://surveyjs.io/create-free-survey) to evaluate its capabilities.
- [**Dashboard**](https://surveyjs.io/dashboard/documentation/overview) - Simplifies survey data visualization and analysis with interactive and customizable charts and tables.
- [**PDF Generator**](https://surveyjs.io/pdf-generator/documentation/overview) - An open-source JavaScript library that renders SurveyJS surveys and forms as PDF files in a browser. With PDF Generator you can save an unlimited number of custom-built forms to PDF (both editable and read-only).## Build the SurveyJS Form Library from Sources
1. [**Build the platform-independent part**](./packages/survey-core/README.md#survey-model-platform-independent-part)
2. **Build one of the UI packages**
- [Angular Form Library](./packages/survey-angular-ui/README.md#build-surveyjs-angular-form-library-from-sources)
- [React Form Library](./packages/survey-react-ui/README.md#build-surveyjs-react-form-library-from-sources)
- [Vue Form Library](./packages/survey-vue3-ui/README.md#build-surveyjs-vue-form-library-from-sources)
- [HTML/CSS/JS Form Library](./packages/survey-js-ui/README.md#build-surveyjs-form-library-ui-from-sources)## Licensing
SurveyJS Form Library is distributed under the [MIT license](https://github.com/surveyjs/survey-library/blob/master/LICENSE).