A library for ATProtocol identities.

documentation: Updating CLAUDE.md

Signed-off-by: Nick Gerakines <nick.gerakines@gmail.com>

Changed files
+7 -8
+7 -8
CLAUDE.md
··· 9 9 ## Common Commands 10 10 11 11 - **Build**: `cargo build` 12 - - **Build with CLI tools**: `cargo build --features clap --bins` 12 + - **Build with CLI tools**: `cargo build --features clap,hickory-dns --bins` 13 13 - **Run tests**: `cargo test` 14 14 - **Run specific test**: `cargo test test_name` 15 15 - **Check code**: `cargo check` ··· 21 21 All CLI tools now use clap for consistent command-line argument processing. Use `--help` with any tool for detailed usage information. 22 22 23 23 #### Identity Management 24 - - **Resolve identities**: `cargo run --features clap --bin atproto-identity-resolve -- <handle_or_did>` 25 - - **Resolve with DID document**: `cargo run --features clap --bin atproto-identity-resolve -- --did-document <handle_or_did>` 24 + - **Resolve identities**: `cargo run --features clap,hickory-dns --bin atproto-identity-resolve -- <handle_or_did>` 25 + - **Resolve with DID document**: `cargo run --features clap,hickory-dns --bin atproto-identity-resolve -- --did-document <handle_or_did>` 26 26 - **Generate keys**: `cargo run --features clap --bin atproto-identity-key -- generate p256` (supports p256, p384, k256) 27 27 - **Sign data**: `cargo run --features clap --bin atproto-identity-sign -- <did_key> <json_file>` 28 28 - **Validate signatures**: `cargo run --features clap --bin atproto-identity-validate -- <did_key> <json_file> <signature>` ··· 44 44 ## Architecture 45 45 46 46 A comprehensive Rust workspace with multiple crates: 47 - - **atproto-identity**: Core identity management with 11 modules (resolve, plc, web, model, validation, config, errors, key, storage, storage_lru, axum) 47 + - **atproto-identity**: Core identity management with 10 modules (resolve, plc, web, model, validation, config, errors, key, storage, storage_lru) 48 48 - **atproto-record**: Record signature operations and validation 49 49 - **atproto-client**: HTTP client with OAuth and identity integration 50 50 - **atproto-jetstream**: WebSocket event streaming with compression ··· 55 55 - **atproto-xrpcs-helloworld**: Complete example XRPC service 56 56 57 57 Features: 58 - - **12 CLI tools** with consistent clap-based command-line interfaces (optional via `clap` feature) 58 + - **11 CLI tools** with consistent clap-based command-line interfaces (optional via `clap` feature) 59 59 - **Rust edition 2024** with modern async/await patterns 60 60 - **Comprehensive error handling** with structured error types 61 61 - **Full test coverage** with unit tests across all modules 62 62 - **Modern dependencies** for HTTP, DNS, JSON, cryptographic operations, and WebSocket streaming 63 - - **Storage abstractions** with LRU caching support (optional via `lru` feature) 64 - - **Axum integration** for web framework support (optional via `axum` feature) 63 + - **Storage abstractions** with LRU caching support (enabled by default via `lru` feature) 64 + - **DNS resolution** with Hickory DNS support (enabled by default via `hickory-dns` feature) 65 65 - **Secure memory handling** (optional via `zeroize` feature) 66 66 67 67 ## Error Handling ··· 145 145 - **`src/key.rs`**: Cryptographic key operations including signature validation and key identification for P-256, P-384, and K-256 curves 146 146 - **`src/storage.rs`**: Storage abstraction interface for DID document caching 147 147 - **`src/storage_lru.rs`**: LRU-based storage implementation (requires `lru` feature) 148 - - **`src/axum.rs`**: Axum web framework integration (requires `axum` feature) 149 148 150 149 ### CLI Tools (require --features clap) 151 150