clarify

Crates.ioclarify
lib.rsclarify
version0.1.1
created_at2025-12-21 22:22:44.843256+00
updated_at2025-12-21 22:28:34.387196+00
descriptionA powerful and flexible JSON validation library for Rust with multi-language support
homepagehttps://codeberg.org/luangotardo/Clarify
repositoryhttps://codeberg.org/luangotardo/Clarify.git
max_upload_size
id1998679
size114,768
Luan G. (lugotardo)

documentation

https://codeberg.org/luangotardo/Clarify/src/branch/main/docs/en/README.md

README

Clarify JSON Validator

A powerful and flexible JSON validation library for Rust with multi-language support.

🇺🇸 English Documentation | 🇧🇷 Documentação em Português

Features

  • ✅ Multi-language Support: English (default) and Portuguese
  • ✅ Detailed Error Messages: Clear and actionable error descriptions
  • ✅ Type-Safe: Strongly typed error structures
  • ✅ Extensible: Easy to add new error types and languages
  • ✅ Framework Integration: Optional Axum support
  • ✅ Zero-Cost Abstractions: Minimal runtime overhead

Quick Start

use clarify::json_validator::*;

fn main() {
    // English (default)
    let error = MissingFieldError::new("email".to_string());
    let result: ValidationResult = error.into();
    println!("{}", result.user_message);
    // Output: "Incomplete request data"
    
    // Portuguese
    let error_pt = MissingFieldError::new_with_lang(
        "email".to_string(), 
        Language::Pt
    );
    let result_pt: ValidationResult = error_pt.into();
    println!("{}", result_pt.user_message);
    // Output: "Dados incompletos na requisição"
}

Installation

[dependencies]
clarify = "0.1.0"

# With Axum integration
clarify = { version = "0.1.0", features = ["axum"] }

Documentation

Examples

See the examples directory for more usage examples.

Contributing

Contributions are welcome! Please check our contributing guidelines.

License

MIT License - see LICENSE file for details.

Author

Luan Costa

Commit count: 0

cargo fmt