slugi

Crates.ioslugi
lib.rsslugi
version0.1.1
created_at2025-10-04 15:21:11.197695+00
updated_at2025-10-04 15:35:22.972454+00
descriptionA simple Rust library to slugify text (e.g., 'Café au lait' → 'cafe_au_lait').
homepage
repositoryhttps://github.com/yourusername/slugify
max_upload_size
id1867991
size4,370
(Omchaudhary2004)

documentation

README

slugi

Crates.io Docs.rs License

A simple, lightweight Rust library for turning text into URL-safe slugs.
Inspired by tools like Python’s slugify, but designed for idiomatic Rust usage. GITHUBLINK

https://github.com/Omchaudhary2004/slugify

✨ Features

  • Convert accented characters (Café → cafe)
  • Lowercase all text
  • Replace spaces with _
  • Keep only ASCII alphanumeric characters and underscores
  • Tiny, dependency-free implementation

📦 Installation

Add slugi to your Cargo.toml:

[dependencies]
slugi = "0.1"

Or install directly with Cargo:

cargo add slugi

🚀 Usage

use slugi::slugify;

fn main() {
    let text = "Café au lait! 2025";
    let slug = slugify(text);
    println!("Original: {}", text);
    println!("Slugified: {}", slug);
    // Output: cafe_au_lait_2025
}

📖 Documentation

Full API docs are available at docs.rs/slugi .

✅ Roadmap

Support for more diacritics

Configurable replacement character (- instead of _)

Optional Unicode normalization

🤝 Contributing

Contributions, issues, and feature requests are welcome! Feel free to check the issues page .

Fork the repo

Create a new branch (git checkout -b feature/my-feature)

Commit changes (git commit -m 'Add my feature')

Push to the branch (git push origin feature/my-feature)

Open a Pull Request

Commit count: 0

cargo fmt