0.2.21 • Published 4 years ago

@memson/memson v0.2.21

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

memson

npm npm GitHub

NodeJS client of the memson API

Installing

$ npm install --save memson

Examples

Importing

const memson = require("memson");

or

const { memson } = require("memson");

Set up

const s = require("memson");

const memson = s.memson("demo.memson.co");

or

const { memson } = require("memson");

const memson = memson("demo.memson.co");

Database summary

memson.summary()
.then(response => console.log(response))
.catch(error => console.error(error));

Create a table

memson.create({
    "name": "orders",
    "columns": [
       {"name": "time", "type": "time"},
       {"name": "qty", "type": "int"},
       {"name": "price", "type": "float"}
    ],
    "recreate": true
})
.then(response => console.log(response))
.catch(error => console.error(error));

Insert data

memson.insert({
    "name": "orders", 
    "rows": [
        {"time": "00:00:00", "qty": 2, "price": 9.0},
        {"time": "00:30:09", "qty": 2, "price": 2.0},
        {"time": "01:45:01", "qty": 4, "price": 1.0},
        {"time": "12:10:33", "qty": 10, "price": 16.0},
        {"time": "16:00:09", "qty": 4, "price": 8.0},
        {"time": "22:00:00", "qty": 4, "price": 23.0},
        {"time": "22:31:49", "qty": 4, "price": 45.0},
        {"time": "22:59:19", "qty": 4, "price": 17.0},
    ]
})
.then(response => console.log(response))
.catch(error => console.error(error));

Query data

Check out in RunKit

Select from table

memson.query({
    "select": ["time", "qty", "price"],
    "from": "orders"
})
.then(response => console.log(response))
.catch(error => console.error(error));

Visualize data

memson.query({
    "select": ["time", "qty", "price"],
    "from": "orders"
})
.then(response => {
    response.visualize()
})
.catch(error => console.error(error));

Query table statistics

memson.query({
    select: [
        { max: "time" },
        { min: "time" },
        { min: "qty" },
        { max: "qty" },
        { min: "price" },
        { max: "price" }
    ],
    from: "orders"
})
.then(response => console.log(response))
.catch(error => console.error(error));

Slice the data into hour buckets

memson.query({
    select: { count: "price" },
    by: { bar: ["time", { time: [1, 0, 0] }] },
    from: "orders"
})
.then(response => console.log(response))
.catch(error => console.error(error));

Slice and group the quantity by bars of 2

memson.query({
    select: { count: "price" },
    by: { bar: ["qty", 2] },
   "from": "orders"
})
.then(response => console.log(response))
.catch(error => console.error(error));

Delete tables

memson.delete("orders")
.then(response => console.log(response))
.catch(error => console.error(error));

Docs

https://memson.github.io/memson-node/

License

memson is copyright (c) 2019-present memson, Inc.

memson is free software, licensed under the MIT. See the LICENSE file for more details.

0.2.21

4 years ago

0.2.2

4 years ago