surt-rs

Crates.iosurt-rs
lib.rssurt-rs
version0.1.1
sourcesrc
created_at2024-03-23 13:52:59.089568
updated_at2024-04-01 14:27:34.030198
descriptionA Rust implementation of the Sort-friendly URI Reordering Transform (SURT)
homepagehttps://github.com/mijho/surt-rs
repository
max_upload_size
id1183543
Mark Johnson

documentation

https://github.com/mijho/surt-rs/blob/main/README.md

README

# Rust SURT This library provides a Rust implementation for generating a Sort-friendly URI Reordering Transform (SURT) from a given URL. These are predominantly used in the Web Archiving world to provide a normalised and sortable variant of a URL for use at replay time. ## Usage ```rust use surt_rs::generate_surt; let url = "http://example.com/path?query=value#fragment"; let surt = generate_surt(url).unwrap(); println!("{}", surt); // prints: "com,example)/path?query=value#fragment" ``` ## Functions ### `generate_surt(url: &str) -> Result` Generates a SURT from the given URL. Returns a `Result` that contains the SURT as a `String` if the URL is valid, or a `ParseError` if the URL is not valid. ### `normalize_surt(surt: &str) -> String` Normalizes the given SURT by replacing whitespace with '%20' and removing trailing slashes unless it's the root path. ### `normalize_url(url: &str) -> String` Normalizes the given URL by removing trailing slashes and the 'www.' subdomain after the scheme. ## License This project is licensed under the MIT License.
Commit count: 0

cargo fmt