Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
backbone-redis
Advanced tools
The project can be installed via NPM, or by cloning this repo into your project.
npm install backbone-redis
or
git clone git://github.com/sorensen/backbone-redis.git
var express = require('express'),
Redis = require('redis'),
bbRedis = require('../../'),
browserify = require('browserify'),
io = require('socket.io'),
server = module.exports = express.createServer(),
io = io.listen(server);
var db = Redis.createClient(6379, '127.0.0.1'),
pub = Redis.createClient(6379, '127.0.0.1'),
sub = Redis.createClient(6379, '127.0.0.1')
bbRedis.config({
io : io,
database : db,
publish : pub,
subscribe : sub,
listener : 'backbone',
});
server.listen(8080);
You can also create schemas for your models, which will have
hookable methods for you to intercept the data. The hookable
methods are create
, read
, update
, delete
, subscribe
,
and unsubscribe
, each with both pre
and post
methods attached.
var fooSchema = bbRedis.schema();
fooSchema
.pre('create', function(next, model, options, cb) {
next(model, options, cb);
})
.post('create', function(next, model, options, cb) {
next(model, options, cb);
});
.pre('subscribe', function(next, socket, options, cb) {
next(socket, options, cb);
})
.post('subscribe', function(next, socket, options, cb) {
next(socket, options, cb);
});
bbRedis.model('foo', fooSchema);
Just be sure the name you give for the schema matches the type
attribute that you set on the Backbone model.
<script src='/socket.io/socket.io.js'></script>
<script src="/underscore.js"></script>
<script src="/backbone.js"></script>
If you have cloned the repo, just serve the file.
Otherwise you can expose it to the client using browserify
.
<script src="/backbone.redis.js"></script>
var socket = io.connect();
bbRedis.config({
io : socket,
listener : 'message'
});
var Foo = Backbone.Model.extend({
url : 'foos',
type : 'foo',
sync : _.sync
});
var FooList = Backbone.Collection.extend({
model: Todo,
url : 'todos',
type : 'todo',
sync : _.sync
});
Now that there is something to work with, we can use all of the default Backbone methods
FooList.fetch();
FooList.subscribe({}, function(){
FooList.create({
data : 'lorem ipsum'
})
FooList.unsubscribe();
});
FAQs
Persistant backbone storage through redis pub/sub and socket.io
The npm package backbone-redis receives a total of 4 weekly downloads. As such, backbone-redis popularity was classified as not popular.
We found that backbone-redis demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.