A collection of small crates.
| Crate | Description |
|---|---|
rune-abuseipdb |
AbuseIPDB API client — check IP reputation scores via the AbuseIPDB v2 API |
| Crate | Description |
|---|---|
rune-axum-helmet |
Security headers middleware for Axum — CSP, HSTS, X-Frame-Options, Referrer-Policy, and more |
rune-axum-csrf |
CSRF protection middleware — double-submit cookie pattern for Axum |
rune-axum-ratelimit |
In-memory rate limiter middleware — fixed-window per-IP or per-key limiting for Axum |
rune-axum-ipfilter |
IP allowlist / blocklist middleware — CIDR-based IP filtering for Axum |
rune-axum-redirect-https |
Redirect HTTP requests to HTTPS — Tower middleware for Axum |
rune-axum-size |
Request body size limiter — Tower middleware for Axum |
rune-axum-apikey |
API key extractor and middleware for Axum — validates keys from headers, bearer tokens, or query parameters with constant-time comparison |
rune-axum-jwt |
JWT extractor and middleware layer for Axum — validates HS256/384/512 tokens with configurable claim checks |
rune-axum-basicauth |
HTTP Basic authentication extractor and middleware layer for Axum with constant-time credential comparison |
rune-axum-bearer |
Bearer token extractor for Axum — typed extraction from Authorization headers |
rune-axum-brute |
Account lockout middleware for Axum — rate-limit authentication failures per key with configurable thresholds |
rune-axum-sanitize |
Input sanitization middleware for Axum — strips HTML tags and null bytes from query params and request bodies |
rune-axum-signature |
HMAC request signature verification middleware for Axum — validates webhook signatures in constant time |
rune-axum-audit |
Structured audit log middleware for Axum — records method, path, status, latency, and client identity |
rune-axum-stack |
All-in-one security middleware stack for Axum — helmet, CSRF, rate limiting, IP filter, HTTPS redirect, and body limit in one call |
rune-axum-trace |
OpenTelemetry distributed tracing layer for Axum — OTLP/gRPC export to Jaeger, Grafana Tempo, or any OTel collector |
| Crate | Description |
|---|---|
rune-chain-core |
Core traits and types for the rune-chain LLM orchestration framework |
rune-chain-prompt |
Prompt template engine for the rune-chain LLM orchestration framework |
rune-chain-memory |
In-process conversation memory implementations for the rune-chain LLM orchestration framework |
rune-chain-llm |
LlmChain — wire a prompt template, an LLM, and optional memory into a single Chain |
rune-chain-conversational |
ConversationalChain — LLM + memory for ergonomic multi-turn dialogue in rune-chain |
rune-chain-sequential |
SequentialChain — run rune-chain chains in order, piping each output as input to the next |
rune-chain-agent |
ReAct agent loop for rune-chain: LLM + tools + scratchpad reasoning |
rune-chain-autonomous |
Autonomous goal-driven agent for rune-chain: plans tasks, executes them with tools, and self-evaluates until the goal is met |
rune-chain-embed |
Embedder trait and OpenAI text embeddings for the rune-chain LLM framework |
rune-chain-retrieval |
RetrievalQaChain for rune-chain — embed, retrieve, and answer with RAG pipelines |
rune-chain-loader |
Document loaders for rune-chain: plain text, JSON Lines, CSV, and directory walking |
rune-chain-splitter |
Text splitters for LLM context windows: character, token, markdown, and recursive strategies |
rune-chain-tools |
Standard LLM-callable tool implementations for rune-chain: encoding, hashing, graph, entropy, and more |
rune-chain-anthropic |
Anthropic Claude LLM provider for the rune-chain framework — Claude 3 and Claude 4 families with streaming |
rune-chain-openai |
OpenAI LLM provider for the rune-chain framework — GPT-4o, GPT-4, GPT-3.5 with streaming |
rune-chain-ollama |
Ollama LLM provider for the rune-chain framework — run any local model with streaming |
rune-chain-knowledge-graph |
LLM-powered knowledge graph: extract entity-relation-entity triples from text and store them in a queryable rune-graph property graph |
| Crate | Description |
|---|---|
rune-adler32 |
Compute Adler-32 checksums of byte slices and files (RFC 1950) |
rune-ascii |
ASCII table lookup and character conversion — decimal, hex, octal, binary, and char |
rune-atbash |
Atbash cipher — reverse-alphabet substitution for Latin letters |
rune-base |
Encode and decode integers and byte strings in any numeric base with a custom alphabet |
rune-base32 |
Base32 encode/decode — RFC 4648 standard and hex alphabets, pure Rust |
rune-base58 |
Base58 encode/decode — Bitcoin alphabet and Flickr alphabet, with optional Check encoding |
rune-base64 |
Base64 encoder and decoder — standard (RFC 4648) and URL-safe variants |
rune-binary |
Binary representation encoder and decoder — converts bytes to 01010101 bit strings |
rune-blake3 |
Compute BLAKE3 hashes of byte slices and files — faster than SHA-256 and cryptographically secure |
rune-byte-magic |
Identify file types from magic bytes — pure Rust, no libmagic dependency |
rune-caesar |
Caesar cipher — shift-based substitution cipher with brute-force decoder |
rune-crc32 |
Compute CRC-32 checksums of byte slices and files (IEEE 802.3 / Ethernet polynomial) |
rune-elf |
Lightweight ELF binary parser: header, sections, segments, security flags (PIE, NX, RELRO, stack canary, FORTIFY) |
rune-entropy |
Shannon entropy calculator for files and byte streams — useful for detecting encrypted, packed, or compressed data |
rune-epoch |
Unix timestamp conversions — epoch to human-readable and back |
rune-fnv |
FNV-1 and FNV-1a hash functions for byte slices and strings (32 and 64-bit) |
rune-hex |
Hex encoding and decoding for byte slices and files — lowercase, uppercase, and streaming output |
rune-hexdump |
Hex dump with sidebar — inspect binary files like xxd |
rune-html-encode |
HTML entity encoding and decoding — escape and unescape HTML special characters |
rune-jwt |
Decode and inspect JWT claims without verification — tear open any token for debugging and CTF work |
rune-leak |
Scan source trees for hardcoded secrets, API keys, and tokens — combines regex patterns with entropy heuristics |
rune-md5 |
Compute MD5 checksums of byte slices and files |
rune-morse |
Morse code encoder and decoder — ASCII text to dots and dashes and back |
rune-murmur |
MurmurHash3 — pure-Rust implementation of the 32-bit and 128-bit variants |
rune-pe |
Lightweight PE (Windows executable) parser: headers, sections, imports, exports, security flags (ASLR, DEP, CFG, SafeSEH) |
rune-redact |
Redact PII and secrets from text — emails, IPs, credit cards, phones, SSNs, bearer tokens, and high-entropy secret strings |
rune-regex-sec |
Security-focused regex patterns for detecting IPs, CVEs, hashes, secrets, and PII in text |
rune-rot13 |
ROT13 cipher — rotate ASCII letters by 13 positions |
rune-rot47 |
ROT47 cipher — rotate printable ASCII characters by 47 positions |
rune-sha1 |
Compute SHA-1 hashes of byte slices and files |
rune-sha256 |
Compute SHA-256 hashes of byte slices and files, returning lowercase hex strings |
rune-sha512 |
Compute SHA-512 hashes of byte slices and files |
rune-strings |
Extract printable strings from binary files — configurable minimum length and encoding |
rune-tokenize |
Approximate token counting, budget checking, text truncation, and overlapping chunk splitting for LLM context windows |
rune-url-encode |
URL percent-encoding and decoding for byte slices and strings |
rune-xor |
XOR cipher for byte streams and files — repeating-key and single-byte modes with English-scored brute-force |
rune-xxhash |
xxHash (xxh32 / xxh64) — extremely fast non-cryptographic hash, pure Rust |
| Crate | Description |
|---|---|
rune-graph |
Embedded directed property graph: nodes, edges, labels, key-value properties, traversal, algorithms, and optional snapshot persistence |
rune-graph-gremlin |
Gremlin-inspired graph traversal engine for rune-graph: typed step pipeline, predicates, repeat, path tracking |
rune-graph-match |
Pattern matching engine for rune-graph: filter (node, edge, node) triples by label, property, or node id |
| Crate | Description |
|---|---|
rune-hdbscan |
HDBSCAN clustering — hierarchical density-based clustering with automatic noise detection |
rune-kmeans |
K-Means++ clustering — partition points into k clusters with smart initialisation |
rune-labelprop |
Label propagation — semi-supervised node classification via iterative neighbourhood smoothing |
rune-leiden |
Leiden community detection — find densely-connected clusters in weighted graphs |
rune-node2vec |
Node2Vec — graph node embeddings via biased random walks and skip-gram |
rune-pagerank |
PageRank — score graph nodes by importance via random-walk convergence |
rune-tsne |
t-SNE dimensionality reduction — map high-dimensional data into 2D or 3D for visualisation |
rune-umap |
UMAP dimensionality reduction — project high-dimensional data into 2D or nD embeddings |
| Crate | Description |
|---|---|
rune-secops-warden |
Whitelist-only TOML policy engine for sandboxing AI coding agents via bubblewrap namespaces and a seccomp-bpf syscall filter — filesystem, network, env vars, commands, and syscalls all deny-by-default |
MIT
