CtrlK
BlogDocsLog inGet started
Tessl Logo

crate-structure

The Xberg workspace layout — the version source of truth (root Cargo.toml [workspace.package] version), the crates/ workspace members (core lib, CLI, FFI, per-language binding crates, OCR crates), the out-of-workspace binding packages under packages/ (PyPI, RubyGems, Composer, Go, Maven, NuGet, Hex), and the tools/ directory. Load when navigating the repo, deciding where code belongs, or wiring a new crate or binding package.

75

Quality

92%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Crate Structure

Version source of truth: root Cargo.toml [workspace.package] version.

Workspace crates (crates/)

  • xberg — core library: extraction engine, MIME detection, plugin system, OCR, chunking, embeddings, API/MCP server
  • xberg-cli — CLI binary; thin wrapper over core with cli feature set
  • xberg-ffi — C FFI layer (#[no_mangle] extern "C"); opaque handles, cbindgen headers; used by Go, Java, C# bindings
  • xberg-node — NAPI-RS Node.js/TypeScript bindings
  • xberg-py — PyO3 Python bindings
  • xberg-php — ext-php-rs PHP bindings
  • xberg-wasm — wasm-bindgen WASM bindings; uses wasm-target feature set
  • xberg-paddle-ocr — PaddleOCR via ONNX Runtime; not available on WASM or Windows
  • xberg-tesseract — Rust bindings for Tesseract OCR

Out-of-workspace bindings (packages/)

  • packages/python/ — PyPI (maturin + PyO3)
  • packages/ruby/ — RubyGems (Magnus); native ext compiled by rake
  • packages/php/ — Composer (ext-php-rs)
  • packages/go/ — Go module; cgo over xberg-ffi
  • packages/java/ — Maven; Foreign Function & Memory API over xberg-ffi
  • packages/csharp/ — NuGet; P/Invoke over xberg-ffi
  • packages/elixir/ — Hex; Rustler NIF (workspace member at packages/elixir/native/xberg_rustler)

Tools (tools/)

  • tools/e2e-generator — reads JSON fixtures, generates runnable test suites per language into e2e/
  • tools/benchmark-harness — criterion-based benchmark runner
Repository
xberg-io/xberg
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.