<a id="Eunoia"></a>

<a id="Eunoia.Eunoia"></a>

# Eunoia

Julia · 1.0.1

[Source](<https://github.com/jolars/Eunoia.jl/blob/db1275ffc768591b8c9271c56d8dfa2f3351bfcd/src/Eunoia.jl>)

```julia
Eunoia
```

Julia bindings for [eunoia](<https://github.com/jolars/eunoia>), a Rust library for area-proportional Euler and Venn diagrams. 

The native code is the `eunoia-capi` cdylib, which speaks a small JSON-in/ JSON-out C ABI. This module loads it and exposes fitting, label placement, glyph placement, and rendering through a typed Julia API. 

<a id="locating-the-library"></a>

### Locating the library

At load time the shared library is resolved in this order: 

1. `ENV["EUNOIA_CAPI_LIB"]` — an explicit path to a locally built `libeunoia_capi`. Set this during development: `cargo build -p eunoia-capi --release` then point at `target/release/libeunoia_capi.{so,dylib}`.
2. The bundled `eunoia` artifact declared in `Artifacts.toml` (downloaded lazily on first use; populated by `gen/generate_artifacts.jl` from a GitHub release).

If neither is available a descriptive error is raised.
