You store the data in database, query the complex data , do some manipulation on the data & like to store back the same on the database. Further you save the data into cache for some amount of time & sync with the database later. You display the data on UI & dynamically update content of the UI on data change. Are these some internal nature of your apps , then Breeze.js is tailor made for you.
So what all the breeze.js can do for you. Here is a small list
Business data objects- Create a serve side data model on the client . This is done automatically. Metadata is being used to for this which can be controlled & extended.
Rich Query – Write rich query to pull the data from OData services which can also include Filtering , ordering & paging
Batch Work – Do a batch task in a single transaction. It is capable of mixed entities & mixed operations.
Cache – Allow caching on the client to reduce server request. Allow querying a cache in the same as that of OData services. Allow saving the data locally & sync it when needed
Extend – Allow to extend the model with custom properties, methods , events etc.
Plug with Backend – Integrated with Entity Framework . Supports WebAPI & OData. Works with NoSQL, non-dot.net, SAO backend.
Track Changes – Allow self tracking for entities which also help to revert an entity back to some state
Being listed the major features, here is the salient features you may like :
- IntelliSense support for Visual Studio 2012.
- RequireJS-enabled for modular applications.
- Out-of-box support for Knockout, Angular, and Backbone.
- TypeScript support for compile-time type checking, classes, interfaces, and inheritance.
- Quality control through QUnit automated tests.
- ORM – Object Relation Mapper like querying
In Next post I will explain the core concepts of breeze.js