<div align="center">
<img src="https://raw.githubusercontent.com/arcium-hq/.github/refs/heads/main/profile/arcium.svg" alt="Arcium" width="200"/>
<h1>arcis-compiler</h1>
<p>Compiler infrastructure behind Arcis circuits and <code>arcium build</code>.</p>
[](https://crates.io/crates/arcis-compiler)
[](https://docs.rs/arcis-compiler)
**[Developer Docs](https://docs.arcium.com/developers/arcis)**
</div>
## When To Use
- Building tooling that works directly with Arcis IR, profiling data, or compiler internals
- Extending compilation flows below the `arcis` crate
- Inspecting lower-level compilation artifacts
Most circuit authors should use [`arcis`](https://crates.io/crates/arcis) instead.
## Installation
```toml
[dependencies]
arcis-compiler = "0.10.2"
```
Enable internals when you need lower-level compiler APIs:
```toml
arcis-compiler = { version = "0.10.2", features = ["internals"] }
```
## Feature Flags
| `internals` | Expose lower-level compiler internals. |
| `bench` | Benchmark-related support. |
| `gen-artifacts` | Artifact generation helpers used by build flows. |
## Main Areas
| `compile` | Circuit compilation pipeline. |
| `profile_info` / `profile_summary` | Profiling structures for circuit analysis. |
| `traits` | Core traits shared across compiler internals. |
| `utils` | Lower-level numeric, packing, and field helpers. |
## See Also
- [`arcis`](https://crates.io/crates/arcis)
- [`arcis-interface`](https://crates.io/crates/arcis-interface)
- [`arcis-interpreter`](https://crates.io/crates/arcis-interpreter)
- [Developer Docs](https://docs.arcium.com/developers/arcis)