Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Neo4j
  3. GraphAware Neo4j TimeTree

GraphAware Neo4j TimeTree

Java

A Java and REST library for representing time as an on-demand tree in Neo4j, enabling temporal event modeling and queries.

GitHubGitHub
210 stars40 forks0 contributors

What is GraphAware Neo4j TimeTree?

GraphAware Neo4j TimeTree is a library for modeling time as a hierarchical tree structure within the Neo4j graph database. It dynamically creates time-instant nodes (from years down to milliseconds) on-demand, allowing developers to efficiently represent and query temporal data by linking event nodes to specific time instants. This approach avoids the overhead of pre-generating time structures while supporting time zones and flexible event attachment.

Target Audience

Developers building Neo4j-based applications that require efficient temporal data modeling and querying, such as event logging, time-series analysis, or historical data tracking. It is specifically for users of Neo4j Community Edition with the GraphAware Framework Community, as the open-source version is incompatible with Neo4j Enterprise Edition.

Value Proposition

Developers choose this library for its on-demand tree generation, which reduces storage and complexity compared to pre-built time hierarchies, and its built-in support for multi-resolution time instants, time zones, and event attachment via Cypher procedures and REST APIs. Its pragmatic approach balances flexibility with performance for diverse temporal querying needs.

Overview

Java and REST APIs for working with time-representing tree in Neo4j

Use Cases

Best For

  • Modeling event timelines in Neo4j where events need to be linked to specific time instants (e.g., emails sent on a particular day).
  • Querying temporal data ranges efficiently, such as retrieving all events that occurred between two dates in a Neo4j graph.
  • Automatically attaching nodes with timestamp properties to a time tree based on configurable rules (e.g., nodes labeled 'Event' with a 'timestamp' property).
  • Handling time-zone-aware time instants in Neo4j applications, ensuring accurate labeling and event attachment across different regions.
  • Building custom time hierarchies in Neo4j with resolutions from years to milliseconds without pre-generating the entire tree structure.
  • Integrating temporal querying into Neo4j via Cypher stored procedures or REST endpoints for server-mode deployments.

Not Ideal For

  • Projects using Neo4j Enterprise Edition, as the open-source version is incompatible
  • New applications started after May 2021, since the project is retired and unmaintained
  • Simple temporal queries that don't require hierarchical time modeling, where basic Cypher date functions suffice
  • Teams needing active vendor support or frequent updates for production systems

Pros & Cons

Pros

On-Demand Efficiency

Creates time-instant nodes only when requested, avoiding the storage overhead of pre-generating entire time hierarchies, as described in the on-demand tree generation feature.

Multi-Resolution Flexibility

Supports time resolutions from Year down to Millisecond with configurable defaults, allowing fine-grained or coarse temporal modeling based on use case needs.

Time Zone Awareness

Incorporates time zone handling for accurate labeling of time instants and event attachments, ensuring consistency across regional data.

Event Management Tools

Provides Cypher procedures and REST APIs for attaching events to time instants and querying events by single instants or ranges, streamlining temporal data operations.

Cons

Project Retired

Marked as retired since May 2021, meaning no updates, bug fixes, or official support, which poses risks for long-term maintenance.

Enterprise Incompatibility

Only works with Neo4j Community Edition due to GPL licensing; the README explicitly states it will not work with Neo4j Enterprise Edition, limiting adoption in commercial environments.

Complex Setup

Requires installing the GraphAware Framework and configuring neo4j.conf with security exemptions and module settings, adding deployment overhead.

Frequently Asked Questions

Quick Stats

Stars210
Forks40
Contributors0
Open Issues0
Last commit5 years ago
CreatedSince 2014

Tags

#java-library#rest-api#java#time-series#neo4j-graphaware-framework#graph-database#temporal-data#neo4j

Built With

M
Maven
N
Neo4j
J
Java

Included in

Neo4j554
Auto-fetched 14 hours ago

Related Projects

GephiGephi

Gephi - The Open Graph Viz Platform

Stars6,590
Forks1,606
Last commit25 days ago
Apoc : Awesome Procedures on CypherApoc : Awesome Procedures on Cypher

Awesome Procedures On Cypher for Neo4j - codenamed "apoc"                     If you like it, please ★ above ⇧            

Stars1,866
Forks499
Last commit1 day ago
blueprintsblueprints

A Property Graph Model Interface (no longer active - see Apache TinkerPop)

Stars1,359
Forks270
Last commit5 years ago
node-neo4jnode-neo4j

[RETIRED] Neo4j graph database driver (REST API client) for Node.js

Stars921
Forks133
Last commit7 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub