Git Product home page Git Product logo

mf0wzi / flutter_survey_js Goto Github PK

View Code? Open in Web Editor NEW

This project forked from goxiaoy/flutter_survey_js

0.0 0.0 0.0 48.57 MB

Flutter client library for parsing and display surveyjs.io survey

Home Page: https://goxiaoy.github.io/flutter_survey_js/

License: MIT License

Shell 0.02% JavaScript 10.01% Ruby 0.12% C++ 1.07% C 0.07% Objective-C 0.01% Kotlin 0.01% Dart 76.60% TypeScript 10.86% Swift 0.06% HTML 0.09% CMake 0.87% PEG.js 0.20%

flutter_survey_js's Introduction

flutter_survey_js

Flutter package for parsing and display surveyjs widgets

All these widgets and highly depend on reactive_forms

Live preview https://goxiaoy.github.io/flutter_survey_js/

IMPORTANT_NOTE

This package has not fully tested, use at your own risk

Supported widgets:

  • checkbox
  • tagbox
  • ranking
  • radiogroup
  • imagepicker
  • buttongroup
  • dropdown
  • matrixdropdown
  • matrixdynamic
  • matrix
  • expression
  • text
  • comment
  • multipletext
  • html
  • image
  • empty
  • file
  • rating
  • boolean
  • signaturepad
  • paneldynamic
  • panel

Supported validator:

  • numericvalidator
  • textvalidator
  • answercountvalidator
  • regexvalidator
  • emailvalidator
  • expressionvalidator

Getting Started

flutter pub add flutter_survey_js

Modify your main function

import 'package:flutter_survey_js/flutter_survey_js.dart' as s;
void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await s.initSurvey();
  runApp(
    ...
  );
}

Web:

add following script into web/index.html

<html>
  ...
  <body>
    <!-- Add this line -->
    <script src="assets/packages/flutter_survey_js_expression/assets/index.js"></script>

    <script src="main.dart.js" type="application/javascript"></script>
  </body>
</html>

usage:

import 'package:flutter_survey_js/flutter_survey_js.dart' as s;
...
const survey = {
  "questions": [
    {
      "type": "rating",
      "name": "satisfaction",
      "title": "How satisfied are you with the Product?",
      "mininumRateDescription": "Not Satisfied",
      "maximumRateDescription": "Completely satisfied"
    }
  ]
};
...
s.SurveyWidget(
  survey: s.surveyFromJson(survey),
  onChange: (v) {
    print(v);
  },
  onSubmit: (v) {
    print(v);
  },
)

Customize

s.SurveyConfiguration(
  unsupportedBuilder: ...,
  ...
  child: s.SurveyWidget(
    survey: s.surveyFromJson(survey),
    onChange: (v) {
      print(v);
    },
    onSubmit: (v) {
      print(v);
    },
  )
)

Development

Melos

Install

dart pub global activate melos

Bootstrap

dart pub global run melos bs

Test

Before you run test

  • Windows: dart pub global run melos run build_windows
  • Linux: dart pub global run melos run build_linux

dart pub global run melos run test

flutter_survey_js's People

Contributors

goxiaoy avatar chopindavid avatar laogao avatar vpdwivedi avatar jonestyler avatar

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.