Java Scala
Switch branches/tags
v0.9.1 v0.9.0 v0.8.2 v0.8.1 v0.8.0 v0.7.2 v0.7.1 v0.7.0 v0.6.0 v0.5.0 v0.4.1 v0.4.0 v0.3.1 v0.3.0 v0.1.0 archive/upgrade/no-blueprints-dep archive/update/readme/85 archive/update/build/88 archive/rename/to/angulillos archive/remove/stale/code/80 archive/release/0.9.1 archive/release/0.9.0 archive/release/0.8.2 archive/release/0.8.1 archive/release/0.8.0 archive/release/0.7.2 archive/release/0.7.1 archive/release/0.5.0 archive/release/0.4.1 archive/refactoring/fix-rvt-ret archive/reduce/types/in/titan/impl archive/iterable/to/stream archive/fix/names/types/tests/81 archive/feature/vertex/stream/75 archive/feature/support/arity/properties/65 archive/feature/stream/only/api archive/feature/schema-creation archive/feature/more/arity/types archive/feature/indexes/50 archive/feature/graph/indexes/73 archive/feature/get/property/from/index archive/feature/add/sequence/option/stream archive/feature/abstract/node/methods archive/experiment/using-wildcards archive/experiment/properties-in-elements archive/enhancement/upgrade/blueprints/fix/build archive/enhancement/update-test-graph archive/enhancement/style/access/modifiers/67 archive/enhancement/review/raw/access/modifiers archive/enhancement/readme archive/enhancement/query-with-compare archive/enhancement/general-improvs archive/enhancement/code-quality archive/docs/write/first/cut archive/doc/review/improve archive/clean/code/90 archive/clean/build/84 archive/bug/wrong/arity/86 archive/bug/transactionalGraph/inheritance/66 archive/bug/titan/safe/type/creation archive/bug/titan/null/indexes archive/bug/nonpublic/types/69 archive/bug/element/types/names archive/bug/covariant/bound/untyped/graphs archive/bug/covariant/bound/on/titan/stuff archive/bug/arity/methods/broken/78 archive/bug/add/out/titan/node archive/basic/docs/for/all archive/add/optional/for/indexes
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
notes
project
src
.gitignore
.pullapprove.yml
.travis.yml
LICENSE
build.sbt
readme.md

readme.md

Angulillos<?>

Angulillos is a Java 8 library for strongly typed graph data.

You write graph schemas using the Java type system, and graph traversals are statically checked. The same schemas and traversals can then be used with any implementation of the Angulillos API, such as bio4j/angulillos-titan.

Why not TinkerPop?

Angulillos fixes the untypedness of TinkerPop at two different levels that we could call structural and model-specific:

  • Structural You can write nonsensical traversals like "source of a vertex"
  • Model No notion of graph schema. You can write "give me users followed by tweet"

Where to start

The tests include a simple Twitter graph schema and some generic traversals:

For something more complex take a look at bio4j/bio4j, which includes several interconnected graph schemas with hundreds of types.