padz (library)
Core library for padz - a fast, project-aware scratch pad.
This crate provides the UI-agnostic business logic for padz. It includes:
- API Layer (
api.rs): Thin facade over commands with input normalization - Command Layer (
commands/): Pure business logic for all operations - Store Layer (
store/): Storage abstraction with FileStore and InMemoryStore implementations - Model (
model.rs): Core data types (Pad, Metadata, Scope)
Architecture
Everything in this crate is UI-agnostic:
- Functions take normal Rust arguments and return normal Rust types
- No stdout/stderr writes
- No
std::process::exitcalls - No terminal assumptions
This enables the same core to serve CLI, web API, or any other UI.
Usage
See the main padz repository for full documentation.
For the CLI tool, install padz-cli instead: