8000 GitHub - hegeldev/hegel · GitHub
[go: up one dir, main page]

Skip to content
hegeldevPublic

Repository files navigation

Hegel

Important

Hegel is in beta, and we'd love for you to try it and report any feedback. See https://hegel.dev/compatibility for details on what may still change.

Hegel is property-based testing, based on Hypothesis: a native engine that does the generating, shrinking and bookkeeping, and thin frontends that give it an idiomatic surface in each language.

This is the Hegel monorepo that includes the engine and (currently only some of) our officially supported frontends. Specifically, right now it contains:

Component Path What it is
libhegel libhegel/ The engine, with a C ABI. Published as prebuilt libraries on GitHub releases and as the hegeltest-c crate.
Hegel for Rust frontends/rust/ The hegeltest crate.
Hegel for Python frontends/python/ The hegeltest package, imported as hegel.
Hegel for TypeScript frontends/typescript/ The @hegeldev/hegel package, for Node, Bun, Deno and browsers.
Hegel for C++ frontends/cpp/ The hegel CMake library, fetched from this repository with FetchContent.
Hegel for Java frontends/java/ The dev.hegel:hegel (Java 22+) and dev.hegel:hegel-jna (Java 17+) artifacts on Maven Central.
Hegel for OCaml frontends/ocaml/ The hegel opam package, with its ppx_hegel_generator and ppx_hegel_test PPXes.

Each component is versioned and released independently; releases are tagged <path>/<version>, for example libhegel/0.47.1, frontends/rust/0.50.1, frontends/python/0.1.0, frontends/typescript/0.4.10, frontends/cpp/0.13.1, frontends/java/0.10.2 or frontends/ocaml/0.26.4.

See CONTRIBUTING.md to get started.

Releases

Packages

Contributors

Languages

0