Casimir Core
The core modules for the Casimir webapp framework
Install
$ npm i --save casimircore
Features
var casimir_core = console server: http_server port ssl pub_sub sockets io_server Error: 'Error Middleware' Router: 'Custom Router with authentication and validation' logger: info debug error warn properties: properties db: init get_model authentication: verify_token verify_specific_user_token check_access
Authentication
var { } var { // reaches here if there is no req.user resstatus401} var authentication = casimir_core
DB
var mongoose = var db = casimir_coredbvar settings = user: 'user' pass: 'password' host: 'host.mongodb.com' port: 27000 name: 'testDB' // with URI - if provided, all previous connection settings are ignored uri: 'mongodb://user:password@host.mongodb.com:27000/testDB' // mongoose models directory dir: './db'db
Error
var env = processenvNODE_ENVvar error = casimir_core
Logger
var env = processenvNODE_ENVvar logentries_api_key = 'fdsfdf23fewfew' var log_settings = env: env logentries_api_key: logentries_api_key log_dir: './log' var logger = casimir_core // Can Actually run over normal console with loggerconsolelog = loggerinfoconsoleerror = loggererrorconsolewarn = loggerwarn...
Properties
var config_dir = './config'var properties = casimir_core
RequestId
var settings = secret: 'secret' namespace: 'servername'var requestid = casimir_core
Router
var fs = var GET_public = "/path": "function_name": "File.Function" "params": "param1""param2" "optional": "optionalParam" "users": "optionalPrivateUsers" fs // can be similarly done for POST, PUT, DELETE and privatevar controllers_dir = './controllers/'var routes_dir = './routes/'var router = casimir_core
Server
var validator = // Add custom framwork modules for serverpropertiesmodules = validator: validator router: router error: error logger: logger requestid: requestid// Set server and server portvar server = casimir_core
Testing
$ cd /"module-path"/casimircore$ npm test