JCypher is a Java Domain Specific Language (DSL) for Cypher, a graph query language used in the Neo4j graph database. It provides a fluent API to formulate Cypher expressions while minimizing method nesting and ensuring completion proposals from modern Java IDs. The DSL creates Cypher expressions and introduces a database abstraction layer to execute these expressions against various types of graph databases. JCypher also includes domain mapping, which allows users to store complex graphs of Java objects in the graph database with minimal configuration. This feature enables querying domain models rather than underlying graph models. Additionally, JCypher provides non-functional features such as transactions and concurrency support. The project is continuously evolving, with new features being added regularly, including the ability to store domain queries for later use and a server-side implementation called JCypher-Server, which offers a RESTful API and web UI.