0.3.9 • Published 10 years ago

largemouth v0.3.9

Weekly downloads
2
License
-
Repository
github
Last release
10 years ago

LargeMouth an open BAAS Build Status

An open BAAS with a similar API to firebase.

##Motivation Firebase is a Backend As A Service (BAAS) which allows developers to quickly build applications without worrying about the communication layer between the server and client. Firebase is awesome but the backend remains entirely proprietary. LargeMouth / SmallMouth attempt to recreate the Firebase api as an open-source project. Idealy a Firebase app could be easily moved to SmallMouth and vice versa.

LargeMouth is built on top of Socket.io and NodeJS.

##Installation

npm install -g largemouth

##Boot Options Change the server port (3000 default):

largemouth -p 3000

Change the location of the configuration file (working directory largemouth.js default):

largemouth -c ../myConfig.js

##SmallMouth SmallMouth is the client side library.

##Configuration Server configuration is defined within a JavaScript file by default located within the working directory of where LargeMouth is run. The config file allows the following:

  • Permissions - The security permission definition.
  • Custom events - Define custom events which the server will listen for.

An example config file:

module.exports = function(largemouth) {

	// Optionally define the server port here (commandline will override this value)
	largemouth.port = 3000;[[

	// The custom event will be passed a request object which will contain
	// any data sent from the client as well as the actual socket instance,
	// allowing you to respond to the client with custom events through socket.emit
	largemouth.events['someEvent'] = function(req, socket) {
			console.log('hi', req);
		}
	}

	// Only basic rules implemented, no expressions/variables
	largemouth.rules = {
		".read": true,
		".write": false,
		"chats": {
			".read": true,
			".write": true
		}
	}
}

##Release notes

  • 0.3.0 - Basic permissions and rules implemented. Fully implemented the resource.remove() method.
  • 0.2.4 - Load the config file and define custom events.
  • 0.2.0 - Don't send down entire datasets to notify clients of changes, rather send down what changed and allow the client to resolve the data.
  • 0.1.0 - Minimal portion of the Firebase API supported.

Bitdeli Badge

0.3.9

10 years ago

0.3.8

10 years ago

0.3.7

10 years ago

0.3.6

10 years ago

0.3.3

10 years ago

0.3.2

10 years ago

0.3.1

10 years ago

0.3.0

10 years ago

0.2.4

10 years ago

0.2.3

11 years ago

0.2.2

11 years ago

0.2.0

11 years ago

0.1.11

11 years ago

0.1.7

11 years ago

0.1.6

11 years ago

0.1.5

11 years ago

0.1.4

11 years ago

0.1.3

11 years ago

0.1.2

11 years ago