{"id":13529919,"url":"https://github.com/neo4j/cypher-dsl","last_synced_at":"2025-05-14T08:08:48.278Z","repository":{"id":1737087,"uuid":"2510313","full_name":"neo4j/cypher-dsl","owner":"neo4j","description":"A Java DSL (Builder) for the Cypher Query Language","archived":false,"fork":false,"pushed_at":"2025-04-14T04:55:56.000Z","size":130575,"stargazers_count":208,"open_issues_count":16,"forks_count":65,"subscribers_count":26,"default_branch":"main","last_synced_at":"2025-04-14T23:16:06.238Z","etag":null,"topics":["builder","cypher","cypher-builder","cypher-query-language","dsl","java","java-dsl","neo4j"],"latest_commit_sha":null,"homepage":"http://neo4j.github.io/cypher-dsl","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"sproutcore/Todos-Example","license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/neo4j.png","metadata":{"files":{"readme":"README.adoc","changelog":null,"contributing":"CONTRIBUTING.adoc","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2011-10-04T07:15:27.000Z","updated_at":"2025-04-03T10:33:07.000Z","dependencies_parsed_at":"2023-07-06T20:46:23.889Z","dependency_job_id":"c3891288-b061-407a-9c03-db66e81c8780","html_url":"https://github.com/neo4j/cypher-dsl","commit_stats":{"total_commits":1395,"total_committers":34,"mean_commits":"41.029411764705884","dds":0.5770609318996416,"last_synced_commit":"06736a87fee10abcd625a1d124c911fab1b22df1"},"previous_names":["neo4j/cypher-dsl"],"tags_count":122,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fcypher-dsl","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fcypher-dsl/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fcypher-dsl/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/neo4j%2Fcypher-dsl/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/neo4j","download_url":"https://codeload.github.com/neo4j/cypher-dsl/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248975329,"owners_count":21192210,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["builder","cypher","cypher-builder","cypher-query-language","dsl","java","java-dsl","neo4j"],"created_at":"2024-08-01T07:00:40.776Z","updated_at":"2025-04-14T23:16:24.620Z","avatar_url":"https://github.com/neo4j.png","language":"Java","funding_links":[],"categories":["REST API"],"sub_categories":["Other"],"readme":"= The Neo4j Cypher-DSL\n:sectanchors:\n\n// tag::properties[]\n:groupId: org.neo4j\n:artifactId: neo4j-cypher-dsl\n\n// This will be next version and also the one that will be put into the manual for the main branch\n:neo4j-cypher-dsl-version: 2024.6.0-SNAPSHOT\n// This is the latest released version, used only in the readme\n:neo4j-cypher-dsl-version-latest: 2024.5.1\n\n// end::properties[]\n\nimage:https://github.com/neo4j-contrib/cypher-dsl/workflows/build/badge.svg[link=https://github.com/neo4j-contrib/cypher-dsl/actions]\nimage:https://sonarcloud.io/api/project_badges/measure?project=org.neo4j%3Aneo4j-cypher-dsl-parent\u0026metric=coverage[link=https://sonarcloud.io/summary/new_code?id=org.neo4j%3Aneo4j-cypher-dsl-parent]\nimage:https://sonarcloud.io/api/project_badges/measure?project=org.neo4j%3Aneo4j-cypher-dsl-parent\u0026metric=alert_status[link=https://sonarcloud.io/dashboard?id=org.neo4j%3Aneo4j-cypher-dsl-parent]\nimage:https://maven-badges.herokuapp.com/maven-central/org.neo4j/neo4j-cypher-dsl/badge.svg[Maven Central,link=http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.neo4j%22%20AND%20a%3A%22neo4j-cypher-dsl%22]\n\n[abstract]\n--\nThe Neo4j Cypher-DSL in its current form is a spin-off from Spring Data Neo4j 6+ (né Spring Data Neo4j⚡️RX), where it is used to generate all Cypher queries.\nWe thank all contributors to all branches prior to 2020.0 for their effort in creating the previous versions.\n--\n\nThe primary goal of this project is to have a type safe way of creating Cypher queries targeted at https://neo4j.com[Neo4j 4.0+].\nMost of the constructs used here are modelled after https://www.opencypher.org[openCypher], but we include several constructs specific to Neo4j.\n\nThe core module of the Neo4j Cypher-DSL has no required runtime dependencies.\n\n== Versioning\n\nThis rebooted version of the Neo4j Cypher-DSL uses https://calver.org[CalVer] in the same way Spring does\nsince early 2020 (see https://spring.io/blog/2020/04/30/updates-to-spring-versions[Updates to Spring Versions]),\nstarting at _2020.0.0_.\n\nThe year digit is treated in a semver fashion for the core module.\nThat means that you won't experience any breaking changes when staying in a release line.\nHowever, the first or the latest release in a given year does not necessarily reflect the current calendar year.\nIt's kind of a trade-off, but one that we think is valuable, otherwise we would need to postpone the first release in a year until we need todo some breaking changes.\n\n== Manual\n\nFor a gentle introduction and some getting started guides, please use our\nhttps://neo4j.github.io/cypher-dsl[Manual].\n\n== Getting Started\n\n=== Adding the necessary dependencies\n\nFirst, include the dependency to the Neo4j Cypher-DSL under the following coordinates: `{groupId}:{artifactId}`:\n\n==== Maven configuration\n\n[source,xml,subs=\"verbatim,attributes\"]\n.Inclusion of the Neo4j Cypher-DSL in a Maven project\n----\n\u003cdependency\u003e\n\t\u003cgroupId\u003e{groupId}\u003c/groupId\u003e\n\t\u003cartifactId\u003e{artifactId}\u003c/artifactId\u003e\n\t\u003cversion\u003e{neo4j-cypher-dsl-version-latest}\u003c/version\u003e\n\u003c/dependency\u003e\n----\n\n==== Gradle configuration\n\n[source,groovy,subs=\"verbatim,attributes\"]\n.Inclusion of the Neo4j Cypher-DSL in a Gradle project\n----\ndependencies {\n    compile '{groupId}:{artifactId}:{neo4j-cypher-dsl-version-latest}'\n}\n----\n\n=== A simple example\n\nWith the Cypher-DSL, you can build your queries starting with the static methods provided through `org.neo4j.cypherdsl.core.Cypher`.\nStatic imports for those packages should be allowed:\n\n[source,java,tabsize=4]\n----\nimport static org.neo4j.cypherdsl.core.Cypher.*;\n\nimport org.neo4j.cypherdsl.core.Cypher;\n\nclass SimpleExample {\n\n\tpublic static void main(String... a) {\n\n\t\tvar m = node(\"Movie\").named(\"m\");\n\t\tvar statement = Cypher.match(m)\n\t\t\t.returning(m)\n\t\t\t.build();\n\n\t\tSystem.out.println(statement.getCypher());\n\t\t// Prints MATCH (m:`Movie`) RETURN m\n\t}\n}\n----\n\n=== Required Java Version\n\nFrom version 2023.0.0 onwards, the minimal required Java version to use and build the Cypher-DSL is *Java 17*. If you need a version that is compatible with Java 8, please use 2022.9.x.\n\n== Licensing\n\nThe Cypher-DSL itself is licenced under the https://www.apache.org/licenses/LICENSE-2.0[Apache License 2.0].\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneo4j%2Fcypher-dsl","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fneo4j%2Fcypher-dsl","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fneo4j%2Fcypher-dsl/lists"}