An open-source JavaScript library for building dynamic, JSON-based forms and surveys with native React, Angular, and Vue support.
SurveyJS is an open-source JavaScript form builder library that allows developers to create dynamic, JSON-based forms, surveys, and multi-step wizards. It solves the problem of building complex, interactive forms that work across different JavaScript frameworks while ensuring data is stored on the user's own servers.
Frontend developers building form-heavy applications, surveys, or quizzes in React, Angular, Vue, or plain JavaScript who need a flexible, self-hosted solution.
Developers choose SurveyJS for its native multi-framework support, JSON-driven architecture, and the ability to fully self-host data without submission limits, offering greater control and privacy compared to cloud-based form services.
SurveyJS is an open-source JavaScript form builder library that allows developers to create dynamic forms, multi-step form wizards, and survey applications. It supports React, Angular, and Vue.js (Vue 3), and can also be used in applications built with plain JavaScript.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Native integration with React, Angular, Vue, and more reduces framework-specific work, as highlighted in the README's support for multiple JavaScript ecosystems.
Forms are defined and handled as JSON objects, enabling dynamic generation and seamless server integration, which simplifies backend communication and storage.
Includes over 20 input types, validation, auto-save, localization for 50+ languages, and advanced functionalities like expression language and data aggregation.
All submissions and file uploads are stored on your own servers with no limits, ensuring privacy and control, as emphasized in the documentation.
Creating forms requires manual JSON configuration, which can be steep for developers unfamiliar with the schema structure, despite the availability of a separate form builder tool.
The extensive features and multi-framework support may lead to a larger JavaScript bundle, potentially affecting load times for simple or performance-critical applications.
Building from sources involves multiple steps for different UI packages, as detailed in the README, which can be cumbersome for quick integration compared to simpler alternatives.