Skip to content
/ orbit Public
forked from orbitjs/orbit

Composable data framework for ambitious web applications.

Notifications You must be signed in to change notification settings

ddaspit/orbit

 
 

Repository files navigation

Orbit Build Status Join the chat at https://gitter.im/orbitjs/orbit.js

Orbit is a composable data framework for managing the complex needs of today's web applications.

Although Orbit is primarily used as a flexible client-side ORM, it can also be used server-side in Node.js.

Orbit is designed for applications that need to:

  • Interact with data from a variety of sources: a REST server, a WebSocket stream, an IndexedDB backup, an in-memory store, etc.

  • Work offline, work online, and seamlessly transition between both modes.

  • Create optimistic and pessimistic user experiences (and even both in the same app).

  • Use a common schema to model data, regardless of its source.

  • Query and update data with a common set of expressions, understood across sources.

  • Track changes deterministically.

  • Fork immutable stores and then merge changes back if and when ready.

  • Support undo / redo.

Orbit is written in Typescript and distributed on npm through the @orbit organization. Pre-built distributions are provided in several module formats and ES language levels.

Docs and Guides

Please visit orbitjs.com to learn how to make the most of Orbit.

Contributing

Orbit's main packages are maintained in this monorepo and managed by lerna.

Installation

Install dependencies:

npm install

Building

Build distributions for all packages:

npm run build

Testing

Test all packages:

npm test

Or cd into each package's dir and test it individually in the browser:

cd packages/@orbit/PACKAGE-NAME
testem

License

Copyright 2014-2019 Cerebris Corporation. MIT License (see LICENSE for details).

About

Composable data framework for ambitious web applications.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 96.4%
  • JavaScript 3.6%