Cool-Node
A cool and light weight MVC framework for Node.js to build strong applications, with abilities of auto-routing, cross-protocol, multi-apps, and beyond.
npm install cool-node --save
Please check out the documentation at cool-node.hyurl.com or hyurl.github.io/cool-node/.
If you're interested at new features in the next version, please visit Projects for plans.
Main Features
- Based on Class and MVC, New Style of Controllers and Models.
- Fully Asynchronous Controllers.
- Auto Request & Response Handlers.
- Cross Protocol and Multiple Apps on One Server.
- Multi-Processing and Internationalization.
Auto-Routing Development
Remember when you were using the Node.js internal server or Express, or other frameworks, you had to define routes for every actions; when you were using socket.io, you complained writing too much socket.on() and socket.emit(). And thinking, isn't there any way not to do this? So here comes Cool-Node.
Cool-Node provides an API that will automatically handle these things without any of your concerns, you don't even have to call this API in your program, all actions will be automatically done by the framework itself.
Fast Development
Along with auto-routing system, you can save you time to do the real things that matter, like manipulate models, writing controllers, and design views. With the ability of Modelar (a module for handling models and queries), you can handle data in just few seconds.
Cross-Protocol Development
Cool-Node also give you the ability to handle sessions and share their status across HTTP and WebSocket, what you can do with a HTTP request can also be done with a WebSocket communication.
Multi-Apps Development
Cool-Node is a framework that can build multiple applications at one time with only one server running. It can differ requests (whether they come form HTTP or WebSocket) by subdomains, you can use more than one subdomain to write any count of applications as you want.
Multi-Processing Development
Node.js is a server environment runs in single thread, although asynchronous I/O gives the power to handle high concurrency, but it's not enough! Multiprocessing allows you running multiple server instances in your system, taking absolute advantages of multiple CPUs, and improve several times of efficiency of your website.
Example
In JavaScript (/App/Controllers/HttpTest.js
):
const HttpController = ; moduleexports = /** GET /HttpTest/ */ { return this; }
And in the HTML (/App/Views/HttpTest/index.html
):
<%=title%> <%-content%>