Security News
Weekly Downloads Now Available in npm Package Search Results
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
airborne-engine
Advanced tools
Moved to Airborne
This framework built for educational purpose. I'm migrating to ES6 and have decided to write my own RESTful API framework.
It is not covered by Unit tests yet but WIP.
It uses DAO architecture and DI for its carcass.
Using Express server routing it get all request and processes to Dispatcher. Dispatcher parses url into segments and apllies call to Controller's method.
Example:
GET /messages // MessagesController.load()
GET /messages/1 // MessagesController.get(id)
POST /messages // MessagesController.create(payload)
Also you can divide controllers by Modules. Engine will parse your url and process like this:
GET /todo/tasks // Todo/TasksController.load()
They will arrive in method in params argument
GET /messages/1/?limit=100 // MessagesController.get(id, params)
Engine will search for controllers in controllers folder or you can create modules. In that case you have to place in module folder. More about Controllers
/app
controllers
IndexController.js
/app
modules
Todo
controllers
TasksController.js
You can provide your own config that will replace default
module.exports = {
path: './',
host: 'localhost', // API host to run
port: 3000, // API port
debug: true,
// Database section
// Available mappers: MySQL (MariaDB) / Redis / MongoDB
db :{
mysql: { // Name of the connection
// Connection details in Databases section
}
}
}
To enable MySQL support you need to provide in config connection information:
db: {
...
mysql: { // Name of the connection
host: '127.0.0.1', // by default
port: 3306, // by default
username: 'root', // by default
password: 'myPassword1', // by default - using password: NO
database: 'MyDatabase' // no defaults
}
}
db: {
...
myRedis: { // Name of the connection
host: '127.0.0.1', // by default
port: 6379, // by default
username: 'root', // by default no user
password: 'myPassword1' // by default - using password: NO
}
}
db: {
...
myMongo: { // Name of the connection
host: '127.0.0.1', // by default
port: 27017, // by default
username: 'root', // by default no user
password: 'myPassword1' // by default - using password: NO
}
}
FAQs
Airborne RESTful API framework
We found that airborne-engine 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
Socket's package search now displays weekly downloads for npm packages, helping developers quickly assess popularity and make more informed decisions.
Security News
A Stanford study reveals 9.5% of engineers contribute almost nothing, costing tech $90B annually, with remote work fueling the rise of "ghost engineers."
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.