3.4 KiB
JugglingDB(3) - cross-database ORM for nodejs and browser
DESCRIPTION
JugglingDB is cross-db ORM for nodejs, providing common interface to access most popular database formats. Currently supported are: mysql, sqlite3, postgres, couchdb, mongodb, redis, neo4j and in-memory-storage.
JugglingDB also works on client-side (using WebService and Memory adapters), which allows to write rich client-side apps talking to server using JSON API.
INSTALLATION
Use npm to install core package:
npm install jugglingdb --save
Alternatively you can install jugglingdb core from github:
npm install 1602/jugglingdb
Then install adapter for specific database, for example jugglingdb-redis
:
npm install jugglingdb-redis
See [ADAPTERS][] for list of available adapters.
DOCUMENTATION
Autogenerated documentation available at [jsdoc.info/1602/jugglingdb]. Human-written manual sections are:
-
jugglingdb-schema(3): Everything about schema, data types and model definition.
-
jugglingdb-model(3): Model methods, features and internals.
-
jugglingdb-validations(3): Built-in validators, creating custom validations, syncronous and asyncronous object validation.
-
jugglingdb-hooks(3): Hooks and object lifecycle.
-
jugglingdb-adapter(3): Adapter API explained.
ADAPTERS
All adapters available as separate packages at [github.com/jugglingdb] and published in npm.
- MySQL: [github][jugglingdb-mysql] [npm][mysql-adapter-npm]
- SQLite3: [github][jugglingdb-sqlite3] [npm][sqlite3-adapter-npm]
- Postgres: [github][jugglingdb-postgres] [npm][postgres-adapter-npm]
- Redis: [github][jugglingdb-redis] [npm][redis-adapter-npm]
- MongoDB: [github][jugglingdb-mongodb] [npm][mongodb-adapter-npm]
- CouchDB/nano: [github][jugglingdb-nano] [npm][nano-adapter-npm]
- Firebird: [github][jugglingdb-firebird] [npm][firebird-adapter-npm]
CONTRIBUTION
TODO: briefly describe contribution
FUTURE
See jugglingdb-roadmap(3) and [github issues][issues] to catch up current development and see how you can help jugglingdb to grow up.
BUGS
When you find issues, please report them:
- github/core: https://github.com/1602/jugglingdb/issues
- github/adapters: https://github.com/jugglingdb
- email: compoundjs@googlegroups.com
Provide test case for reproducing error. When reporting issue to core mention adapter where problem could be reproduced.
HISTORY
See jugglingdb-changelog(3)
COPYRIGHT
JugglingDB is Copyright (C) 2011 Anatoliy Chakkaev http://anatoliy.in
AUTHOR
CONTRIBUTORS
core contributors (more than 1%)
410 Anatoliy Chakkaev 73.9%
31 Sebastien Drouyer 5.6%
25 1602 4.5%
9 Muneeb Samuels 1.6%
6 Henri Bergius 1.1%
adapters maintainers
- [jugglingdb-nano] - Nicholas Westlake
- [jugglingdb-mysql] - dgsan
- [jugglingdb-firebird] - Henri Gourvest
NOTE: Other adapters waits for their maintainers, drop a line to mail@anatoliy.in if you want to maintain some adapter on regular basis.
SEE ALSO
jugglingdb-schema(3)