feat: initialize K-Shrink workspace with multiple crates for image shrinking utility

- Add Cargo.toml for workspace configuration with dependencies.
- Create README.md with project description, usage, and architecture details.
- Implement `bin` crate for the main executable, including clipboard processing logic.
- Add `config` crate for handling configuration in TOML format.
- Develop `lib` crate containing core image processing logic and error handling.
- Introduce `platform` crate for platform-specific clipboard interactions, starting with Wayland.
- Implement tests for image shrinking functionality and clipboard interactions.
This commit is contained in:
2026-03-17 21:50:13 +01:00
commit 271d55ba57
18 changed files with 2788 additions and 0 deletions

18
crates/bin/Cargo.toml Normal file
View File

@@ -0,0 +1,18 @@
[package]
name = "k-shrink"
version = "0.1.0"
edition = "2024"
default-run = "k-shrink"
[dependencies]
thiserror = { workspace = true }
tracing = { workspace = true }
tracing-subscriber = "0.3"
tokio = { version = "1", features = ["full"] }
lib = { path = "../lib" }
platform = { path = "../platform" }
config = { path = "../config" }
[dev-dependencies]
tokio = { version = "1", features = ["full"] }
image = { version = "0.25.10", features = ["webp"] }