gwt

Encode and decode JWTs.

Package Version Hex Docs

Quickstart

import gwt.{type Jwt, type Verified, type Unverified}

pub fn main() {
 let jwt = 
   gwt.new()
   |> gwt.set_subject("1234567890")
   |> gwt.set_audience("0987654321")
   |> gwt.set_not_before(1_704_043_160)
   |> gwt.set_expiration(1_704_046_160)
   |> gwt.set_jwt_id("2468")

 let jwt_without_signature = gwt.to_string(jwt)
 let jwt_with_signature = gwt.to_signed_string(jwt, gwt.HS256, "lucy")

 let assert Ok(unverified_jwt) = 
   jwt_without_signature
   |> gwt.from_string()

 let assert Ok(verified_jwt) = 
   jwt_with_signature
   |>gwt.from_signed_string("lucy")
}

Installation

gleam add gwt 

The documentation can be found at https://hexdocs.pm/gwt.

Search Document