Module API reference
One page per shipped module, generated from the module's own doc comments. This is the exact, always-current public surface (every exported function, struct, enum, and constant). For prose, rationale, and runnable examples, see the module guides.
The whole reference as a single PDF: jennifer-module-api.pdf.
| Module | Summary |
|---|---|
acme | An ACME (RFC 8555) client: obtain and renew TLS certificates from Let's Encrypt and compatible CAs. |
amqp | An AMQP 0-9-1 client over net for RabbitMQ and compatible brokers. |
ansi | Terminal styling as explicit string wrappers. |
args | A declarative command-line argument parser, at the common surface of Python's argparse plus the features an argparse user misses immediately: typed flags (long + short), defaults, required args, ... |
barcode | Generate scannable barcodes as images (not printer commands - the complement to label, which emits printer-native barcode commands). |
bloom | A Bloom filter: a compact, probabilistic set. |
cron | Parse and evaluate cron expressions - the five-field schedule spec minute hour day-of-month month day-of-week. |
csv | RFC 4180 comma-separated values: parse text into rows of fields and format rows back into text, with a quoting-aware hand-written scanner. |
discord | Post messages to a Discord channel through a channel Webhook, on top of the http client - a sibling of gotify / slack. |
docblock | A Jennifer doc-comment parser. |
dot | Graphviz DOT graph description: build a graph of nodes and edges with attributes and render it to .dot text for an external Graphviz tool to lay out and draw (dot -Tsvg graph.dot > graph.svg). |
dotenv | Read .env configuration files - the KEY=VALUE lines that keep secrets and settings out of source - with layered profiles and ${VAR} interpolation. |
feed | Web syndication feeds: build and parse both RSS 2.0 and Atom 1.0 through one module. |
flatdb | A file-backed JSON document store. |
font | A pure-Jennifer TrueType / OpenType (SFNT) font parser: read a .ttf / .otf from bytes and expose its metrics, character map, and glyph outlines. |
gotify | Push notifications to a Gotify server (https://gotify.net), on top of the http client. |
gpio | Raspberry-Pi (and any Linux SBC) GPIO over sysfs. |
graphql | A thin GraphQL client over http / rest. |
html | Build an HTML element tree and render it to a correctly escaped HTML5 string. |
http | An HTTP/1.1 client over the net system library. |
ical | Build and parse iCalendar (RFC 5545): a Calendar holding Events (VEVENT) and Todos (VTODO), encoded to a VCALENDAR and parsed back. |
idna | Internationalized domain names: convert a Unicode domain to its ASCII-compatible (xn--) form and back, over a Punycode (RFC 3492) core. |
imap | An IMAP4rev1 client (RFC 3501): tagged commands and untagged "*" responses over the net system library, with plaintext / implicit TLS / STARTTLS and auth by LOGIN, XOAUTH2, CRAM-MD5, or SCRAM-SHA... |
influxdb | An InfluxDB client over http for both major API generations: write measurements as line-protocol points and run queries, getting back a parsed result. |
ipnet | IP addresses and CIDR networks, IPv4 and IPv6. |
jsonl | JSON Lines (JSONL / NDJSON): newline-delimited JSON, one independent value per line. |
jsonrpc | JSON-RPC 2.0 (https://www.jsonrpc.org/specification) over HTTP: a client that calls remote methods, and a transport-agnostic server handle that dispatches an incoming request to the entry... |
jwt | JSON Web Tokens (RFC 7519): sign, verify, and decode compact JWTs. |
kvstore | A backend selector for a key/value store with per-key TTL: one Store value is one of three backends - a memcache connection, a redis connection, or the in-process kv library - and dispatche... |
label | Describe and print labels for industrial label printers. |
ldap | An LDAP v3 client and a lightweight, read-only directory server (RFC 4511), over TCP with the wire messages built and parsed as ASN.1 BER (the asn1 library) on the net transport. |
log | Leveled, structured logging. |
markdown | A lightweight Markdown renderer for a small CommonMark subset: ATX headings, bold / italic emphasis, inline code, links, images, fenced code blocks, unordered / ordered lists (nested by indenta... |
mcp | Model Context Protocol (https://modelcontextprotocol.io) - the stateless JSON-RPC 2.0 surface an LLM host and an MCP peer speak. |
memcache | A client for a memcached server, speaking its classic text protocol over the net system library. |
mikrotik | A MikroTik RouterOS API client over net (not SSH). |
mime | Build and parse MIME messages (RFC 5322 headers + RFC 2045/2046 bodies): a header-and-boundary structure that is exactly the text orchestration a .j module does well. |
mqtt | An MQTT 3.1.1 publish/subscribe client over the net system library - the same "protocol clients are modules, net is the transport" line the other network clients follow. |
multipart | Build and parse multipart/form-data bodies (RFC 7578) - the file-upload counterpart to mime's email multipart. |
ntp | A simple SNTP client (RFC 4330 / 5905): query a time server over UDP and get back its time plus the local clock offset and round-trip delay. |
oauth | A generic OAuth2 client: the get-a-token half of OAuth2 (the use-a-token half is sasl XOAUTH2). |
orm | A minimal relational mapper over the sql library. |
password | Password generation, validation, and complexity scoring against a policy schema. |
pdf | Generate PDF documents - text, lines, rectangles - the way html / label generate their formats. |
plot | Data plotting to SVG: turn numbers into a self-contained <svg> chart string you can write to a .svg file or drop into HTML. |
pop | A POP3 receive client (RFC 1939): the line-oriented status dialogue ("+OK" / "-ERR") over the net system library, with plaintext, implicit TLS, or STLS, and auth by USER / PASS, XOAUTH2, CRAM-MD5... |
prometheus | A Prometheus metrics module in two halves. |
ratelimit | A rate limiter over a selectable key/value backend (kvstore.Store - memcache, redis, or the in-process kv). |
redis | A Redis client speaking RESP2 (the REdis Serialization Protocol) over the net system library. |
resque | Background jobs on Redis, wire-compatible with Resque. |
rest | An ergonomic REST layer over the http client and json. |
ringbuffer | A fixed-capacity ring buffer of strings: a bounded FIFO that overwrites the oldest entry when full. |
s3 | An S3-compatible object-storage client: get / put / delete objects and list a bucket, signing every request with AWS Signature Version 4. |
sasl | The SASL authentication mechanisms shared by the mail clients (smtp / pop / imap). |
screen | Terminal user interfaces: an explicit screen, not a GUI framework. |
semver | Strict Semantic Versioning 2.0.0 (https://semver.org): parse, compare, increment, and range-match version numbers - the full surface a package registry or dependency resolver needs. |
session | Server-side sessions over a selectable key/value backend. |
slack | Post messages to a Slack channel through an Incoming Webhook, on top of the http client - a sibling of gotify / discord. |
smtp | An SMTP send client: the line-oriented command/response dialogue of RFC 5321, over the net system library (plaintext, implicit TLS, or STARTTLS) with SASL AUTH: PLAIN, LOGIN, XOAUTH2, CRAM-MD5, a... |
snmp | An SNMP v1 / v2c client and agent (RFC 1157 / RFC 3416), over UDP with community-string authentication. |
sqlmigrate | A version-tracked schema-migration runner over the sql library. |
statsd | A StatsD client (over UDP): emit metric:value|type lines for a StatsD / Datadog / Telegraf agent to aggregate. |
telegram | A Telegram Bot API client over the http client + json. |
tengine | A small text template engine for lightweight CMS-style rendering - a subset of Go's text/template (the Go / Hugo style), evaluated directly over a json.Value data tree. |
totp | Time-based one-time passwords (RFC 6238 TOTP over RFC 4226 HOTP) - the six-digit two-factor codes authenticator apps show. |
transport | The shared connection-transport security mode, used by every network-client module that opens a socket (smtp, pop, imap, redis, amqp, mqtt). |
uri | URL parsing, building, and query-string handling (RFC 3986). |
validate | Declarative validation of a map of string to string (a form body, a query, a config) against a rule set, returning a structured error list instead of ad-hoc per-field if checks. |
vcard | Build and parse vCard (RFC 6350, vCard 4.0): a Card of contact fields encoded to a VCARD and parsed back. |
web | An ergonomic HTTP framework over the httpd server engine. |
webapi | A JSON-API conventions layer over the bundled web module. |
webhook | Sign and verify HMAC-signed webhooks - the GitHub-style X-Hub-Signature-256 convention. |
websocket | An RFC 6455 WebSocket client over net. |