Total.js platform
Total.js platform

JavaScript platform for everyone

Total.js v2.7.0

New Total.js framework version 2.7.0

This version brings a few fixes and improvements.

News

Static files of Components

I have improved rendering of group of components @{components('group'}. Now the framework links static files from rendered groups only. In other words: each group of components has its own scripts and styles. This change is a good news for applications using a lot of components.

Prototypes

With this version you can extend some Total.js prototypes easily. Just extend prototype:

Changed default IP

I have changed default IP from 127.0.0.1 to 0.0.0.0. This change has multiple benefits:

  • app can run on localhost or 127.0.0.1
  • app can run on your machine IP e.g. 192.168.200.1
  • Amazon EC2 and another similar services use 0.0.0.0 IP for Node.js apps

Controller can be changed in the schema directly

In some cases it's very important to change a controller dynamically and directly in the schema. I have extend SchemaBuilderEntity by adding a new method .$controller(new_controller).

For example:

NoSQL meta-data

Only a few developers know that NoSQL supports meta-data - key-value storage. I have extended database object by adding new methods:

Meta-data are stored in plain-text JSON file: orders.nosql-meta and all meta-data are read into the memory automatically when the DB is loaded.

Improved Unit-Testing

I have improved unit-testing in Total.js framework. Read more information about new unit-testing system in Total.js documentation or follow this example.

Example of some test:

RESULT:

Improved RESTBuilder

I have added a new features into the RESTBuilder:

  • instance.robot() extends user-agent by adding bot keyword
  • instance.mobile() extends user-agent by adding iPhone keyword
  • instance.file(name, filename, [buffer]) can upload file as multipart/form-data

Follow Total.js Framework on Twitter and give a star on Github.