1.1.1 • Published 5 years ago

selfup-rejs v1.1.1

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

Selfup - Rejs

File based database! Built for developer freedom. Geared for NodeBots/IoT

Event Based Key Value Store:

Made to store hardware data on the filesystem!

Installation:

npm install selfup-rejs --save

Warning

This was built with node v14.4.0

Ensure your data is safe and not in version control:

echo 'selfup-rejs/*' >> .gitignore

Load package:

const Rejs = require('selfup-rejs');
const rejs = new Rejs();

Official DOCS:

Documentation: right here!

Example Use Case Repos:

Raspberry Pi

NodeBots/JohnnyFive and logging event data: Repo

Arduino

NodeBots/JohnnyFive and logging event data: Repo

Video on how to use selfup-rejs:

Link to Youtube Vid

How to Use:

Using RESTful verbs to help explain from a high level what is happening.

This is not a server.

This is a database that writes and reads files on the server.

Verbs/Methods

  • (POST) Create a table: rejs.createTable('tablename')
  • (POST) Create Multiple Tables: rejs.createTables('one', 'two', 'three')
  • (POST) Add data to table: rejs.newData('tablename', dataObject)
  • (POST) Add data to Multiple Tables:
rejs.newDatas(
  ['firstTable', { test: 'data' }],
  ['secondTable', { test: 'data' }],
  ['thirdTable', { test: 'data' }],
);
  • (DELETE) Delete data by ID in a table: rejs.deleteById('tablename', '2')
  • (DELETE) Drop a table: rejs.dropTable('tablename')
  • (DELETE) Multi-Table Drop: rejs.dropTables('firstTable', 'secondTable')
  • (PUT) Replace/Overwrite a table: rejs.updateTable('tablename', dataObject)
  • (PUT) Replace/Overwrite Multiple tables:
rejs.updateTables(
  ['firstTable', { test: 'new data' }],
  ['secondTable', { test: 'new data' }],
  ['thirdTable', { test: 'new data' }],
);
  • (GET) Table Object Query: rejs.getTable('tablename')
  • (GET) Multi-Table Query: rejs.getTables('table', 'table2', 'table3')
  • (GET) Find by ID: rejs.findId('tablename', 'id')
  • (GET) Where/Select: rejs.where('tablename', 'any value in a flat object')

Potential use Cases:

JohnnyFive/NodeBots/IoT

  • Store temperature data over time
  • Store how many times a door has been opened
  • Store telemetry data
  • Store Data on a Raspberry Pi
  • Store Data on a server hooked up to an Arduino
  • Store Data on an Arduino Yun/BeagleBone/etc...
  • Many possibilities for IoT

Electron OSX/Windows Apps

  • Store file paths to load files needed on load
  • Store small notes for a twitter like notes app
  • Store image url's
  • Store any data that you need to persist from app shutdown back to open

VPS

  • Use it as a small DB for a low volume production app
  • Use it to get quickly set up, and then move on to Mongo/Postgres once your app is mature and MVP is proven

Test Coverage

To get 100% coverage:

If the selfup-rejs folder is in your directory:

npm install
rm -rf selfup-rejs

Then you can run:

./node_modules/.bin/istanbul cover _mocha

Now the selfup-rejs folder will be in your directory again!

npm.io

To run tests without coverage:

npm test

1.1.1

5 years ago

1.1.0

5 years ago

1.0.31

5 years ago

1.0.20

10 years ago

1.0.19

10 years ago

1.0.18

10 years ago

1.0.17

10 years ago

1.0.16

10 years ago

1.0.14

10 years ago

1.0.13

10 years ago

1.0.12

10 years ago

1.0.11

10 years ago

1.0.10

10 years ago

1.0.9

10 years ago

1.0.8

10 years ago

1.0.7

10 years ago

1.0.6

10 years ago

1.0.5

10 years ago

1.0.4

10 years ago

1.0.3

10 years ago

1.0.2

10 years ago

1.0.1

10 years ago

1.0.0

10 years ago