Composable Retool as a DSL

a programmable Excel-like low-code tool for building sophisticated enterprise applications (not just internal tools) in a way that reaches your pre-existing Java backends.

"Hyper" means interconnected. "Fiddle" means play. Hyperfiddle is a hyper-converged low-code playground, for building robust datagrid application GUIs like these:

Not just for internal tools: these are external, partner-facing applications with full production values of a real app. They are deeply customized, robust, reliable and secure: specifically built to be used by external business users. So your business can scale beyond Google Sheets and Retool.

Get Early Access Follow us on twitter

"HTML for datagrids"

HFQL (Hyperfiddle Query Language) is a UI specification DSL (reminescent of GraphQL) for rich forms and datagrids:

Not just forms, grids and trees too! HFQL understands the cardinality of your data.

Build complex CRUD UIs out of composable semantic elements

The correct semantic UI elements you need to deal with complex/messy data models

semantic elements
  • queries
  • functions
  • forms
  • attributes
  • transactions
  • hyperlinks
  • modals
  • picklists (server filtered)
  • complicated pickers
rich information structures
  • forms
  • grids
  • trees
  • graphs
  • relations
  • schema
  • references
strong composition model
  • query chaining
  • dynamic query parameters
  • sideways sibling references
  • scope
  • nesting & trees
  • dynamic states
  • hyperlinks to any point from any point
  • dynamic hyperlink parameters
  • deeplinks to any state
  • seamless virtual scroll

Serve your existing Java backend without hand-coding client/server plumbing

No REST, no GraphQL, no RPC: the Hyperfiddle Server SDK lets you serve your Java functions directly, with zero API coding:

A low-code stack with technical depth



Implementation is merely 8,000 lines of code in total, for all of HFQL + Electric + Missionary!

"If a system is to serve the creative spirit, it must be entirely comprehensible to a single individual. Human potential manifests itself in individuals." — Dan Ingalls, Design Principles Behind Smalltalk

Technical details

The Electric protocol is implemented in Clojure/Script and delivered in the form of a network transparent Clojure dialect, Electric Clojure (github). In other words, Electric is both protocol and programming language: the protocol is built into the programming language, and reflected from the code syntax you write, in a similar way to how memory management is built into Java. Consequently, the Electric protocol has composition and control flow primitives, making it more of a meta-protocol, actually: a composable protocol building block.

HFQL is implemeted in Electric Clojure, and as such, its sophisticated differential wire traffic—client/server state differences on the wire—is reflected from it's source code (we perform a DAG topology analysis). HFQL itself can be seen as a high level protocol for hypermedia/CRUD, embedded in the lower Electric protocol for general state distribution.

All of these implementation details are transparent from the Java or JS perspective. HFQL will link with your functions and orchestrate them without the Java/JS user seeing any Clojure. (The Electric language/protocol compiles down to Java and Javascript targets using the Clojure/Script toolchain, which is how it seamlessly links with your Java/JS codebase.)

Due to high novelty, it's going to take some time for us to learn how to explain this, so please bear with us.

Extended technical content: