asapp

2.0.3 • Public • Published

ASAPP

As simple as possible project structure

Changelog v2.0.0

Root and directory path now is based in main node_modules directory instead require.main.filename.

  • Routes, middlewares and controllers were moved to app/http
  • Models and schemas were moved to app/db
  • Settings files are in root config directory (app/config).

This update let you :

  • Serve the application inside another directories, like bin. If you use express-generator try it please.

  • Better app structure

New features

  • ROOT: Returns absolute project path. eg: /home/fdorantesm/www/ilumont

  • application alias to app: If you define express application as 'app' you couldn't to used the destruct syntax before.

Installation

npm i --save asapp

Functions

  • App / application
  • Config
  • Schema
  • Route
  • Controller
  • Middleware
  • Helper
  • Library
  • Locale
  • Model

Note: Use lower case to call these functions

Constants

  • APP
  • ROOT

App structure

app
├── config
├── db
│ ├── models
│ ├── schemas
├── helpers
├── http
│ ├── controllers
│ ├── middlewares
│ ├── routes
├── libraries
├── locales

You can add subdirectories and call modules using the same function as normally: asapp.helpers('payments/visa')

How to use

var express = require('express')
var app = express()

var {config, route} = require('asapp')

app.locals(config('locals'))
app.use('/', route('router'))

module.exports = app

Meanwhile in app...

.
├── app
│   ├── config
│   │   ├── locals.js
│   ├── http
│   │   ├── controllers
│   │   ├── middlewares
│   │   │   └── test.js
│   │   └── routes
│   │       ├── router.js
│   │       └── test.js





router.js

var express = require('express')
var app = express()
var asapp = require('asapp')

app.use('/test', asapp.route('test'))

module.exports = app

Do you like it?

Try with a base project

https://github.com/fdorantesm/express-assap

Bugs

No, and we'll hope not.

Package Sidebar

Install

npm i asapp

Weekly Downloads

127

Version

2.0.3

License

MIT

Unpacked Size

4 kB

Total Files

4

Last publish

Collaborators

  • fdorantesm