surveyjs/survey-library

Open-source JavaScript form library for React, Angular, Vue, and plain JavaScript. Render dynamic JSON-driven forms, multi-step form wizards, surveys,...

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 47 minutes ago
Added to GitGenius on September 14th, 2026
Created on August 14th, 2015
Open Issues & Pull Requests: 474 (+0)
GitHub issues: Enabled
Number of forks: 926
Total Stargazers: 4,877 (+0)
Total Subscribers: 71 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 5.3 hours
Mean response time: 43.5 days
90th percentile: 4.4 days
Tracked items: 1,485

Most active contributors

Sign in to see contributor activity.

How this project is maintained

About 3% of issues opened in the past year have never received a reply. 74% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Work labelled "v3.0" is answered fastest, typically in under an hour, while "API change" waits about 24 hours. 43% of tracked open issues have had no activity in three months. 89% of issues opened in the past year have been closed, leaving a working backlog.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 155
New in 7 days: 18
Closed in 7 days: 17
Avg open age: 615 days
Stale 30+ days: 127
Stale 90+ days: 106

Recent activity

Opened in 7 days: 18
Closed in 7 days: 17
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • user issue (726)
  • bug (653)
  • enhancement (320)
  • question (228)
  • v2.0 (180)
  • v3.0 (74)
  • v1 (71)
  • API change (47)

Detailed Description

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.