Giter VIP home page Giter VIP logo

surveyjs-nodejs's Introduction

Library

Build Status Software License Tested with TestCafe Issues Closed issues GitHub Release

SurveyJS Form Library

SurveyJS 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 also includes a robust form builder library 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 · Twitter


form-library.mp4

Features

Get Started

Resources

SurveyJS Product Family

  • Form Library - A free and open-source MIT-licensed JavaScript library that renders dynamic JSON-based forms in your web application, and collects responses.
  • Survey Creator - 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 to evaluate its capabilities.
  • Dashboard - Simplifies survey data visualization and analysis with interactive and customizable charts and tables.
  • PDF Generator - 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

The instructions below apply to SurveyJS Form Library for React, Knockout, jQuery, and Vue 2. If you are looking for instructions on how to build the library for Angular or Vue 3, refer to README files within the survey-angular-ui or survey-vue3-ui packages.

  1. Clone the repo

    git clone https://github.com/surveyjs/survey-library.git
    cd survey-library
  2. Install dependencies
    Make sure that you have Node.js v14 or later and a compatible npm version installed.

    npm install -g karma-cli
    npm install
  3. Build the platform-independent part and plugins

    npm run build_core
    npm run build-plugins
    
  4. Build the library

    npm run build
    

    You can find the built scripts and style sheets in folders under the build directory.

  5. Run test examples

    npm run serve
    

    This command runs a local HTTP server at http://localhost:7777/.

  6. Run unit tests

    npm run test
    

    The unit tests use Karma.

Licensing

SurveyJS Form Library is distributed under the MIT license.

surveyjs-nodejs's People

Contributors

andrewtelnov avatar dmitry-kurmanov avatar henritroyot avatar tsv2013 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

surveyjs-nodejs's Issues

problem the connection with surveyjs-node

Hi,
i have a problem the connection with surveyjs-node - create?accessKey=undefined&name=NewSurvey1623920289986 net::ERR_EMPTY_RESPONSE -
I can't connect the postgres database.
Could any of you help me?
Thank you all for your cooperation
Schermata 2021-06-17 alle 12 08 42

SurveyJS 1.0.17 breaks this repository

Are you requesting a feature, reporting a bug or ask a question?

Reporting a bug.

What is the current behavior?

When visiting the edit tab for any of the surveys, knockout.js breaks. As a result, surveys can no longer be edited or saved.

Provide the test code and the tested page URL (if applicable)

Tested page URL:

http://localhost:3000/editor.html?id=Product%20feedback%20survey&name=Product%20feedback%20survey

Stack trace on editor.html:

knockout-debug.js:3351 Uncaught TypeError: Unable to process binding "template: function (){return { name:'objecteditorproperty',afterRender:$parent.koAfterRender} }"
Message: Unable to process binding "click: function (){return $parent.changeActiveProperty($data) }"
Message: Illegal invocation
    at exports.setTimeout (main.js:7)
    at SurveyDropdownPropertyEditor.SurveyPropertyEditorBase.activate (propertyEditorBase.ts:273)
    at SurveyObjectProperty.set [as isActive] (objectProperty.ts:65)
    at ko.subscription.callback (objectEditor.ts:41)
    at Function.notifySubscribers (knockout-debug.js:1320)
    at Function.valueHasMutated (knockout-debug.js:1529)
    at SurveyObjectEditor.observable [as koActiveProperty] (knockout-debug.js:1495)
    at SurveyObjectEditor.changeActiveProperty (objectEditor.ts:69)
    at click (eval at createBindingsStringEvaluator (knockout-debug.js:2952), <anonymous>:3:73)
    at newValueAccessor (knockout-debug.js:4191)
