MCPcopy Index your code
hub / github.com/elastio/devx

github.com/elastio/devx @v0.5.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.5.0 ↗ · + Follow
65 symbols 123 edges 6 files 39 documented · 60%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

devx

<a alt="GitHub Actions" href="https://github.com/elastio/devx/actions">
    <img src="https://github.com/elastio/devx/workflows/ci/badge.svg"/>
</a>
<a alt="Master docs" href="https://elastio.github.io/devx/devx_cmd/index.html">
    <img src="https://img.shields.io/badge/docs-master-green.svg"/>
</a>

Devx is a collection of utilities for writing your own dev scripts in Rust. The project is inspired by and intended for seamless usage with cargo-xtask idioms (you are highly encouraged to study them first).

Most notably it provides convenient APIs for: - Spawing and interacting with external processes devx-cmd - Creating git pre-commit hooks that enforce good practices devx-pre-commit

Crate map

Crate docs.rs crates.io
devx-cmd
devx-pre-commit

Goals

All devx crates take a convenience-first approach. The goal is to provide developer-friendly, and laconic APIs as well as the shortest possible compile times.

In particular, this implies: - Batteries-included - A vanishingly small amount of dependencies - Using concrete types and a limited amount of generics - Logging is included - Opaque dynamic errors - Less borrowed and non-thread-safe types

The non-goals are - Performance and robust consistency - Usage in highly non-standard projects. Instead, we expect cargo layout and sane project configurations. Ideally, devx and cargo-xtask might become a framework for enforcing good practices for Rust projects development.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this project by you, as defined in the Apache-2.0 license, shall be dually licensed as above, without any additional terms or conditions.

Extension points exported contracts — how you extend this code

Context (Interface)
(no doc) [1 implementers]
devx-cmd/src/error.rs

Core symbols most depended-on inside this repo

as_mut
called by 11
devx-cmd/src/lib.rs
arg
called by 4
devx-cmd/src/lib.rs
wait
called by 4
devx-cmd/src/lib.rs
spawn
called by 3
devx-cmd/src/lib.rs
cmd_context
called by 3
devx-cmd/src/error.rs
as_ref
called by 2
devx-cmd/src/lib.rs
current_dir
called by 2
devx-cmd/src/lib.rs
stdin
called by 2
devx-cmd/src/lib.rs

Shape

Method 51
Function 6
Class 5
Enum 2
Interface 1

Languages

Rust100%

Modules by API surface

devx-cmd/src/lib.rs42 symbols
devx-pre-commit/src/lib.rs11 symbols
devx-cmd/src/error.rs8 symbols
xtask/src/pre_commit.rs2 symbols
xtask/src/main.rs1 symbols
xtask/src/lib.rs1 symbols

For agents

$ claude mcp add devx \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact