Skip to content

0PEIN0/jslizer

Repository files navigation

Jslizer Library Project

npm version License: MIT

Project overview

A library to perform automated form validation, api calls, form error bindings. All from json definitions. So that those pesky if/else checks for a set of data is no longer needed. Currently supports only Angular 1 and VueJS 2 is supported. Basically this library combines the functionality of Joi and axios libraries in seamless manner.

Next set of project goals

  • Provide a default angular service and controller in core factory. Sample implementation can be found in DefaultVueController class.
  • Support ReactJS 16.2.0 framework in Jslizer library.
  • Support for different types of payload like application/json, multipart/form-data content-type support.
  • Provide Date object support in core.
  • Provide File object support in core.
  • Provide UUID object support in core.
  • Provide ChoiceField object support in core.
  • Add success message binding support.
  • Add support for auto type conversion.
  • Add support custom validation method for primitive type properties.
  • Add support to download files from server.
  • Write Jslizer library usage documentation for Angular 1 framework.
  • Write Jslizer library usage documentation for VueJS 2 library.
  • Add support for schema definition inheritance. Same validations and properties re-usability, for example: address, phone number etc. And custom error message should be same. It means there should be 1 declaration of definitions and usage extends everywhere else.
  • Pre-defined schema property definition templates. That means a particular property definition template can be used over and over again by choosing to extend them or not.
  • Generate component for VueJS 2.
  • Generate HTML for Angular 1 along with provided CSS class and in-line CSS definition.
  • Provide pagination support for listing apis.
  • Write test cases while using Angular 1 framework.
  • Write test cases while using VueJS 2 library.
  • Write test cases while using ReactJS 16.2.0 framework.
  • Add support custom validation method for any type of property.
  • Error and success messages should be configurable from a web panel.
  • Schema should be browsable in a panel as a object tree.
  • Add pagination support in listing api calls.
  • Provide Regex object support in core.

Build configurations

  1. Nodejs 8.9.4.
  2. NPM 5.6.0.
  3. Webpack 3.11.0.
  4. Build output is in ES5.

Currently supports

  1. Raw javascript code.
  2. Vue 2.5.13.
  3. Angular 1 1.6.6.
  4. React 16.2.0

Other alternative projects that inspired this repository

  1. Joi by The hapi.js node framework.
  2. axios by axios.
  3. Another JSON Schema Validator by Evgeny Poberezkin.
  4. jsonschema by Tom de Grunt.
  5. Schema Validation for JavaScript by Nijiko Yonskai.
  6. validate.js by Nicklas Ansman Giertz.
  7. another-json-schema by nswbmw.
  8. restful.js by marmelab.
  9. Restangular by Martin Gontovnikas .
  10. SuperAgent by Sloth.
  11. Request - Simplified HTTP client by request.

About

Jslizer Library Project.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published