⁂ Persevere: The JSON database and JavaScript application server

The Persevere project is an open source set of tools for persistence and distributed computing using intuitive standards-based JSON interfaces of HTTP REST, JSON-RPC, JSONPath, and HTTP Channels. The core of the Persevere project is the Persevere Server. The Persevere server includes a Persevere JavaScript client, but the standards-based interface is intended to be used with any framework or client.

Features

The Persevere Server is an object storage engine and application server (running on Java/Rhino) that provides persistent data storage of dynamic JSON data in an interactive server side JavaScript environment with the following key features:

* Create, read, update, and delete access to persistent data through a standard JSON HTTP/REST web interface

* Dynamic object persistence - expando objects, arrays, and JavaScript functions can be stored, for extensive JavaScript persistence support

* Remote execution of JavaScript methods on the server through JSON-RPC for a consistent client/server language platform

* Flexible and fast indexed query capability through JSONQuery/JSONPath

* Comet-based data monitoring capabilities through HTTP Channels with Bayeux transport plugin/negotiation support

* Data-centric capability-based object level security with user management, Persevere is designed to be accessed securely through Ajax with public-facing sites

* Comprehensive referencing capabilities using JSON referencing, including circular, multiple, lazy, non-lazy, cross-data source, and cross-site referencing for a wide variety of object structures

* Data integrity and validation through JSON Schema

* Class-based data hierarchy - typed objects can have methods, inheritance, class-based querying

* Pluggable data source architectures - SQL tables, XML files, remote web services can be used as data stores

* Service discovery through Service Mapping Description

http://www.persvr.org

© 2011 Devis Lucato @itbus.