Code Monkey home page Code Monkey logo

ianko.ti-loki's Introduction

Ti-Loki

GitHub version npm version bitHound Code

Overview

LokiJS is a document oriented database written in javascript, published under MIT License. Its purpose is to store javascript objects as documents in a nosql fashion and retrieve them with a similar mechanism.

LokiJS supports indexing and views and achieves high-performance through maintaining unique and binary indexes (indices) for data.

Main Features

  1. Fast performance NoSQL in-memory database, collections with unique index (1.1M ops/s) and binary-index (500k ops/s)
  2. Runs in multiple environments (browser, node, titanium)
  3. Dynamic Views for fast access of data subsets
  4. Built-in persistence adapters, and the ability to support user-defined ones
  5. Changes API
  6. Joins

Installation

Using NPM:

npm install ti-loki --save

Using gitTio:

gittio install ti-loki

Or download the latest zip file and place it in the root of your project. Add the module in the tiapp.xml:

<module platform="commonjs">ti-loki</module>

Usage

Require:

var Loki = require('ti-loki');

Creating a database:

var db = new Loki('example.db');

Add a collection:

var users = db.addCollection('users');

Insert documents:

users.insert({
	name: 'Odin',
	age: 50,
	address: 'Asgard'
});

// alternatively, insert array of documents
users.insert([{ name: 'Thor', age: 35}, { name: 'Loki', age: 30}]);

Simple find query:

var results = users.find({ age: {'$gte': 35} });

var odin = users.findOne({ name:'Odin' });

Simple where query:

var results = users.where(function(obj) {
	return (obj.age >= 35);
});

Simple Chaining:

var results = users.chain().find({ age: {'$gte': 35} }).simplesort('name').data();

Simple named transform:

users.addTransform('progeny', [
  {
    type: 'find',
    value: {
      'age': {'$lte': 40}
    }
  }
]);

var results = users.chain('progeny').data();

Simple Dynamic View:

var pview = users.addDynamicView('progeny');

pview.applyFind({
	'age': {'$lte': 40}
});

pview.applySimpleSort('name');

var results = pview.data();

To complete documentation, please visit Loki and documentation.

ianko.ti-loki's People

Contributors

ianko avatar

Watchers

James Cloos avatar Brenton House avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.