A clean and elegant Rust SDK for content sharing services (URL, Text, File) using the S.EE API.
see-sdk is a Rust client library specifically designed for the S.EE content sharing service. It provides a type-safe and easy-to-use API that allows you to easily integrate URL shortening, text sharing, and file sharing functionality into your Rust applications. Whether you need simple content sharing or advanced features like custom aliases, expiration times, and tag management, this SDK has you covered.
- 🚀 Clean & Intuitive - Fluent API design that's easy to understand and use
- 🔒 Type-Safe - Complete type checking and error handling
- ⚙️ Flexible Configuration - Support for timeout, retry, custom domains, and more
- 📁 Multi-Format Support - Unified support for URL shortening, text sharing, and file sharing
- 🏷️ Feature Complete - Support for tag management, domain management, content deletion, and more
- 📦 Lightweight Dependencies - Minimal dependencies for fast compilation
- ✅ Well-Tested - Comprehensive unit tests and documentation
Add this to your Cargo.toml:
[dependencies]
see-sdk = "1.1.0"And then run cargo build to download and compile the crate. For the latest version, check out the crates.io page.
For comprehensive usage examples covering all features, please refer to the examples/ directory in this repository.
Available examples include:
- basic.rs: Basic URL shortening operations
- advanced.rs: Advanced features like custom aliases and expiration
- files.rs: File upload and management operations
- text.rs: Text sharing and pastebin functionality
- batch.rs: Batch processing capabilities
You can run any example using cargo:
# Export your API key first
export SEE_API_KEY="your-api-key"
# Run a specific example
cargo run --example basicRun the test suite:
# Run all tests
cargo test
# Run specific tests (requires API Key environment variable)
export SEE_API_KEY="your-api-key"
cargo test -- --nocaptureBuild examples:
cargo build --examplesThis project is licensed under the MIT License. See the LICENSE file for details.
Contributions are welcome! If you find bugs or have feature suggestions, please submit an Issue or Pull Request.