Socket
Book a DemoInstallSign in
Socket

base2

Package Overview
Dependencies
Maintainers
1
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

base2

base2

latest
Source
npmnpm
Version
1.0.18
Version published
Weekly downloads
15
-48.28%
Maintainers
1
Weekly downloads
 
Created
Source

Trek

base2

Next generation full-stack JavaScript open source solution, based on Express.Artwork by i5ting.

Deps npm GitHub license npm

Features

  • 基于expressjs,可使用connect中间件,路由
  • 抽象app生命周期和中间件(不是connect的中间件),可随意扩展
  • 参数配置,可高度定制
  • 自动挂载路由

more

  • framework
    • express
    • koa
  • env
    • production
    • development
    • test
  • type
    • normal
    • api
    • all
    • service

Install

[sudo]npm install --save base2

Usages

var app = require('base2')({
  // debug: true,
  root:__dirname,
  "views": "views",
  "routes": "routes2",
  "public": "public",
})

// console.log(app);
// app.mount_routes(__dirname + '/routes2');
// app.mount_plugins(__dirname + '/plugins');
app.start(3019);

Note:

  • app.mount_routes
  • app.mount_plugins

more detail see https://github.com/i5ting/base2-examples

Default Options

  var cfg = {
    debug: false,
    favicon: 'favicon.ico',
    favicon_enable: false,
    post_enable: true,
    cookie_enable: true,
    log_enable: true,
    log_level: "dev",
    post_limit_size : '100kb',
    // "views": "views",
    // "routes": "routes",
    // "public": "public",
    pre: function (app) {
      if (app.debug) {
        console.log('pre hook');
      }
    },
    post: function (app) {
      if (app.debug) {
        console.log('post hook');
      }
    }
  }

默认的root是相对于安装的node_modules路径的上级

比如当前路径是base2-examples/node_modules/base2

root = base2-examples/

Extract

  • config.pre
  • settings
    • config.before_settings
    • config.after_settings
  • global_middlewares
    • config.before_global_middlewares
    • config.after_global_middlewares
  • routes
    • config.before_routes
    • config.after_routes
  • config.post

Middlewares

already exist middlewares

  • morgan log
  • serve-favicon
  • cookie-parser
  • body-parser

write a middleware by yourself:

module.exports = function (app) {
  if (app.debug) {
    console.log(app.get('views'));
  }
  
  if (app.get('views')) {
    app.set('views', app.get('views'));
    app.set('view engine', 'jade');
  }
};

in app.js

app.mount_plugin('xxxx_plugins_dir');

Contributing

  • Fork it
  • Create your feature branch (git checkout -b my-new-feature)
  • Commit your changes (git commit -am 'Add some feature')
  • Push to the branch (git push origin my-new-feature)
  • Create new Pull Request

版本历史

  • v1.0.0 初始化版本

欢迎fork和反馈

如有建议或意见,请在issue提问或邮件

License

this repo is released under the MIT License.

FAQs

Package last updated on 25 Feb 2016

Did you know?

Socket

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.

Install

Related posts