sliceup

Node library for SliceUp API

Usage no npm install needed!

<script type="module">
  import sliceup from 'https://cdn.skypack.dev/sliceup';
</script>

README

Sliceup

npm npm GitHub

NodeJS client of the SliceUp API

Installing

$ npm install --save sliceup

Examples

Importing

const sliceup = require("sliceup");

or

const { Sliceup } = require("sliceup");

Set up

const s = require("sliceup");

const sliceup = s.Sliceup("demo.sliceup.co");

or

const { Sliceup } = require("sliceup");

const sliceup = Sliceup("demo.sliceup.co");

Database summary

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

Create a table

sliceup.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

sliceup.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

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

Visualize data

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

Query table statistics

sliceup.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

sliceup.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

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

Delete tables

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

Docs

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

License

Sliceup is copyright (c) 2019-present SliceUp, Inc.

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