We just released v1.2 of the JayData client/server library, a major release and the first in the set of releases that focus on providing a unified data management experience regardless of the tier: HTML5/Win8/Hybrid client app or NodeJS based server app, and regardless of the role: consuming or providing data.
There’s a long way ahead but major steps had been done. Now you are able to use the very same code to define a client view of a remote data source – and to define a mongoDB or sqLite backed local data source (and create the “remote data source” of someone else). The same EntityContext event handler if used on the client can implement a simple validation logic– or can act as server side trigger that safeguards integrity in the data store. A query written in JSLQ running on the client can represent a simple network request for some data while used on the server and exposed as a service function can act much like an SQL view over tables.
Our short and mid term plans for the future are as follows:
JayData 1.2.1 – W4 Sept/ W1 Oct
In our currently ongoing sprint and in the next one we are about to bring up the SqLite and IndexedDB provider to the level of OData – or come close to it as near as possible. Here are to main epics we are to address:
- Revive SqLite Include expression
- Implement RemoveAll and RemoveByQuery for SqLite
- Implement UpdateAll and UpdateByQuery for SqLite
- Implement Any/All aka some()/every() for SqLite on 1..n relations
- Support non autogenerated keys for SqLite
- Support some field name mapping capabilities
- Review and fix IndexedDB provider on Chrome (it is reported broken in the latest Chrome release)
- Review and fix IndexedDB provider on IE10
- Support filtering for IndexedDB
JayData 1.2.2 – W3 Oct /W4 Oct
Sync and remote notification capabilities
- Allow a local store to be synced to the cloud/remote endpoint.
- Allow a local store or a local view of the remote data to be notified/invalidated/refreshed
JayData 1.3 – W1 Jan
- Full OData v3 compliancy
You can influence what we do and also our priorities. Contact the team via facebook or github.