···3838git add path/to/file ...
3939git commit -m "Description of changes"
40404141-# 5. Send them back to the upstream repos
4141+# 5. Lint: missing/unused opam deps and stale generated root files
4242+monopam lint
4343+4444+# 6. Send them back to the upstream repos
4245monopam push
4346```
4447···65683. **Commit** your changes: `git add <files>` for the specific paths you
6669 touched, then `git commit` (avoid `git add -A` — concurrent sessions
6770 may have staged unrelated work)
6868-4. **Push**: `monopam push` to send them upstream
7171+4. **Lint**: `monopam lint` to flag missing/unused opam deps and stale
7272+ generated root files (run `monopam lint --fix` to regenerate)
7373+5. **Push**: `monopam push` to send them upstream
69747075## Important Notes
7176
+53-53
README.md
···4455| Repository | Package | Synopsis |
66|------------|---------|----------|
77+| **.** | atproto-handle | ATProto handle syntax and resolution |
88+| | atproto-oauth | ATProto OAuth: client, discovery, and session management |
99+| | auth | User authentication and session management for web applications |
1010+| | cache | Generic TTL-based cache with Eio support |
1111+| | ccsds | CCSDS Protocol Suite for OCaml |
1212+| | cgr | Contact Graph Routing for time-varying satellite networks |
1313+| | crc | CRC checksums for OCaml |
1414+| | crdt | Conflict-free Replicated Data Types |
1515+| | demod | BPSK/QPSK demodulation with carrier and timing recovery |
1616+| | did | Decentralized Identifiers (DIDs) per W3C DID Core 1.0 |
1717+| | did-plc | did:plc method resolver for the Public Ledger of Credentials |
1818+| | did-web | did:web method resolver per W3C DID Method: Web |
1919+| | dns-eio | Eio-native DNS client on top of the dns protocol library |
2020+| | dsp | Digital signal processing primitives |
2121+| | dupfind | Duplicate code detection for OCaml |
2222+| | fdir | Integrity monitoring for kernel isolation structures |
2323+| | freebox | OCaml client for the Freebox router API |
2424+| | hap | HomeKit Accessory Protocol (HAP) for OCaml |
2525+| | http | HTTP types: headers, status codes, methods, bodies, MIME types |
2626+| | jailhouse | Jailhouse partitioning hypervisor configuration |
2727+| | linkedin | OCaml client for the LinkedIn Voyager API |
2828+| | matter | Matter protocol implementation for OCaml |
2929+| | monopam-info | Git commit hash version for OCaml CLIs |
3030+| | mst | Generic Merkle Search Tree |
3131+| | oci | OCaml library and CLI for OCI and Docker image manipulation |
3232+| | openamp | OpenAMP remoteproc interface for asymmetric multiprocessing |
3333+| | pbkdf2 | PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) |
3434+| | pid1 | Minimal OCaml PID 1 primitives for VM init processes |
3535+| | precommit | Pre-commit hook initialization for OCaml projects |
3636+| | respond | Eio HTTP server with static file serving and route handlers |
3737+| | retry | Generic retry logic with exponential backoff |
3838+| | rpmsg | RPMsg inter-partition messaging over shared memory |
3939+| | rtlsdr | RTL-SDR IQ sample reader |
4040+| | slack | OCaml client for the Slack Web API |
4141+| | spake2 | SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange |
4242+| | srp | SRP-6a Secure Remote Password protocol |
4343+| | tty | Terminal styling and layout widgets |
4444+| | tty-eio | Eio bindings for tty progress bars |
4545+| | vec3 | 3D vectors for astrodynamics and rendering |
4646+| | websocket | WebSocket frame codec (RFC 6455) |
4747+| | zephyr | Virtio-serial port IO for guest VMs |
748| [**bottler**](https://tangled.org/gazagnaire.org/bottler) | bottler | Homebrew bottle builder and tap manager for OCaml monorepos |
849| [**ca-certs**](https://tangled.org/gazagnaire.org/ca-certs) | ca-certs | Detect root CA certificates from the operating system |
99-| [**dupfind**](https://tangled.org/gazagnaire.org/dupfind) | dupfind | Duplicate code detection for OCaml |
1050| [**irmin**](https://tangled.org/gazagnaire.org/irmin) | irmin | Content-addressable store with Git and ATProto MST support |
1151| [**kdf**](https://tangled.org/gazagnaire.org/kdf) | kdf | Key Derivation Functions: HKDF RFC 5869, PBKDF RFC 2898, SCRYPT RFC 7914 |
1212-| [**memtrace**](https://tangled.org/gazagnaire.org/memtrace) | memtrace | Streaming client for Memprof |
5252+| [**memtrace**](https://github.com/janestreet/memtrace.git) | memtrace | Streaming client for Memprof |
1353| [**merlint**](https://tangled.org/gazagnaire.org/merlint) | merlint | OCaml linter enforcing modern coding conventions |
1414-| [**monopam**](https://tangled.org/gazagnaire.org/monopam) | monopam | Monorepo manager for OCaml packages |
1515-| [**monopam-info**](https://tangled.org/gazagnaire.org/monopam-info) | monopam-info | Git commit hash version for OCaml CLIs |
5454+| [**monopam**](https://tangled.org/anil.recoil.org/monopam) | monopam | Monorepo manager for OCaml packages |
1655| [**ocaml-adm**](https://tangled.org/gazagnaire.org/ocaml-adm) | adm | CCSDS 504.0-B Attitude Data Messages parser and serializer |
1756| [**ocaml-aem**](https://tangled.org/gazagnaire.org/ocaml-aem) | aem | CCSDS 504.0-B Attitude Ephemeris Message parser and serializer |
1857| [**ocaml-agent**](https://tangled.org/gazagnaire.org/ocaml-agent) | agent | Autonomous Claude Code agent for OCaml projects |
1958| [**ocaml-aos**](https://tangled.org/gazagnaire.org/ocaml-aos) | aos | CCSDS AOS Transfer Frames (CCSDS 732.0-B-4) |
2059| [**ocaml-arp**](https://tangled.org/gazagnaire.org/ocaml-arp) | arp | Pure OCaml ARP table lookup |
2121-| [**ocaml-atp**](https://tangled.org/gazagnaire.org/ocaml-atp) | atp | AT Protocol IPLD implementation for OCaml |
6060+| [**ocaml-atp**](https://tangled.org/anil.recoil.org/ocaml-atp) | atp | AT Protocol IPLD implementation for OCaml |
2261| | atp-lexicon-atproto | AT Protocol core lexicon types for OCaml |
2362| | atp-lexicon-bsky | Bluesky lexicon types for OCaml |
2463| | atp-lexicon-standard-site | Standard Site lexicon types for OCaml |
···3170| | standard-site | Standard Site client library and CLI for AT Protocol |
3271| | tangled | Tangled client library and CLI for AT Protocol |
3372| | xrpc-auth | Authentication helpers for AT Protocol CLIs |
3434-| [**ocaml-atproto-handle**](https://tangled.org/gazagnaire.org/ocaml-atproto-handle) | atproto-handle | ATProto handle syntax and resolution |
3535-| [**ocaml-atproto-oauth**](https://tangled.org/gazagnaire.org/ocaml-atproto-oauth) | atproto-oauth | ATProto OAuth: client, discovery, and session management |
3636-| [**ocaml-auth**](https://tangled.org/gazagnaire.org/ocaml-auth) | auth | User authentication and session management for web applications |
3773| [**ocaml-ax25**](https://tangled.org/gazagnaire.org/ocaml-ax25) | ax25 | AX.25 Amateur Radio Link-Layer Protocol |
3874| [**ocaml-block**](https://tangled.org/gazagnaire.org/ocaml-block) | block | Block device abstraction for OCaml 5 with Eio |
3975| [**ocaml-bloom**](https://tangled.org/gazagnaire.org/ocaml-bloom) | bloom | Bloom filters for OCaml |
4076| [**ocaml-bpsec**](https://tangled.org/gazagnaire.org/ocaml-bpsec) | bpsec | Bundle Protocol Security (RFC 9172) |
4177| [**ocaml-btree**](https://tangled.org/gazagnaire.org/ocaml-btree) | btree | Pure OCaml B-tree implementation for persistent storage |
4278| [**ocaml-bundle**](https://tangled.org/gazagnaire.org/ocaml-bundle) | bundle | Bundle Protocol Version 7 (RFC 9171) |
4343-| [**ocaml-bytesrw-eio**](https://tangled.org/gazagnaire.org/ocaml-bytesrw-eio) | bytesrw-eio | Bytesrw readers and writers for Eio |
4444-| [**ocaml-cache**](https://tangled.org/gazagnaire.org/ocaml-cache) | cache | Generic TTL-based cache with Eio support |
7979+| [**ocaml-bytesrw-eio**](https://tangled.org/anil.recoil.org/ocaml-bytesrw-eio) | bytesrw-eio | Bytesrw readers and writers for Eio |
4580| [**ocaml-cam**](https://tangled.org/gazagnaire.org/ocaml-cam) | cam | Collision Avoidance Maneuver design for conjunction assessment |
4681| [**ocaml-cbor**](https://tangled.org/gazagnaire.org/ocaml-cbor) | cbor | Native CBOR codec with type-safe combinators |
4747-| [**ocaml-ccsds**](https://tangled.org/gazagnaire.org/ocaml-ccsds) | ccsds | CCSDS Protocol Suite for OCaml |
4882| [**ocaml-cdm**](https://tangled.org/gazagnaire.org/ocaml-cdm) | cdm | Conjunction Data Message (CCSDS 508.0-B-1) |
4983| [**ocaml-cfdp**](https://tangled.org/gazagnaire.org/ocaml-cfdp) | cfdp | CCSDS File Delivery Protocol (CCSDS 727.0-B-5) |
5084| | cfdp-eio | CFDP file transfer over TCP with Eio |
5151-| [**ocaml-cgr**](https://tangled.org/gazagnaire.org/ocaml-cgr) | cgr | Contact Graph Routing for time-varying satellite networks |
5252-| [**ocaml-claude**](https://tangled.org/gazagnaire.org/ocaml-claude) | claude | OCaml client library for Claude Code |
5385| [**ocaml-claude-skills**](https://tangled.org/gazagnaire.org/ocaml-claude-skills) | ocaml-claude-skills | Claude Code skills marketplace for OCaml monorepo workflows |
8686+| [**ocaml-claudeio**](https://tangled.org/anil.recoil.org/ocaml-claudeio) | claude | OCaml client library for Claude Code |
5487| [**ocaml-clcw**](https://tangled.org/gazagnaire.org/ocaml-clcw) | clcw | CCSDS Command Link Control Word (CCSDS 232.1-B-2) |
5588| [**ocaml-collision**](https://tangled.org/gazagnaire.org/ocaml-collision) | collision | Collision probability computation for conjunction assessment |
5656-| [**ocaml-conpool**](https://tangled.org/gazagnaire.org/ocaml-conpool) | conpool | Protocol-agnostic TCP/IP connection pooling library for Eio |
8989+| [**ocaml-conpool**](https://tangled.org/anil.recoil.org/ocaml-conpool) | conpool | Protocol-agnostic TCP/IP connection pooling library for Eio |
5790| [**ocaml-contact**](https://tangled.org/gazagnaire.org/ocaml-contact) | contact | Satellite pass prediction and contact window computation |
5891| [**ocaml-cookie**](https://tangled.org/gazagnaire.org/ocaml-cookie) | cookie | Cookie parsing and management library |
5992| [**ocaml-coordinate**](https://tangled.org/gazagnaire.org/ocaml-coordinate) | coordinate | Astrodynamics coordinate frame transforms |
···6194| | cop1-eio | COP-1 service layer with Eio timers |
6295| [**ocaml-cose**](https://tangled.org/gazagnaire.org/ocaml-cose) | cose | CBOR Object Signing and Encryption (COSE) |
6396| [**ocaml-cpio**](https://tangled.org/gazagnaire.org/ocaml-cpio) | cpio | CPIO archive reader and writer in pure OCaml |
6464-| [**ocaml-crc**](https://tangled.org/gazagnaire.org/ocaml-crc) | crc | CRC checksums for OCaml |
6565-| [**ocaml-crdt**](https://tangled.org/gazagnaire.org/ocaml-crdt) | crdt | Conflict-free Replicated Data Types |
6697| [**ocaml-crow**](https://tangled.org/gazagnaire.org/ocaml-crow) | crow | Crowbar campaign orchestrator for AFL fuzzing |
6798| [**ocaml-crypto**](https://tangled.org/gazagnaire.org/ocaml-crypto) | crypto | Simple symmetric cryptography (fork of mirage-crypto) |
6899| | crypto-ec | Elliptic Curve Cryptography (fork of mirage-crypto-ec) |
···73104| [**ocaml-csts**](https://tangled.org/gazagnaire.org/ocaml-csts) | csts | CCSDS Cross Support Transfer Services (CSTS) |
74105| [**ocaml-csv**](https://tangled.org/gazagnaire.org/ocaml-csv) | csv | Declarative CSV codecs |
75106| [**ocaml-delegation**](https://tangled.org/gazagnaire.org/ocaml-delegation) | delegation | X.509 certificate-based hierarchical resource delegation |
7676-| [**ocaml-demod**](https://tangled.org/gazagnaire.org/ocaml-demod) | demod | BPSK/QPSK demodulation with carrier and timing recovery |
7777-| [**ocaml-did**](https://tangled.org/gazagnaire.org/ocaml-did) | did | Decentralized Identifiers (DIDs) per W3C DID Core 1.0 |
7878-| | did-plc | did:plc method resolver for the Public Ledger of Credentials |
7979-| | did-web | did:web method resolver per W3C DID Method: Web |
8080-| [**ocaml-dns-eio**](https://tangled.org/gazagnaire.org/ocaml-dns-eio) | dns-eio | Eio-native DNS client on top of the dns protocol library |
81107| [**ocaml-dpop**](https://tangled.org/gazagnaire.org/ocaml-dpop) | dpop | DPoP (RFC 9449) proof-of-possession tokens |
8282-| [**ocaml-dsp**](https://tangled.org/gazagnaire.org/ocaml-dsp) | dsp | Digital signal processing primitives |
83108| [**ocaml-erasure**](https://tangled.org/gazagnaire.org/ocaml-erasure) | erasure | CCSDS 131.5-B erasure correcting codes |
84109| [**ocaml-ewah**](https://tangled.org/gazagnaire.org/ocaml-ewah) | ewah | EWAH-compressed bitmaps (git-compatible) |
8585-| [**ocaml-fdir**](https://tangled.org/gazagnaire.org/ocaml-fdir) | fdir | Integrity monitoring for kernel isolation structures |
86110| [**ocaml-flexacm**](https://tangled.org/gazagnaire.org/ocaml-flexacm) | flexacm | CCSDS Flexible Advanced Coding and Modulation (131.2-B) |
8787-| [**ocaml-freebox**](https://tangled.org/gazagnaire.org/ocaml-freebox) | freebox | OCaml client for the Freebox router API |
88111| [**ocaml-fsr**](https://tangled.org/gazagnaire.org/ocaml-fsr) | fsr | CCSDS Frame Security Report (FSR) |
89112| [**ocaml-gauth**](https://tangled.org/gazagnaire.org/ocaml-gauth) | gauth | Google API authentication helpers: service accounts and local OAuth |
90113| [**ocaml-gdocs**](https://tangled.org/gazagnaire.org/ocaml-gdocs) | gdocs | Google Docs API client for OCaml |
91114| [**ocaml-git**](https://tangled.org/gazagnaire.org/ocaml-git) | git | Git format in pure OCaml |
92115| [**ocaml-globe**](https://tangled.org/gazagnaire.org/ocaml-globe) | globe | Reusable 3D Earth globe widget (pure OCaml + WebGL) |
93116| [**ocaml-gpt**](https://tangled.org/gazagnaire.org/ocaml-gpt) | gpt | A library to manipulate GUID Partition Tables |
9494-| [**ocaml-hap**](https://tangled.org/gazagnaire.org/ocaml-hap) | hap | HomeKit Accessory Protocol (HAP) for OCaml |
95117| [**ocaml-hcomp**](https://tangled.org/gazagnaire.org/ocaml-hcomp) | hcomp | CCSDS 123.0-B Lossless Multispectral and Hyperspectral Image Compression |
96118| [**ocaml-hkdf**](https://tangled.org/gazagnaire.org/ocaml-hkdf) | hkdf | HMAC-based Extract-and-Expand Key Derivation Function (RFC 5869) |
97119| [**ocaml-homebrew**](https://tangled.org/gazagnaire.org/ocaml-homebrew) | homebrew | Generic Homebrew primitives: formulas, taps, bottle conventions |
98120| [**ocaml-hostname**](https://tangled.org/gazagnaire.org/ocaml-hostname) | hostname | RFC 1123 hostname validation for HTTP Host headers |
9999-| [**ocaml-http**](https://tangled.org/gazagnaire.org/ocaml-http) | http | HTTP types: headers, status codes, methods, bodies, MIME types |
100121| [**ocaml-idc**](https://tangled.org/gazagnaire.org/ocaml-idc) | idc | CCSDS 122.0-B Image Data Compression |
101122| [**ocaml-initramfs**](https://tangled.org/gazagnaire.org/ocaml-initramfs) | initramfs | Build initramfs cpio archives from file and directory entries |
102102-| [**ocaml-jailhouse**](https://tangled.org/gazagnaire.org/ocaml-jailhouse) | jailhouse | Jailhouse partitioning hypervisor configuration |
103123| [**ocaml-json**](https://tangled.org/gazagnaire.org/ocaml-json) | json | Declarative JSON data manipulation for OCaml |
104124| [**ocaml-json-logs**](https://tangled.org/gazagnaire.org/ocaml-json-logs) | json-logs | JSON structured logging reporter for the Logs library |
105125| [**ocaml-jwt**](https://tangled.org/gazagnaire.org/ocaml-jwt) | jwt | JSON Web Token (JWT) and CBOR Web Token (CWT) for OCaml |
···108128| [**ocaml-ldpc**](https://tangled.org/gazagnaire.org/ocaml-ldpc) | ldpc | LDPC codes with belief propagation decoding |
109129| [**ocaml-leb128**](https://tangled.org/gazagnaire.org/ocaml-leb128) | leb128 | LEB128 variable-length integer codec |
110130| [**ocaml-lfsr**](https://tangled.org/gazagnaire.org/ocaml-lfsr) | lfsr | Linear Feedback Shift Registers for OCaml |
111111-| [**ocaml-linkedin**](https://tangled.org/gazagnaire.org/ocaml-linkedin) | linkedin | OCaml client for the LinkedIn Voyager API |
112131| [**ocaml-loc**](https://tangled.org/gazagnaire.org/ocaml-loc) | loc | Source locations and structured errors for text codecs (extracted from jsont) |
113132| [**ocaml-ltp**](https://tangled.org/gazagnaire.org/ocaml-ltp) | ltp | Licklider Transmission Protocol (RFC 5326) |
114133| | ltp-eio | Eio-based LTP segment transport |
115134| [**ocaml-mal**](https://tangled.org/gazagnaire.org/ocaml-mal) | mal | CCSDS 521.0-B-1 Mission Operations Message Abstraction Layer |
116116-| [**ocaml-matter**](https://tangled.org/gazagnaire.org/ocaml-matter) | matter | Matter protocol implementation for OCaml |
117135| [**ocaml-mbr**](https://tangled.org/gazagnaire.org/ocaml-mbr) | mbr | A library to manipulate Master Boot Records |
118136| [**ocaml-mdns**](https://tangled.org/gazagnaire.org/ocaml-mdns) | mdns | mDNS/DNS-SD service discovery (RFC 6763) |
119137| [**ocaml-merge3**](https://tangled.org/gazagnaire.org/ocaml-merge3) | merge3 | 3-way merge with Myers diff |
···121139| [**ocaml-meross**](https://tangled.org/gazagnaire.org/ocaml-meross) | meross | Meross smart plug local control over HTTP |
122140| [**ocaml-meta**](https://tangled.org/gazagnaire.org/ocaml-meta) | meta | Streaming findlib META file codec for OCaml |
123141| [**ocaml-monitor**](https://tangled.org/gazagnaire.org/ocaml-monitor) | monitor | Workload monitor for containers, unikernels, and VMs |
124124-| [**ocaml-mst**](https://tangled.org/gazagnaire.org/ocaml-mst) | mst | Generic Merkle Search Tree |
125142| [**ocaml-oauth**](https://tangled.org/gazagnaire.org/ocaml-oauth) | oauth | OAuth 2.0 authorization and token exchange |
126126-| [**ocaml-oci**](https://tangled.org/gazagnaire.org/ocaml-oci) | oci | OCaml library and CLI for OCI and Docker image manipulation |
127143| [**ocaml-ocm**](https://tangled.org/gazagnaire.org/ocaml-ocm) | ocm | CCSDS Orbit Comprehensive Message (OCM) parser |
128144| [**ocaml-odm**](https://tangled.org/gazagnaire.org/ocaml-odm) | odm | Orbit Data Messages (CCSDS 502.0-B-3) |
129145| [**ocaml-oem**](https://tangled.org/gazagnaire.org/ocaml-oem) | oem | CCSDS 502.0-B-3 Orbit Ephemeris Message parser and interpolator |
130146| [**ocaml-opam**](https://tangled.org/gazagnaire.org/ocaml-opam) | opam | Streaming opam file codec for OCaml |
131131-| [**ocaml-openamp**](https://tangled.org/gazagnaire.org/ocaml-openamp) | openamp | OpenAMP remoteproc interface for asymmetric multiprocessing |
132147| [**ocaml-opm**](https://tangled.org/gazagnaire.org/ocaml-opm) | opm | CCSDS 502.0-B Orbit Parameter Message parser and serializer |
133148| [**ocaml-osv**](https://tangled.org/gazagnaire.org/ocaml-osv) | osv | OSV.dev vulnerability database client |
134149| [**ocaml-paseto**](https://tangled.org/gazagnaire.org/ocaml-paseto) | paseto | PASETO (Platform-Agnostic Security Tokens) implementation |
135135-| [**ocaml-pbkdf2**](https://tangled.org/gazagnaire.org/ocaml-pbkdf2) | pbkdf2 | PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) |
136150| [**ocaml-pds**](https://tangled.org/gazagnaire.org/ocaml-pds) | pds | ATProto Personal Data Server storage for OCaml |
137137-| [**ocaml-pid1**](https://tangled.org/gazagnaire.org/ocaml-pid1) | pid1 | Minimal OCaml PID 1 primitives for VM init processes |
138138-| [**ocaml-precommit**](https://tangled.org/gazagnaire.org/ocaml-precommit) | precommit | Pre-commit hook initialization for OCaml projects |
139151| [**ocaml-protobuf**](https://tangled.org/gazagnaire.org/ocaml-protobuf) | protobuf | Protocol Buffers codec for hand-written schemas |
140152| [**ocaml-proximity1**](https://tangled.org/gazagnaire.org/ocaml-proximity1) | proximity1 | CCSDS Proximity-1 Space Link Protocol (211.0-B) |
141141-| [**ocaml-publicsuffix**](https://tangled.org/gazagnaire.org/ocaml-publicsuffix) | publicsuffix | Public Suffix List implementation for OCaml |
142142-| [**ocaml-punycode**](https://tangled.org/gazagnaire.org/ocaml-punycode) | punycode | RFC 3492 Punycode and IDNA implementation for OCaml |
153153+| [**ocaml-publicsuffix**](https://tangled.org/anil.recoil.org/ocaml-publicsuffix) | publicsuffix | Public Suffix List implementation for OCaml |
154154+| [**ocaml-punycode**](https://tangled.org/anil.recoil.org/ocaml-punycode) | punycode | RFC 3492 Punycode and IDNA implementation for OCaml |
143155| [**ocaml-pus**](https://tangled.org/gazagnaire.org/ocaml-pus) | pus | ECSS-E-ST-70-41C Packet Utilisation Standard |
144156| [**ocaml-qemu**](https://tangled.org/gazagnaire.org/ocaml-qemu) | qemu | QEMU/KVM virtual machine management |
145157| [**ocaml-rate-limit**](https://tangled.org/gazagnaire.org/ocaml-rate-limit) | rate-limit | Per-IP sliding window rate limiter with Eio support |
146158| [**ocaml-rdm**](https://tangled.org/gazagnaire.org/ocaml-rdm) | rdm | CCSDS 508.1-B Re-entry Data Message parser and serializer |
147159| [**ocaml-reed-solomon**](https://tangled.org/gazagnaire.org/ocaml-reed-solomon) | reed-solomon | Reed-Solomon error correction over GF(2^8) |
148160| [**ocaml-rego**](https://tangled.org/gazagnaire.org/ocaml-rego) | rego | Native OCaml Rego/OPA policy engine |
149149-| [**ocaml-requests**](https://tangled.org/gazagnaire.org/ocaml-requests) | requests | Batteries included HTTPS client library for OCaml |
150150-| [**ocaml-respond**](https://tangled.org/gazagnaire.org/ocaml-respond) | respond | Eio HTTP server with static file serving and route handlers |
151151-| [**ocaml-retry**](https://tangled.org/gazagnaire.org/ocaml-retry) | retry | Generic retry logic with exponential backoff |
161161+| [**ocaml-requests**](https://tangled.org/anil.recoil.org/ocaml-requests) | requests | Batteries included HTTPS client library for OCaml |
152162| [**ocaml-rice**](https://tangled.org/gazagnaire.org/ocaml-rice) | rice | CCSDS 121.0-B-3 Lossless Data Compression (Rice/Golomb coding) |
153153-| [**ocaml-rpmsg**](https://tangled.org/gazagnaire.org/ocaml-rpmsg) | rpmsg | RPMsg inter-partition messaging over shared memory |
154154-| [**ocaml-rtlsdr**](https://tangled.org/gazagnaire.org/ocaml-rtlsdr) | rtlsdr | RTL-SDR IQ sample reader |
155163| [**ocaml-runc**](https://tangled.org/gazagnaire.org/ocaml-runc) | runc | OCI runtime spec types and runc command wrapper |
156164| [**ocaml-s3**](https://tangled.org/gazagnaire.org/ocaml-s3) | s3 | Pure-OCaml S3 protocol client |
157165| [**ocaml-sbom**](https://tangled.org/gazagnaire.org/ocaml-sbom) | sbom | Software Bill of Materials (SBOM) generation for OCaml |
···168176| [**ocaml-sgp4**](https://tangled.org/gazagnaire.org/ocaml-sgp4) | sgp4 | SGP4/SDP4 satellite orbit propagator |
169177| [**ocaml-short-ldpc**](https://tangled.org/gazagnaire.org/ocaml-short-ldpc) | short-ldpc | CCSDS 131.4-B short block-length LDPC codes |
170178| [**ocaml-sigstore**](https://tangled.org/gazagnaire.org/ocaml-sigstore) | sigstore | Sigstore signing and verification for OCaml |
171171-| [**ocaml-slack**](https://tangled.org/gazagnaire.org/ocaml-slack) | slack | OCaml client for the Slack Web API |
172179| [**ocaml-sle**](https://tangled.org/gazagnaire.org/ocaml-sle) | sle | CCSDS Space Link Extension (SLE) protocols |
173180| | sle-eio | Eio-based SLE client |
174181| [**ocaml-space-packet**](https://tangled.org/gazagnaire.org/ocaml-space-packet) | space-packet | CCSDS 133.0-B Space Packet Protocol |
175182| [**ocaml-spacedata**](https://tangled.org/gazagnaire.org/ocaml-spacedata) | spacedata | Space situational awareness data sources |
176183| [**ocaml-spacefibre**](https://tangled.org/gazagnaire.org/ocaml-spacefibre) | spacefibre | SpaceFibre (ECSS-E-ST-50-11C) |
177184| [**ocaml-spacewire**](https://tangled.org/gazagnaire.org/ocaml-spacewire) | spacewire | SpaceWire (ECSS-E-ST-50-12C) and RMAP (ECSS-E-ST-50-52C) |
178178-| [**ocaml-spake2**](https://tangled.org/gazagnaire.org/ocaml-spake2) | spake2 | SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange |
179185| [**ocaml-sqlite**](https://tangled.org/gazagnaire.org/ocaml-sqlite) | sqlite | Minimal SQLite key-value store for OCaml |
180186| [**ocaml-squashfs**](https://tangled.org/gazagnaire.org/ocaml-squashfs) | squashfs | SquashFS compressed filesystem reader in pure OCaml |
181181-| [**ocaml-srp**](https://tangled.org/gazagnaire.org/ocaml-srp) | srp | SRP-6a Secure Remote Password protocol |
182187| [**ocaml-sse**](https://tangled.org/gazagnaire.org/ocaml-sse) | sse | Server-Sent Events (SSE) parser and serializer |
183188| [**ocaml-stix**](https://tangled.org/gazagnaire.org/ocaml-stix) | stix | STIX 2.1 cyber threat intelligence objects and TAXII 2.1 client |
184189| [**ocaml-streaming-aead**](https://tangled.org/gazagnaire.org/ocaml-streaming-aead) | streaming-aead | Streaming Authenticated Encryption (OAE2) for large data |
···193198| | tls-eio | Transport Layer Security purely in OCaml - Eio |
194199| [**ocaml-tm**](https://tangled.org/gazagnaire.org/ocaml-tm) | tm | CCSDS TM Transfer Frames (CCSDS 132.0-B) |
195200| [**ocaml-toml**](https://tangled.org/gazagnaire.org/ocaml-toml) | toml | TOML 1.1 codec library for OCaml |
196196-| [**ocaml-tty**](https://tangled.org/gazagnaire.org/ocaml-tty) | tty | Terminal styling and layout widgets |
197197-| | tty-eio | Eio bindings for tty progress bars |
198201| [**ocaml-turbo**](https://tangled.org/gazagnaire.org/ocaml-turbo) | turbo | Turbo codes with BCJR/MAP decoding |
199202| [**ocaml-udpcl**](https://tangled.org/gazagnaire.org/ocaml-udpcl) | udpcl | UDP Convergence Layer for the Bundle Protocol (RFC 7122) |
200203| [**ocaml-uslp**](https://tangled.org/gazagnaire.org/ocaml-uslp) | uslp | CCSDS USLP Transfer Frames (CCSDS 732.1-B-2) |
201201-| [**ocaml-vec3**](https://tangled.org/gazagnaire.org/ocaml-vec3) | vec3 | 3D vectors for astrodynamics and rendering |
202204| [**ocaml-viterbi**](https://tangled.org/gazagnaire.org/ocaml-viterbi) | viterbi | Convolutional codes with Viterbi decoding |
203205| [**ocaml-vlog**](https://tangled.org/gazagnaire.org/ocaml-vlog) | vlog | Cmdliner terms for ergonomic logging configuration |
204206| [**ocaml-vz**](https://tangled.org/gazagnaire.org/ocaml-vz) | vz | Apple Virtualization.framework bindings for OCaml |
205207| [**ocaml-wal**](https://tangled.org/gazagnaire.org/ocaml-wal) | wal | Write-Ahead Log for OCaml |
206206-| [**ocaml-websocket**](https://tangled.org/gazagnaire.org/ocaml-websocket) | websocket | WebSocket frame codec (RFC 6455) |
207208| [**ocaml-x509**](https://tangled.org/gazagnaire.org/ocaml-x509) | x509 | Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml |
208209| [**ocaml-xff**](https://tangled.org/gazagnaire.org/ocaml-xff) | xff | X-Forwarded-For parsing and trusted proxy detection |
209210| [**ocaml-xml**](https://tangled.org/gazagnaire.org/ocaml-xml) | xml | Minimal XML parser and serializer |
210211| [**ocaml-xtce**](https://tangled.org/gazagnaire.org/ocaml-xtce) | xtce | XTCE: XML Telemetric and Command Exchange (CCSDS 660.1-B) |
211212| [**ocaml-yaml**](https://tangled.org/gazagnaire.org/ocaml-yaml) | yaml | YAML 1.2 codec library for OCaml |
212212-| [**ocaml-zephyr**](https://tangled.org/gazagnaire.org/ocaml-zephyr) | zephyr | Virtio-serial port IO for guest VMs |
213213-| [**osrelease**](https://tangled.org/gazagnaire.org/osrelease) | osrelease | Detect operating system, distro and version information |
213213+| [**osrelease**](https://github.com/avsm/osrelease.git) | osrelease | Detect operating system, distro and version information |
214214| [**prune**](https://tangled.org/gazagnaire.org/prune) | prune | Find unused exports in OCaml interface files |
215215| [**uniboot**](https://tangled.org/gazagnaire.org/uniboot) | uniboot | Minimal bootable disk image builder |
216216-| [**xdge**](https://tangled.org/gazagnaire.org/xdge) | xdge | XDG Base Directory Specification support for Eio |
216216+| [**xdge**](https://tangled.org/anil.recoil.org/xdge) | xdge | XDG Base Directory Specification support for Eio |
217217218218---
219219220220-_Generated by monopam. 210 packages from 182 repositories._
220220+_Generated by monopam. 210 packages from 145 repositories._