UNPKG

2.74 kBMarkdownView Raw
1[![Build Status](https://travis-ci.org/skytap/minorjs.svg?branch=master)](https://travis-ci.org/skytap/minorjs)
2[![NPM version](https://badge.fury.io/js/minorjs.svg)](http://badge.fury.io/js/minorjs)
3
4# MinorJS
5
6MinorJS is an unopinionated, ultra-minimal web framework that alleviates the pain of routing, testing, and deployment clustering for Node.js applications.
7
8## Why MinorJS?
9
10By starting with MinorJS you maintain the freedom to develop your application with whichever technologies and philosophies you find appropriate for your Node.js project. MinorJS only handles routing, testing, and deployment clustering, ensuring that you have the tools to develop with speed and ship with confidence.
11
12## Installation
13
14This package is available on npm as:
15
16```
17npm install minorjs
18```
19
20## Features
21
22* Clustered to support fault tolerance and load balancing.
23* Zero-downtime rolling restarts.
24* Framework-level error handling and logging to keep your site running.
25* Per-environment configurations.
26* Automatic route wiring; just create a controller module!
27* Run filters before each request.
28* Request profiling.
29* Automatically reload changed modules (controllers/templates/etc) in development with no manual restarting. Save and refresh your browser!
30* Express-style request middleware.
31* Template mixins: execute Javascript from your templates.
32
33## Functional testing
34
35You can easily write functional tests of your MinorJS application using the
36[MinorJS testing framework](https://github.com/skytap/minorjs-test).
37
38You can make requests to your site with a headless browser, access data
39in the DOM with jQuery-style selectors and build your tests with standard
40tools like Mocha and Should.
41
42## CoffeeScript-friendly
43
44While MinorJS is written in Javascript, the framework happily works with CoffeeScript.
45
46## Node.js versions
47
48To support updated packages, minorjs version 7 and up works with Node.js 10 and up. Minorjs versions 2-7 works with Node.js 4 and up. If you need to run minorjs on Node.js 0.10 you can install minorjs version 1.4.0.
49
50## License
51
52Copyright 2014 Skytap Inc.
53
54Licensed under the Apache License, Version 2.0 (the "License");
55you may not use this file except in compliance with the License.
56You may obtain a copy of the License at
57
58 http://www.apache.org/licenses/LICENSE-2.0
59
60Unless required by applicable law or agreed to in writing, software
61distributed under the License is distributed on an "AS IS" BASIS,
62WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
63See the License for the specific language governing permissions and
64limitations under the License.
65
66## Contributors
67
68* [Scott Brady](https://github.com/scottbrady) (Maintainer)
69* [Matt Mehlhope](https://github.com/mmehlhope)