UNPKG

fly-json-odm

Version:

An Object Document Mapper to handle JSON on the fly for NodeJS or Browser

77 lines (63 loc) 3.13 kB
# fly-json-odm [![NPM](https://nodei.co/npm/fly-json-odm.png?downloads=true&downloadRank=true&stars=true)](https://nodei.co/npm/fly-json-odm/) [![js-semistandard-style](https://raw.githubusercontent.com/standard/semistandard/master/badge.svg)](https://github.com/standard/semistandard) [![npm version](https://img.shields.io/npm/v/fly-json-odm.svg?style=flat-square)](https://www.npmjs.org/package/fly-json-odm) [![CircleCI](https://dl.circleci.com/status-badge/img/gh/aalfiann/fly-json-odm/tree/master.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/aalfiann/fly-json-odm/tree/master) [![Known Vulnerabilities](https://snyk.io//test/github/aalfiann/fly-json-odm/badge.svg?targetFile=package.json)](https://snyk.io//test/github/aalfiann/fly-json-odm?targetFile=package.json) ![License](https://img.shields.io/npm/l/fly-json-odm) ![NPM download/month](https://img.shields.io/npm/dm/fly-json-odm.svg) ![NPM download total](https://img.shields.io/npm/dt/fly-json-odm.svg) [![](https://data.jsdelivr.com/v1/package/npm/fly-json-odm/badge)](https://www.jsdelivr.com/package/npm/fly-json-odm) An Object Document Mapper to handle JSON on the fly for NodeJS or Browser. `fly-json-odm` is the ODM library to handle JSON directly on the fly like `NOSQL` does. You are able to make manipulation of JSON like ORM. For example is to do `Insert`, `Read`, `Update`, `Modify`, `Delete`, `Join`, `Query`, `Transform`, `Fuzzy` and `Mixin`. ### Install using NPM ```bash $ npm install fly-json-odm ``` **Or simply use in Browser with CDN** ```html <!-- Always get the latest version --> <!-- Not recommended for production sites! --> <script src="https://cdn.jsdelivr.net/npm/fly-json-odm/dist/flyjson.min.js"></script> <!-- Get minor updates and patch fixes within a major version --> <script src="https://cdn.jsdelivr.net/npm/fly-json-odm@1/dist/flyjson.min.js"></script> <!-- Get patch fixes within a minor version --> <script src="https://cdn.jsdelivr.net/npm/fly-json-odm@1.22/dist/flyjson.min.js"></script> <!-- Get a specific version --> <!-- Recommended for production sites! --> <script src="https://cdn.jsdelivr.net/npm/fly-json-odm@1.22.0/dist/flyjson.min.js"></script> ``` ### Usage ```javascript const FlyJson = require('fly-json-odm'); // in browser doesn't need this line var nosql = new FlyJson(); // example data json var data = [ {user_id:1,name:'budi',age:10}, {user_id:5,name:'wawan',age:20}, {user_id:3,name:'tono',age:30} ]; // Synchronous var result = nosql.set(data) .where('age', '>', 10) .orderBy('age', true) .exec(); console.log(result); // Asynchronous nosql.promisify((builder) => {return builder}).then((table) => { var result = table.set(data) .where('name', '==', 'wawan') .exec(); console.log(result); }); ``` **Note:** - Structure Data Table JSON must be an `Array` which is contains `Object` like example above. - `fly-json-odm` is synchronous as default. ### Documentation Documentation is available in our [Wiki](https://github.com/aalfiann/fly-json-odm/wiki). ### Unit Test If you want to play around with unit test. ```bash $ npm test ```