# Rusty Cookie Crate `rusty_cookie` is a Rust crate that provides a simple and flexible way to create, manage, and handle cookies with various configuration options. This crate offers attributes such as `SameSite`, `Secure`, `HttpOnly`, and more to ensure cookies are configured properly for privacy and security. ## Features - **Secure Cookies**: Ensures cookies are sent over HTTPS. - **HttpOnly Cookies**: Protects cookies from client-side JavaScript access. - **SameSite Policy**: Controls whether cookies are sent with cross-site requests. - **Expiration and Max-Age**: Allows you to set expiration times for cookies. - **Path-based Cookies**: Assign cookies to specific URL paths. - **Custom Cookie Properties**: You can specify different properties for cookies, such as security level. ## Installation To use `rusty_cookie` in your project, add the following dependency in your `Cargo.toml`: ```rust [dependencies] rusty_cookie = "0.1.2" ``` ```rust use rusty_cookie::Cookie; fn main() { let cookie = Cookie::new() .key("secure_code") // The key (name) of the cookie .value("rt8uygyiuiouhopijuhu8yu8ui") // The value of the cookie .http_only(true) // Make the cookie HttpOnly (cannot be accessed via JavaScript) .same_site(SameSite::Lax) // Set the SameSite policy (Lax, Strict, None) .max_age(3600) // Set the cookie's Max-Age (in seconds) .path("/") // Set the cookie's path to root .properties(Properties::High) // Set cookie's properties (Low, Medium, High) .secure(true) // Mark the cookie as secure (sent only over HTTPS) .build(); // Build the cookie } ``` ```output Set-Cookie: secure_code=rt8uygyiuiouhopijuhu8yu8ui; HttpOnly; SameSite=Lax; Secure; Path=/; Max-Age=3600; Priority=High; ```