Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mhio/casserole
:stew: Casserole - Cassandra object mapper for Node.js
https://github.com/mhio/casserole
cassandra nodejs npm-module objectmapper orm
Last synced: 22 days ago
JSON representation
:stew: Casserole - Cassandra object mapper for Node.js
- Host: GitHub
- URL: https://github.com/mhio/casserole
- Owner: mhio
- License: mit
- Created: 2017-09-20T22:59:46.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-01-04T21:50:19.000Z (about 2 years ago)
- Last Synced: 2024-11-18T16:16:53.567Z (3 months ago)
- Topics: cassandra, nodejs, npm-module, objectmapper, orm
- Language: JavaScript
- Homepage:
- Size: 954 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[Casserole](https://github.com/mhio/casserole)
-----------Cassandra JS Object Mapper. Build models and queries from JS objects. (WIP)
[API docco](doc/API.md)
### Install
```
yarn add casserole
npm i casserole --save
```### Usage
```
const { Client, Model } = require('casserole')let client = new Client('my_keyspace')
let CounterModel = Model.generate('Counter',{
id: { type:'uuid', primary: true },
name: 'string',
count: 'integer',
})async function go(){
// Connect to Cassandra and sync all Models (in the default ModelStore)
await client.connect()// Use MyModel
let myc = new CounterModel({ id: '12341234-1234-1234-1234-123412341234', name: 'kimmy', count: 5 })
let res = await myc.execSave()
console.log('Saved id "%s" result set:', mym.id, res)return client.disconnect()
}go()
```### Links
- [NPM `casserole`](https://www.npmjs.com/package/casserole)
- [Github mhio/casserole](https://github.com/mhio/casserole)
- [Cassandra](https://cassandra.apache.org/)
- [CQL](https://cassandra.apache.org/doc/latest/cql/index.html)
- [Node.js Driver 4.3](https://github.com/datastax/nodejs-driver)