slugi 0.1.1

A simple Rust library to slugify text (e.g., 'Café au lait' → 'cafe_au_lait').
Documentation
  • Coverage
  • 50%
    1 out of 2 items documented0 out of 1 items with examples
  • Size
  • Source code size: 3.88 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 1 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Links
  • Repository
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • Omchaudhary2004

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