https://github.com/andreaslill/rust-integration-services
A modern, fast, and lightweight integration library written in Rust, designed for memory safety and stability.
https://github.com/andreaslill/rust-integration-services
file http integration rust schedule sftp
Last synced: 3 months ago
JSON representation
A modern, fast, and lightweight integration library written in Rust, designed for memory safety and stability.
- Host: GitHub
- URL: https://github.com/andreaslill/rust-integration-services
- Owner: AndreasLill
- License: mit
- Created: 2025-04-24T20:49:04.000Z (12 months ago)
- Default Branch: master
- Last Pushed: 2025-08-22T17:58:06.000Z (8 months ago)
- Last Synced: 2025-08-22T20:07:48.143Z (8 months ago)
- Topics: file, http, integration, rust, schedule, sftp
- Language: Rust
- Homepage:
- Size: 229 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Rust Integration Services
A modern, fast, and lightweight integration library written in Rust, designed for memory safety and stability. It simplifies the development of scalable integrations for receiving and sending data, with built-in support for common protocols.
[](https://crates.io/crates/rust-integration-services)

[](https://docs.rs/rust-integration-services)
[](https://github.com/AndreasLill/rust-integration-services#license)
## Installation
Add rust-integration-services to your project Cargo.toml with all or select features.
**All features**
``` toml
[dependencies]
tokio = { version = "1.47.1", features = ["full"] }
rust-integration-services = { version = "0.4.1", features = ["full"] }
```
**With select features**
``` toml
[dependencies]
tokio = { version = "1.47.1", features = ["full"] }
rust-integration-services = { version = "0.4.1", features = ["file", "schedule", "sftp", "http", "smtp", "s3"] }
```
## Features
### File
[Examples](https://github.com/AndreasLill/rust-integration-services/blob/master/src/file/examples.md)
The file module focus on the local file system and is useful for polling files in a directory, copying, moving or writing to a file.
### Http
[Examples](https://github.com/AndreasLill/rust-integration-services/blob/master/src/http/examples.md)
The http module is built on top of the fast and reliable [`hyper`](https://crates.io/crates/hyper) crate, and routing is handled using [`matchit`](https://crates.io/crates/matchit) crate.
It supports both **HTTP/1.1** and **HTTP/2** protocols, enabling modern, high-performance HTTP communication with automatic protocol negotiation via ALPN (Application-Layer Protocol Negotiation) with dynamic routing for REST.
### Sftp
[Examples](https://github.com/AndreasLill/rust-integration-services/blob/master/src/sftp/examples.md)
The sftp module is built on top of the low-level [`russh`](https://crates.io/crates/russh) and [`russh-sftp`](https://crates.io/crates/russh-sftp) crates.
These crates provide direct access to the SSH transport layer and the SFTP protocol, giving full control over connection management, authentication, and file transfer operations.
### Smtp
The SMTP module is built on top of the reliable [`lettre`](https://crates.io/crates/lettre) crate.
`lettre` provides an asynchronous, rust-native SMTP support for secure connections via TLS.
### Schedule
[Examples](https://github.com/AndreasLill/rust-integration-services/blob/master/src/schedule/examples.md)
The schedule module assist in scheduling tasks over time, such as hourly, daily or weekly.
During downtime or maintenance it calculates the next scheduled time automatically on resume.