SurveyJS Form Library is a JavaScript form library that renders dynamic, JSON-driven forms, surveys, quizzes, and multi-step wizards in React, Angular, Vue, and plain JavaScript applications.
The library solves the problem of building complex, data-driven forms without hardcoding UI structure. It works by defining form content, validation rules, conditional logic, and appearance through JSON form definitions. These definitions are rendered directly in the browser, where responses are collected and can be sent to any backend or database. Form definitions can be created manually, generated with AI, or built visually using an optional drag-and-drop form builder.
The tool suits teams building surveys, quizzes, scored assessments, multi-step data-entry forms, or calculator interfaces where form structure needs to be dynamic or configurable. It works across multiple frameworks through a modular architecture: a framework-independent core package handles form logic, validation, and calculations, while separate packages provide rendering for React, Angular, Vue 3, and vanilla JavaScript. This approach means you retain full control over form definitions and data storage without depending on a SurveyJS backend.
The project maintains active development with regular updates to core functionality and framework support. Work spans multiple areas including form rendering across different JavaScript frameworks, JSON schema handling, validation and conditional logic systems, and localization features. The codebase shows ongoing refinement of the package architecture that separates form logic from UI rendering.