Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Java HTML Other
branch: master
Failed to load latest commit information.
org.xydra.annotations eclipse metadata
org.xydra.conf doc
org.xydra.core EXPERIMENTAL: cache MemoryAddress instances
org.xydra.csv Moved NanoClock from restless to xydra.conf
org.xydra.doc removed binaries from src/test/resources
org.xydra.gae Moved NanoClock from restless to xydra.conf
org.xydra.gaemyadmin are now a meaningful unit to share,…
org.xydra.gwt are now a meaningful unit to share,…
org.xydra.gwttools cached, effective poms
org.xydra.index more tests
org.xydra.jetty are now a meaningful unit to share,…
org.xydra.log.gae doc/source formatting/log message wording
org.xydra.log doc/source formatting/log message wording
org.xydra.maven-root refactored; now using ASM 5.0.1 due to defect class file in 5.03; rem…
org.xydra.oo-generator oo: continued split-up
org.xydra.oo core: remove XBinaryValue.contents(), was redundant with existing XBi…
org.xydra.restless ProgressManager: also report Exceptions
org.xydra.testgae Moved NanoClock from restless to xydra.conf
org.xydra.webadmin-deploy cached, effective poms
org.xydra.xgae-api are now a meaningful unit to share,…
org.xydra.xgae-impl-gae are now a meaningful unit to share,…
.gitignore Update

Xydra is a generic, embeddable application data model that runs

  • seamlessly in Java (makes testing easy),
  • on Google AppEngine (GAE/J), and also via
  • Google Web Toolkit (GWT) as JavaScript in a browser.

Xydra Features

  • Persistence (currently: in-memory, in GAE data store)
  • Events (for all added, removed, or changed entites)
  • Commands (which can be serialized, too)
  • Transactions (over as many entities as you like)
  • Versioning (including a full change log)
  • Access Rights Management (with powerful resources hierarchies and nested user groups)
  • Synchronisation of state between client and server (in strict or relaxed mode)

Who needs Xydra?

  • Web developers who build rich web clients using GWT,
  • Cloud application developers who use Google AppEngine and need versioning of data and/or access rights,
  • Social application developers who need to sync several clients (in GWT or Java) on the same set of data,
  • Or developers needing all of that.

Get started

  • Get a Xydra5MinuteTutorial (see wiki)
  • Then check out the XydraBasics (see wiki).
  • Read ModuleOverview

If you plan on using Xydra, send me a message, and I can tell you, if it is a good fit for your project or not.

Source code projects that can be used without Xydra

These projects have no dependency to any Xydra component. They are used by Xydra, but they don't depend on Xydra.

  • RestLess - Fast-loading, lightweight Java REST framework for AppEngine -- boots very fast
  • XydraLog - Unified logging for Java, AppEngine and GWT
  • GaeMyAdmin - Easy-to-install AppEngine version to manage your live app in the browser - doesn't offer much :-)
  • XydraIndex - Multi-level index structures (e.g. triple index) that run also in GWT
Something went wrong with that request. Please try again.