Zero-overhead JWT authentication, RBAC middleware, and password hashing for the Chopin web framework.
Quick Start
use ;
use ;
// Once at server startup:
let blacklist = new;
let manager = new.with_blacklist;
init_jwt_manager;
// In a route handler, use `Auth<Claims>` as an extractor:
// async fn my_handler(auth: Auth<Claims>) -> Response { ... }
// Hash a password:
let hash = interactive.hash?;
// Revoke a token (e.g. on logout):
// blacklist.revoke(claims.jti.clone(), Some(claims.exp));