exports.setTimeout @ main.js:7
SurveyPropertyEditorBase.activate @ propertyEditorBase.ts:273
set @ objectProperty.ts:65
(anonymous) @ objectEditor.ts:41
notifySubscribers @ knockout-debug.js:1320
valueHasMutated @ knockout-debug.js:1529
observable @ knockout-debug.js:1495
SurveyObjectEditor.changeActiveProperty @ objectEditor.ts:69
click @ VM353:3
newValueAccessor @ knockout-debug.js:4191
init @ knockout-debug.js:4201
init @ knockout-debug.js:4194
(anonymous) @ knockout-debug.js:3328
ignore @ knockout-debug.js:1461
(anonymous) @ knockout-debug.js:3327
arrayForEach @ knockout-debug.js:159
applyBindingsToNodeInternal @ knockout-debug.js:3313
applyBindingsToNodeAndDescendantsInternal @ knockout-debug.js:3193
ko.applyBindings @ knockout-debug.js:3404
(anonymous) @ knockout-debug.js:5263
invokeForEachNodeInContinuousRange @ knockout-debug.js:5214
activateBindingsOnContinuousNodeArray @ knockout-debug.js:5261
executeTemplate @ knockout-debug.js:5309
ko.dependentObservable.disposeWhen @ knockout-debug.js:5351
evaluateImmediate_CallReadThenEndDependencyDetection @ knockout-debug.js:2156
evaluateImmediate_CallReadWithDependencyDetection @ knockout-debug.js:2123
evaluateImmediate @ knockout-debug.js:2084
ko.computed.ko.dependentObservable @ knockout-debug.js:1944
ko.renderTemplate @ knockout-debug.js:5343
update @ knockout-debug.js:5478
ko.dependentObservable.disposeWhenNodeIsRemoved @ knockout-debug.js:3343
evaluateImmediate_CallReadThenEndDependencyDetection @ knockout-debug.js:2156
evaluateImmediate_CallReadWithDependencyDetection @ knockout-debug.js:2123
evaluateImmediate @ knockout-debug.js:2084
ko.computed.ko.dependentObservable @ knockout-debug.js:1944
(anonymous) @ knockout-debug.js:3341
arrayForEach @ knockout-debug.js:159
applyBindingsToNodeInternal @ knockout-debug.js:3313
applyBindingsToNodeAndDescendantsInternal @ knockout-debug.js:3193
ko.applyBindings @ knockout-debug.js:3404
(anonymous) @ knockout-debug.js:5263
invokeForEachNodeInContinuousRange @ knockout-debug.js:5214
activateBindingsOnContinuousNodeArray @ knockout-debug.js:5261
activateBindingsCallback @ knockout-debug.js:5387
ko.utils.setDomNodeChildrenFromArrayMapping @ knockout-debug.js:5757
ignore @ knockout-debug.js:1461
ko.dependentObservable.disposeWhenNodeIsRemoved @ knockout-debug.js:5408
evaluateImmediate_CallReadThenEndDependencyDetection @ knockout-debug.js:2156
evaluateImmediate_CallReadWithDependencyDetection @ knockout-debug.js:2123
evaluateImmediate @ knockout-debug.js:2084
evaluatePossiblyAsync @ knockout-debug.js:2049
notifySubscribers @ knockout-debug.js:1320
valueHasMutated @ knockout-debug.js:1529
observable @ knockout-debug.js:1495
SurveyObjectEditor.updateProperties @ objectEditor.ts:134
set @ objectEditor.ts:58
SurveyEditor.selectedObjectChanged @ editor.ts:1154
(anonymous) @ editor.ts:466
notifySubscribers @ knockout-debug.js:1320
valueHasMutated @ knockout-debug.js:1529
observable @ knockout-debug.js:1495
writeValueToProperty @ knockout-debug.js:2665
valueUpdateHandler @ knockout-debug.js:4850
dispatch @ jquery.js:4435
r.handle @ jquery.js:4121
trigger @ jquery.js:4350
(anonymous) @ jquery.js:4901
each @ jquery.js:374
each @ jquery.js:139
trigger @ jquery.js:4900
triggerEvent @ knockout-debug.js:456
(anonymous) @ knockout-debug.js:4543
ignore @ knockout-debug.js:1461
update @ knockout-debug.js:4520
ko.dependentObservable.disposeWhenNodeIsRemoved @ knockout-debug.js:3343
evaluateImmediate_CallReadThenEndDependencyDetection @ knockout-debug.js:2156
evaluateImmediate_CallReadWithDependencyDetection @ knockout-debug.js:2123
evaluateImmediate @ knockout-debug.js:2084
evaluatePossiblyAsync @ knockout-debug.js:2049
notifySubscribers @ knockout-debug.js:1320
valueHasMutated @ knockout-debug.js:1529
observable @ knockout-debug.js:1495
SurveyObjects.rebuild @ surveyObjects.ts:147
set @ surveyObjects.ts:23
SurveyEditor.initSurvey @ editor.ts:1405
SurveyEditor.applyBinding @ editor.ts:1207
SurveyEditor.render @ editor.ts:789
SurveyEditor @ editor.ts:586
(anonymous) @ editor.js:51

Specify your

  • browser: Chrome
  • browser version: 65
  • surveyjs platform (angular or react or jquery or knockout or vue): Knockout
  • surveyjs version: 1.0.17 (Most recent as of 4/17)

Thank you all again for making a great product. I would attempt a PR on this myself, but it looks like this break occurs deep in the library code. Hopefully I am mistaken. For future references, if there a webpage describing the changes between versions? Would be interested in keeping tabs on it.

delete survey functionality not working

Are you requesting a feature, reporting a bug or asking a question?

asking a question

What is the current behavior?

when I delete the survey, it popped out a box asking if I am sure to delete, I hit yes, then the survey didn't get deleted.

What is the expected behavior?

Survey should be deleted after the delete button is clicked.

How would you reproduce the current behavior (if this is a bug)?

By clicking on the delete button

Provide the test code and the tested page URL (if applicable)

Tested page URL:

Test code

your_code_here

Specify your

  • browser: firefox
  • browser version: Version 68.1.0esr
  • surveyjs platform (angular or react or jquery or knockout or vue): I only did git clone and npm start
  • surveyjs version:[email protected]

Bootstrap version

Hi there! Thanks for this awesome repo.

Is there a way I can use the Bootstrap version of SurveyJS for the whole application? For example, for survey.js I've added the line Survey.Survey.cssType = "bootstrap"; like they say in the docs, but that didn't seem to make any effect.

Docker build problem

"Build postgresql-db docker container via docker build -t postgresql-db . command in the docker/postgresql-db folder" - doesn't work. When running with "-t" docker reports error "docker build" requires exactly 1 argument.
I have removed that "-t" and can run this command from "docker" folder... not from docker/postgresql-db.
And still unable to build docker container.

How to retrieve and save survey result in mysql.

Dear Team,

I am following the current example (surveyjs-nodejs) I am able to connect and saved survey data into Database (MySQL) tables but when I try to run the survey using the run button against survey from the main page its doesn't load the form and showing me the message on page "There is no visible page or question in the survey."

URL: redirect me to below after click run
http://localhost:3000/survey.html?id=2

var model = new Survey.Model({ surveyId: surveyId, surveyPostId: surveyId });
model.css = css;
  window.survey = model;
  model.render("surveyElement");

Thanks in Advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.