Version0.9.1Verifiednot yet verifiedLicenseBSD-3-Clause

sigil-jwt

JSON Web Token library for Sigil

Report a bug or suggest a feature
Readme

sigil-jwt

A Sigil library for creating and verifying JSON Web Tokens (JWT) with HMAC-SHA256 signatures.

Features

  • Token creation -- sign claims with HS256
  • Token verification -- validate signature and expiration
  • Unsafe decoding -- inspect claims without verification (e.g. to select the correct key)
  • Automatic timestamps -- iat injected at creation, exp checked at decode

Usage

Add sigil-jwt as a dependency in your package.sgl:

(from-git url: "codeberg:sigil/sigil-jwt" package: "sigil-jwt")

Then create and verify tokens:

(import (sigil jwt))

;; Create a signed token
(define token (jwt-encode '((sub . "user123")
                            (exp . 1735689600))
                          "my-secret"))

;; Verify and decode
(define claims (jwt-decode token "my-secret"))
;; => ((sub . "user123") (exp . 1735689600) (iat . ...))

;; Decode without verification
(define claims (jwt-decode-unsafe token))

Dependencies

  • sigil-stdlib
  • sigil-json
  • sigil-fp

Building

sigil deps install
sigil build
sigil test

License

BSD-3-Clause

Clone

$ git clone https://codeberg.org/sigil/sigil-jwt

Releases

v0.9.1 — latest by version, released 1 Apr 2026

All releases — 2 tags in this repository.

Source

Browse the latest source

One page per file, and every line has a permalink.

Recent commitsAtom

The last 20 commits keep a page here. Everything older lives in the clone.