My own corner of monopam
2
fork

Configure Feed

Select the types of activity you want to include in your feed.

Regenerate root files

+117 -97
+7 -2
CLAUDE.md
··· 38 38 git add path/to/file ... 39 39 git commit -m "Description of changes" 40 40 41 - # 5. Send them back to the upstream repos 41 + # 5. Lint: missing/unused opam deps and stale generated root files 42 + monopam lint 43 + 44 + # 6. Send them back to the upstream repos 42 45 monopam push 43 46 ``` 44 47 ··· 65 68 3. **Commit** your changes: `git add <files>` for the specific paths you 66 69 touched, then `git commit` (avoid `git add -A` — concurrent sessions 67 70 may have staged unrelated work) 68 - 4. **Push**: `monopam push` to send them upstream 71 + 4. **Lint**: `monopam lint` to flag missing/unused opam deps and stale 72 + generated root files (run `monopam lint --fix` to regenerate) 73 + 5. **Push**: `monopam push` to send them upstream 69 74 70 75 ## Important Notes 71 76
+53 -53
README.md
··· 4 4 5 5 | Repository | Package | Synopsis | 6 6 |------------|---------|----------| 7 + | **.** | atproto-handle | ATProto handle syntax and resolution | 8 + | | atproto-oauth | ATProto OAuth: client, discovery, and session management | 9 + | | auth | User authentication and session management for web applications | 10 + | | cache | Generic TTL-based cache with Eio support | 11 + | | ccsds | CCSDS Protocol Suite for OCaml | 12 + | | cgr | Contact Graph Routing for time-varying satellite networks | 13 + | | crc | CRC checksums for OCaml | 14 + | | crdt | Conflict-free Replicated Data Types | 15 + | | demod | BPSK/QPSK demodulation with carrier and timing recovery | 16 + | | did | Decentralized Identifiers (DIDs) per W3C DID Core 1.0 | 17 + | | did-plc | did:plc method resolver for the Public Ledger of Credentials | 18 + | | did-web | did:web method resolver per W3C DID Method: Web | 19 + | | dns-eio | Eio-native DNS client on top of the dns protocol library | 20 + | | dsp | Digital signal processing primitives | 21 + | | dupfind | Duplicate code detection for OCaml | 22 + | | fdir | Integrity monitoring for kernel isolation structures | 23 + | | freebox | OCaml client for the Freebox router API | 24 + | | hap | HomeKit Accessory Protocol (HAP) for OCaml | 25 + | | http | HTTP types: headers, status codes, methods, bodies, MIME types | 26 + | | jailhouse | Jailhouse partitioning hypervisor configuration | 27 + | | linkedin | OCaml client for the LinkedIn Voyager API | 28 + | | matter | Matter protocol implementation for OCaml | 29 + | | monopam-info | Git commit hash version for OCaml CLIs | 30 + | | mst | Generic Merkle Search Tree | 31 + | | oci | OCaml library and CLI for OCI and Docker image manipulation | 32 + | | openamp | OpenAMP remoteproc interface for asymmetric multiprocessing | 33 + | | pbkdf2 | PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) | 34 + | | pid1 | Minimal OCaml PID 1 primitives for VM init processes | 35 + | | precommit | Pre-commit hook initialization for OCaml projects | 36 + | | respond | Eio HTTP server with static file serving and route handlers | 37 + | | retry | Generic retry logic with exponential backoff | 38 + | | rpmsg | RPMsg inter-partition messaging over shared memory | 39 + | | rtlsdr | RTL-SDR IQ sample reader | 40 + | | slack | OCaml client for the Slack Web API | 41 + | | spake2 | SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange | 42 + | | srp | SRP-6a Secure Remote Password protocol | 43 + | | tty | Terminal styling and layout widgets | 44 + | | tty-eio | Eio bindings for tty progress bars | 45 + | | vec3 | 3D vectors for astrodynamics and rendering | 46 + | | websocket | WebSocket frame codec (RFC 6455) | 47 + | | zephyr | Virtio-serial port IO for guest VMs | 7 48 | [**bottler**](https://tangled.org/gazagnaire.org/bottler) | bottler | Homebrew bottle builder and tap manager for OCaml monorepos | 8 49 | [**ca-certs**](https://tangled.org/gazagnaire.org/ca-certs) | ca-certs | Detect root CA certificates from the operating system | 9 - | [**dupfind**](https://tangled.org/gazagnaire.org/dupfind) | dupfind | Duplicate code detection for OCaml | 10 50 | [**irmin**](https://tangled.org/gazagnaire.org/irmin) | irmin | Content-addressable store with Git and ATProto MST support | 11 51 | [**kdf**](https://tangled.org/gazagnaire.org/kdf) | kdf | Key Derivation Functions: HKDF RFC 5869, PBKDF RFC 2898, SCRYPT RFC 7914 | 12 - | [**memtrace**](https://tangled.org/gazagnaire.org/memtrace) | memtrace | Streaming client for Memprof | 52 + | [**memtrace**](https://github.com/janestreet/memtrace.git) | memtrace | Streaming client for Memprof | 13 53 | [**merlint**](https://tangled.org/gazagnaire.org/merlint) | merlint | OCaml linter enforcing modern coding conventions | 14 - | [**monopam**](https://tangled.org/gazagnaire.org/monopam) | monopam | Monorepo manager for OCaml packages | 15 - | [**monopam-info**](https://tangled.org/gazagnaire.org/monopam-info) | monopam-info | Git commit hash version for OCaml CLIs | 54 + | [**monopam**](https://tangled.org/anil.recoil.org/monopam) | monopam | Monorepo manager for OCaml packages | 16 55 | [**ocaml-adm**](https://tangled.org/gazagnaire.org/ocaml-adm) | adm | CCSDS 504.0-B Attitude Data Messages parser and serializer | 17 56 | [**ocaml-aem**](https://tangled.org/gazagnaire.org/ocaml-aem) | aem | CCSDS 504.0-B Attitude Ephemeris Message parser and serializer | 18 57 | [**ocaml-agent**](https://tangled.org/gazagnaire.org/ocaml-agent) | agent | Autonomous Claude Code agent for OCaml projects | 19 58 | [**ocaml-aos**](https://tangled.org/gazagnaire.org/ocaml-aos) | aos | CCSDS AOS Transfer Frames (CCSDS 732.0-B-4) | 20 59 | [**ocaml-arp**](https://tangled.org/gazagnaire.org/ocaml-arp) | arp | Pure OCaml ARP table lookup | 21 - | [**ocaml-atp**](https://tangled.org/gazagnaire.org/ocaml-atp) | atp | AT Protocol IPLD implementation for OCaml | 60 + | [**ocaml-atp**](https://tangled.org/anil.recoil.org/ocaml-atp) | atp | AT Protocol IPLD implementation for OCaml | 22 61 | | atp-lexicon-atproto | AT Protocol core lexicon types for OCaml | 23 62 | | atp-lexicon-bsky | Bluesky lexicon types for OCaml | 24 63 | | atp-lexicon-standard-site | Standard Site lexicon types for OCaml | ··· 31 70 | | standard-site | Standard Site client library and CLI for AT Protocol | 32 71 | | tangled | Tangled client library and CLI for AT Protocol | 33 72 | | xrpc-auth | Authentication helpers for AT Protocol CLIs | 34 - | [**ocaml-atproto-handle**](https://tangled.org/gazagnaire.org/ocaml-atproto-handle) | atproto-handle | ATProto handle syntax and resolution | 35 - | [**ocaml-atproto-oauth**](https://tangled.org/gazagnaire.org/ocaml-atproto-oauth) | atproto-oauth | ATProto OAuth: client, discovery, and session management | 36 - | [**ocaml-auth**](https://tangled.org/gazagnaire.org/ocaml-auth) | auth | User authentication and session management for web applications | 37 73 | [**ocaml-ax25**](https://tangled.org/gazagnaire.org/ocaml-ax25) | ax25 | AX.25 Amateur Radio Link-Layer Protocol | 38 74 | [**ocaml-block**](https://tangled.org/gazagnaire.org/ocaml-block) | block | Block device abstraction for OCaml 5 with Eio | 39 75 | [**ocaml-bloom**](https://tangled.org/gazagnaire.org/ocaml-bloom) | bloom | Bloom filters for OCaml | 40 76 | [**ocaml-bpsec**](https://tangled.org/gazagnaire.org/ocaml-bpsec) | bpsec | Bundle Protocol Security (RFC 9172) | 41 77 | [**ocaml-btree**](https://tangled.org/gazagnaire.org/ocaml-btree) | btree | Pure OCaml B-tree implementation for persistent storage | 42 78 | [**ocaml-bundle**](https://tangled.org/gazagnaire.org/ocaml-bundle) | bundle | Bundle Protocol Version 7 (RFC 9171) | 43 - | [**ocaml-bytesrw-eio**](https://tangled.org/gazagnaire.org/ocaml-bytesrw-eio) | bytesrw-eio | Bytesrw readers and writers for Eio | 44 - | [**ocaml-cache**](https://tangled.org/gazagnaire.org/ocaml-cache) | cache | Generic TTL-based cache with Eio support | 79 + | [**ocaml-bytesrw-eio**](https://tangled.org/anil.recoil.org/ocaml-bytesrw-eio) | bytesrw-eio | Bytesrw readers and writers for Eio | 45 80 | [**ocaml-cam**](https://tangled.org/gazagnaire.org/ocaml-cam) | cam | Collision Avoidance Maneuver design for conjunction assessment | 46 81 | [**ocaml-cbor**](https://tangled.org/gazagnaire.org/ocaml-cbor) | cbor | Native CBOR codec with type-safe combinators | 47 - | [**ocaml-ccsds**](https://tangled.org/gazagnaire.org/ocaml-ccsds) | ccsds | CCSDS Protocol Suite for OCaml | 48 82 | [**ocaml-cdm**](https://tangled.org/gazagnaire.org/ocaml-cdm) | cdm | Conjunction Data Message (CCSDS 508.0-B-1) | 49 83 | [**ocaml-cfdp**](https://tangled.org/gazagnaire.org/ocaml-cfdp) | cfdp | CCSDS File Delivery Protocol (CCSDS 727.0-B-5) | 50 84 | | cfdp-eio | CFDP file transfer over TCP with Eio | 51 - | [**ocaml-cgr**](https://tangled.org/gazagnaire.org/ocaml-cgr) | cgr | Contact Graph Routing for time-varying satellite networks | 52 - | [**ocaml-claude**](https://tangled.org/gazagnaire.org/ocaml-claude) | claude | OCaml client library for Claude Code | 53 85 | [**ocaml-claude-skills**](https://tangled.org/gazagnaire.org/ocaml-claude-skills) | ocaml-claude-skills | Claude Code skills marketplace for OCaml monorepo workflows | 86 + | [**ocaml-claudeio**](https://tangled.org/anil.recoil.org/ocaml-claudeio) | claude | OCaml client library for Claude Code | 54 87 | [**ocaml-clcw**](https://tangled.org/gazagnaire.org/ocaml-clcw) | clcw | CCSDS Command Link Control Word (CCSDS 232.1-B-2) | 55 88 | [**ocaml-collision**](https://tangled.org/gazagnaire.org/ocaml-collision) | collision | Collision probability computation for conjunction assessment | 56 - | [**ocaml-conpool**](https://tangled.org/gazagnaire.org/ocaml-conpool) | conpool | Protocol-agnostic TCP/IP connection pooling library for Eio | 89 + | [**ocaml-conpool**](https://tangled.org/anil.recoil.org/ocaml-conpool) | conpool | Protocol-agnostic TCP/IP connection pooling library for Eio | 57 90 | [**ocaml-contact**](https://tangled.org/gazagnaire.org/ocaml-contact) | contact | Satellite pass prediction and contact window computation | 58 91 | [**ocaml-cookie**](https://tangled.org/gazagnaire.org/ocaml-cookie) | cookie | Cookie parsing and management library | 59 92 | [**ocaml-coordinate**](https://tangled.org/gazagnaire.org/ocaml-coordinate) | coordinate | Astrodynamics coordinate frame transforms | ··· 61 94 | | cop1-eio | COP-1 service layer with Eio timers | 62 95 | [**ocaml-cose**](https://tangled.org/gazagnaire.org/ocaml-cose) | cose | CBOR Object Signing and Encryption (COSE) | 63 96 | [**ocaml-cpio**](https://tangled.org/gazagnaire.org/ocaml-cpio) | cpio | CPIO archive reader and writer in pure OCaml | 64 - | [**ocaml-crc**](https://tangled.org/gazagnaire.org/ocaml-crc) | crc | CRC checksums for OCaml | 65 - | [**ocaml-crdt**](https://tangled.org/gazagnaire.org/ocaml-crdt) | crdt | Conflict-free Replicated Data Types | 66 97 | [**ocaml-crow**](https://tangled.org/gazagnaire.org/ocaml-crow) | crow | Crowbar campaign orchestrator for AFL fuzzing | 67 98 | [**ocaml-crypto**](https://tangled.org/gazagnaire.org/ocaml-crypto) | crypto | Simple symmetric cryptography (fork of mirage-crypto) | 68 99 | | crypto-ec | Elliptic Curve Cryptography (fork of mirage-crypto-ec) | ··· 73 104 | [**ocaml-csts**](https://tangled.org/gazagnaire.org/ocaml-csts) | csts | CCSDS Cross Support Transfer Services (CSTS) | 74 105 | [**ocaml-csv**](https://tangled.org/gazagnaire.org/ocaml-csv) | csv | Declarative CSV codecs | 75 106 | [**ocaml-delegation**](https://tangled.org/gazagnaire.org/ocaml-delegation) | delegation | X.509 certificate-based hierarchical resource delegation | 76 - | [**ocaml-demod**](https://tangled.org/gazagnaire.org/ocaml-demod) | demod | BPSK/QPSK demodulation with carrier and timing recovery | 77 - | [**ocaml-did**](https://tangled.org/gazagnaire.org/ocaml-did) | did | Decentralized Identifiers (DIDs) per W3C DID Core 1.0 | 78 - | | did-plc | did:plc method resolver for the Public Ledger of Credentials | 79 - | | did-web | did:web method resolver per W3C DID Method: Web | 80 - | [**ocaml-dns-eio**](https://tangled.org/gazagnaire.org/ocaml-dns-eio) | dns-eio | Eio-native DNS client on top of the dns protocol library | 81 107 | [**ocaml-dpop**](https://tangled.org/gazagnaire.org/ocaml-dpop) | dpop | DPoP (RFC 9449) proof-of-possession tokens | 82 - | [**ocaml-dsp**](https://tangled.org/gazagnaire.org/ocaml-dsp) | dsp | Digital signal processing primitives | 83 108 | [**ocaml-erasure**](https://tangled.org/gazagnaire.org/ocaml-erasure) | erasure | CCSDS 131.5-B erasure correcting codes | 84 109 | [**ocaml-ewah**](https://tangled.org/gazagnaire.org/ocaml-ewah) | ewah | EWAH-compressed bitmaps (git-compatible) | 85 - | [**ocaml-fdir**](https://tangled.org/gazagnaire.org/ocaml-fdir) | fdir | Integrity monitoring for kernel isolation structures | 86 110 | [**ocaml-flexacm**](https://tangled.org/gazagnaire.org/ocaml-flexacm) | flexacm | CCSDS Flexible Advanced Coding and Modulation (131.2-B) | 87 - | [**ocaml-freebox**](https://tangled.org/gazagnaire.org/ocaml-freebox) | freebox | OCaml client for the Freebox router API | 88 111 | [**ocaml-fsr**](https://tangled.org/gazagnaire.org/ocaml-fsr) | fsr | CCSDS Frame Security Report (FSR) | 89 112 | [**ocaml-gauth**](https://tangled.org/gazagnaire.org/ocaml-gauth) | gauth | Google API authentication helpers: service accounts and local OAuth | 90 113 | [**ocaml-gdocs**](https://tangled.org/gazagnaire.org/ocaml-gdocs) | gdocs | Google Docs API client for OCaml | 91 114 | [**ocaml-git**](https://tangled.org/gazagnaire.org/ocaml-git) | git | Git format in pure OCaml | 92 115 | [**ocaml-globe**](https://tangled.org/gazagnaire.org/ocaml-globe) | globe | Reusable 3D Earth globe widget (pure OCaml + WebGL) | 93 116 | [**ocaml-gpt**](https://tangled.org/gazagnaire.org/ocaml-gpt) | gpt | A library to manipulate GUID Partition Tables | 94 - | [**ocaml-hap**](https://tangled.org/gazagnaire.org/ocaml-hap) | hap | HomeKit Accessory Protocol (HAP) for OCaml | 95 117 | [**ocaml-hcomp**](https://tangled.org/gazagnaire.org/ocaml-hcomp) | hcomp | CCSDS 123.0-B Lossless Multispectral and Hyperspectral Image Compression | 96 118 | [**ocaml-hkdf**](https://tangled.org/gazagnaire.org/ocaml-hkdf) | hkdf | HMAC-based Extract-and-Expand Key Derivation Function (RFC 5869) | 97 119 | [**ocaml-homebrew**](https://tangled.org/gazagnaire.org/ocaml-homebrew) | homebrew | Generic Homebrew primitives: formulas, taps, bottle conventions | 98 120 | [**ocaml-hostname**](https://tangled.org/gazagnaire.org/ocaml-hostname) | hostname | RFC 1123 hostname validation for HTTP Host headers | 99 - | [**ocaml-http**](https://tangled.org/gazagnaire.org/ocaml-http) | http | HTTP types: headers, status codes, methods, bodies, MIME types | 100 121 | [**ocaml-idc**](https://tangled.org/gazagnaire.org/ocaml-idc) | idc | CCSDS 122.0-B Image Data Compression | 101 122 | [**ocaml-initramfs**](https://tangled.org/gazagnaire.org/ocaml-initramfs) | initramfs | Build initramfs cpio archives from file and directory entries | 102 - | [**ocaml-jailhouse**](https://tangled.org/gazagnaire.org/ocaml-jailhouse) | jailhouse | Jailhouse partitioning hypervisor configuration | 103 123 | [**ocaml-json**](https://tangled.org/gazagnaire.org/ocaml-json) | json | Declarative JSON data manipulation for OCaml | 104 124 | [**ocaml-json-logs**](https://tangled.org/gazagnaire.org/ocaml-json-logs) | json-logs | JSON structured logging reporter for the Logs library | 105 125 | [**ocaml-jwt**](https://tangled.org/gazagnaire.org/ocaml-jwt) | jwt | JSON Web Token (JWT) and CBOR Web Token (CWT) for OCaml | ··· 108 128 | [**ocaml-ldpc**](https://tangled.org/gazagnaire.org/ocaml-ldpc) | ldpc | LDPC codes with belief propagation decoding | 109 129 | [**ocaml-leb128**](https://tangled.org/gazagnaire.org/ocaml-leb128) | leb128 | LEB128 variable-length integer codec | 110 130 | [**ocaml-lfsr**](https://tangled.org/gazagnaire.org/ocaml-lfsr) | lfsr | Linear Feedback Shift Registers for OCaml | 111 - | [**ocaml-linkedin**](https://tangled.org/gazagnaire.org/ocaml-linkedin) | linkedin | OCaml client for the LinkedIn Voyager API | 112 131 | [**ocaml-loc**](https://tangled.org/gazagnaire.org/ocaml-loc) | loc | Source locations and structured errors for text codecs (extracted from jsont) | 113 132 | [**ocaml-ltp**](https://tangled.org/gazagnaire.org/ocaml-ltp) | ltp | Licklider Transmission Protocol (RFC 5326) | 114 133 | | ltp-eio | Eio-based LTP segment transport | 115 134 | [**ocaml-mal**](https://tangled.org/gazagnaire.org/ocaml-mal) | mal | CCSDS 521.0-B-1 Mission Operations Message Abstraction Layer | 116 - | [**ocaml-matter**](https://tangled.org/gazagnaire.org/ocaml-matter) | matter | Matter protocol implementation for OCaml | 117 135 | [**ocaml-mbr**](https://tangled.org/gazagnaire.org/ocaml-mbr) | mbr | A library to manipulate Master Boot Records | 118 136 | [**ocaml-mdns**](https://tangled.org/gazagnaire.org/ocaml-mdns) | mdns | mDNS/DNS-SD service discovery (RFC 6763) | 119 137 | [**ocaml-merge3**](https://tangled.org/gazagnaire.org/ocaml-merge3) | merge3 | 3-way merge with Myers diff | ··· 121 139 | [**ocaml-meross**](https://tangled.org/gazagnaire.org/ocaml-meross) | meross | Meross smart plug local control over HTTP | 122 140 | [**ocaml-meta**](https://tangled.org/gazagnaire.org/ocaml-meta) | meta | Streaming findlib META file codec for OCaml | 123 141 | [**ocaml-monitor**](https://tangled.org/gazagnaire.org/ocaml-monitor) | monitor | Workload monitor for containers, unikernels, and VMs | 124 - | [**ocaml-mst**](https://tangled.org/gazagnaire.org/ocaml-mst) | mst | Generic Merkle Search Tree | 125 142 | [**ocaml-oauth**](https://tangled.org/gazagnaire.org/ocaml-oauth) | oauth | OAuth 2.0 authorization and token exchange | 126 - | [**ocaml-oci**](https://tangled.org/gazagnaire.org/ocaml-oci) | oci | OCaml library and CLI for OCI and Docker image manipulation | 127 143 | [**ocaml-ocm**](https://tangled.org/gazagnaire.org/ocaml-ocm) | ocm | CCSDS Orbit Comprehensive Message (OCM) parser | 128 144 | [**ocaml-odm**](https://tangled.org/gazagnaire.org/ocaml-odm) | odm | Orbit Data Messages (CCSDS 502.0-B-3) | 129 145 | [**ocaml-oem**](https://tangled.org/gazagnaire.org/ocaml-oem) | oem | CCSDS 502.0-B-3 Orbit Ephemeris Message parser and interpolator | 130 146 | [**ocaml-opam**](https://tangled.org/gazagnaire.org/ocaml-opam) | opam | Streaming opam file codec for OCaml | 131 - | [**ocaml-openamp**](https://tangled.org/gazagnaire.org/ocaml-openamp) | openamp | OpenAMP remoteproc interface for asymmetric multiprocessing | 132 147 | [**ocaml-opm**](https://tangled.org/gazagnaire.org/ocaml-opm) | opm | CCSDS 502.0-B Orbit Parameter Message parser and serializer | 133 148 | [**ocaml-osv**](https://tangled.org/gazagnaire.org/ocaml-osv) | osv | OSV.dev vulnerability database client | 134 149 | [**ocaml-paseto**](https://tangled.org/gazagnaire.org/ocaml-paseto) | paseto | PASETO (Platform-Agnostic Security Tokens) implementation | 135 - | [**ocaml-pbkdf2**](https://tangled.org/gazagnaire.org/ocaml-pbkdf2) | pbkdf2 | PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) | 136 150 | [**ocaml-pds**](https://tangled.org/gazagnaire.org/ocaml-pds) | pds | ATProto Personal Data Server storage for OCaml | 137 - | [**ocaml-pid1**](https://tangled.org/gazagnaire.org/ocaml-pid1) | pid1 | Minimal OCaml PID 1 primitives for VM init processes | 138 - | [**ocaml-precommit**](https://tangled.org/gazagnaire.org/ocaml-precommit) | precommit | Pre-commit hook initialization for OCaml projects | 139 151 | [**ocaml-protobuf**](https://tangled.org/gazagnaire.org/ocaml-protobuf) | protobuf | Protocol Buffers codec for hand-written schemas | 140 152 | [**ocaml-proximity1**](https://tangled.org/gazagnaire.org/ocaml-proximity1) | proximity1 | CCSDS Proximity-1 Space Link Protocol (211.0-B) | 141 - | [**ocaml-publicsuffix**](https://tangled.org/gazagnaire.org/ocaml-publicsuffix) | publicsuffix | Public Suffix List implementation for OCaml | 142 - | [**ocaml-punycode**](https://tangled.org/gazagnaire.org/ocaml-punycode) | punycode | RFC 3492 Punycode and IDNA implementation for OCaml | 153 + | [**ocaml-publicsuffix**](https://tangled.org/anil.recoil.org/ocaml-publicsuffix) | publicsuffix | Public Suffix List implementation for OCaml | 154 + | [**ocaml-punycode**](https://tangled.org/anil.recoil.org/ocaml-punycode) | punycode | RFC 3492 Punycode and IDNA implementation for OCaml | 143 155 | [**ocaml-pus**](https://tangled.org/gazagnaire.org/ocaml-pus) | pus | ECSS-E-ST-70-41C Packet Utilisation Standard | 144 156 | [**ocaml-qemu**](https://tangled.org/gazagnaire.org/ocaml-qemu) | qemu | QEMU/KVM virtual machine management | 145 157 | [**ocaml-rate-limit**](https://tangled.org/gazagnaire.org/ocaml-rate-limit) | rate-limit | Per-IP sliding window rate limiter with Eio support | 146 158 | [**ocaml-rdm**](https://tangled.org/gazagnaire.org/ocaml-rdm) | rdm | CCSDS 508.1-B Re-entry Data Message parser and serializer | 147 159 | [**ocaml-reed-solomon**](https://tangled.org/gazagnaire.org/ocaml-reed-solomon) | reed-solomon | Reed-Solomon error correction over GF(2^8) | 148 160 | [**ocaml-rego**](https://tangled.org/gazagnaire.org/ocaml-rego) | rego | Native OCaml Rego/OPA policy engine | 149 - | [**ocaml-requests**](https://tangled.org/gazagnaire.org/ocaml-requests) | requests | Batteries included HTTPS client library for OCaml | 150 - | [**ocaml-respond**](https://tangled.org/gazagnaire.org/ocaml-respond) | respond | Eio HTTP server with static file serving and route handlers | 151 - | [**ocaml-retry**](https://tangled.org/gazagnaire.org/ocaml-retry) | retry | Generic retry logic with exponential backoff | 161 + | [**ocaml-requests**](https://tangled.org/anil.recoil.org/ocaml-requests) | requests | Batteries included HTTPS client library for OCaml | 152 162 | [**ocaml-rice**](https://tangled.org/gazagnaire.org/ocaml-rice) | rice | CCSDS 121.0-B-3 Lossless Data Compression (Rice/Golomb coding) | 153 - | [**ocaml-rpmsg**](https://tangled.org/gazagnaire.org/ocaml-rpmsg) | rpmsg | RPMsg inter-partition messaging over shared memory | 154 - | [**ocaml-rtlsdr**](https://tangled.org/gazagnaire.org/ocaml-rtlsdr) | rtlsdr | RTL-SDR IQ sample reader | 155 163 | [**ocaml-runc**](https://tangled.org/gazagnaire.org/ocaml-runc) | runc | OCI runtime spec types and runc command wrapper | 156 164 | [**ocaml-s3**](https://tangled.org/gazagnaire.org/ocaml-s3) | s3 | Pure-OCaml S3 protocol client | 157 165 | [**ocaml-sbom**](https://tangled.org/gazagnaire.org/ocaml-sbom) | sbom | Software Bill of Materials (SBOM) generation for OCaml | ··· 168 176 | [**ocaml-sgp4**](https://tangled.org/gazagnaire.org/ocaml-sgp4) | sgp4 | SGP4/SDP4 satellite orbit propagator | 169 177 | [**ocaml-short-ldpc**](https://tangled.org/gazagnaire.org/ocaml-short-ldpc) | short-ldpc | CCSDS 131.4-B short block-length LDPC codes | 170 178 | [**ocaml-sigstore**](https://tangled.org/gazagnaire.org/ocaml-sigstore) | sigstore | Sigstore signing and verification for OCaml | 171 - | [**ocaml-slack**](https://tangled.org/gazagnaire.org/ocaml-slack) | slack | OCaml client for the Slack Web API | 172 179 | [**ocaml-sle**](https://tangled.org/gazagnaire.org/ocaml-sle) | sle | CCSDS Space Link Extension (SLE) protocols | 173 180 | | sle-eio | Eio-based SLE client | 174 181 | [**ocaml-space-packet**](https://tangled.org/gazagnaire.org/ocaml-space-packet) | space-packet | CCSDS 133.0-B Space Packet Protocol | 175 182 | [**ocaml-spacedata**](https://tangled.org/gazagnaire.org/ocaml-spacedata) | spacedata | Space situational awareness data sources | 176 183 | [**ocaml-spacefibre**](https://tangled.org/gazagnaire.org/ocaml-spacefibre) | spacefibre | SpaceFibre (ECSS-E-ST-50-11C) | 177 184 | [**ocaml-spacewire**](https://tangled.org/gazagnaire.org/ocaml-spacewire) | spacewire | SpaceWire (ECSS-E-ST-50-12C) and RMAP (ECSS-E-ST-50-52C) | 178 - | [**ocaml-spake2**](https://tangled.org/gazagnaire.org/ocaml-spake2) | spake2 | SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange | 179 185 | [**ocaml-sqlite**](https://tangled.org/gazagnaire.org/ocaml-sqlite) | sqlite | Minimal SQLite key-value store for OCaml | 180 186 | [**ocaml-squashfs**](https://tangled.org/gazagnaire.org/ocaml-squashfs) | squashfs | SquashFS compressed filesystem reader in pure OCaml | 181 - | [**ocaml-srp**](https://tangled.org/gazagnaire.org/ocaml-srp) | srp | SRP-6a Secure Remote Password protocol | 182 187 | [**ocaml-sse**](https://tangled.org/gazagnaire.org/ocaml-sse) | sse | Server-Sent Events (SSE) parser and serializer | 183 188 | [**ocaml-stix**](https://tangled.org/gazagnaire.org/ocaml-stix) | stix | STIX 2.1 cyber threat intelligence objects and TAXII 2.1 client | 184 189 | [**ocaml-streaming-aead**](https://tangled.org/gazagnaire.org/ocaml-streaming-aead) | streaming-aead | Streaming Authenticated Encryption (OAE2) for large data | ··· 193 198 | | tls-eio | Transport Layer Security purely in OCaml - Eio | 194 199 | [**ocaml-tm**](https://tangled.org/gazagnaire.org/ocaml-tm) | tm | CCSDS TM Transfer Frames (CCSDS 132.0-B) | 195 200 | [**ocaml-toml**](https://tangled.org/gazagnaire.org/ocaml-toml) | toml | TOML 1.1 codec library for OCaml | 196 - | [**ocaml-tty**](https://tangled.org/gazagnaire.org/ocaml-tty) | tty | Terminal styling and layout widgets | 197 - | | tty-eio | Eio bindings for tty progress bars | 198 201 | [**ocaml-turbo**](https://tangled.org/gazagnaire.org/ocaml-turbo) | turbo | Turbo codes with BCJR/MAP decoding | 199 202 | [**ocaml-udpcl**](https://tangled.org/gazagnaire.org/ocaml-udpcl) | udpcl | UDP Convergence Layer for the Bundle Protocol (RFC 7122) | 200 203 | [**ocaml-uslp**](https://tangled.org/gazagnaire.org/ocaml-uslp) | uslp | CCSDS USLP Transfer Frames (CCSDS 732.1-B-2) | 201 - | [**ocaml-vec3**](https://tangled.org/gazagnaire.org/ocaml-vec3) | vec3 | 3D vectors for astrodynamics and rendering | 202 204 | [**ocaml-viterbi**](https://tangled.org/gazagnaire.org/ocaml-viterbi) | viterbi | Convolutional codes with Viterbi decoding | 203 205 | [**ocaml-vlog**](https://tangled.org/gazagnaire.org/ocaml-vlog) | vlog | Cmdliner terms for ergonomic logging configuration | 204 206 | [**ocaml-vz**](https://tangled.org/gazagnaire.org/ocaml-vz) | vz | Apple Virtualization.framework bindings for OCaml | 205 207 | [**ocaml-wal**](https://tangled.org/gazagnaire.org/ocaml-wal) | wal | Write-Ahead Log for OCaml | 206 - | [**ocaml-websocket**](https://tangled.org/gazagnaire.org/ocaml-websocket) | websocket | WebSocket frame codec (RFC 6455) | 207 208 | [**ocaml-x509**](https://tangled.org/gazagnaire.org/ocaml-x509) | x509 | Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml | 208 209 | [**ocaml-xff**](https://tangled.org/gazagnaire.org/ocaml-xff) | xff | X-Forwarded-For parsing and trusted proxy detection | 209 210 | [**ocaml-xml**](https://tangled.org/gazagnaire.org/ocaml-xml) | xml | Minimal XML parser and serializer | 210 211 | [**ocaml-xtce**](https://tangled.org/gazagnaire.org/ocaml-xtce) | xtce | XTCE: XML Telemetric and Command Exchange (CCSDS 660.1-B) | 211 212 | [**ocaml-yaml**](https://tangled.org/gazagnaire.org/ocaml-yaml) | yaml | YAML 1.2 codec library for OCaml | 212 - | [**ocaml-zephyr**](https://tangled.org/gazagnaire.org/ocaml-zephyr) | zephyr | Virtio-serial port IO for guest VMs | 213 - | [**osrelease**](https://tangled.org/gazagnaire.org/osrelease) | osrelease | Detect operating system, distro and version information | 213 + | [**osrelease**](https://github.com/avsm/osrelease.git) | osrelease | Detect operating system, distro and version information | 214 214 | [**prune**](https://tangled.org/gazagnaire.org/prune) | prune | Find unused exports in OCaml interface files | 215 215 | [**uniboot**](https://tangled.org/gazagnaire.org/uniboot) | uniboot | Minimal bootable disk image builder | 216 - | [**xdge**](https://tangled.org/gazagnaire.org/xdge) | xdge | XDG Base Directory Specification support for Eio | 216 + | [**xdge**](https://tangled.org/anil.recoil.org/xdge) | xdge | XDG Base Directory Specification support for Eio | 217 217 218 218 --- 219 219 220 - _Generated by monopam. 210 packages from 182 repositories._ 220 + _Generated by monopam. 210 packages from 145 repositories._
+15
dune-project
··· 14 14 alcotest 15 15 asn1-combinators 16 16 astring 17 + atproto-handle 18 + atproto-oauth 19 + auth 17 20 base64 18 21 bheap 19 22 bigstringaf ··· 22 25 brr 23 26 bytesrw 24 27 checkseum 28 + claude 25 29 cmarkit 26 30 cmdliner 27 31 conf-gmp-powm-sec 28 32 conf-zlib 29 33 conf-zstd 34 + crc 30 35 cstruct 31 36 decompress 32 37 digestif ··· 42 47 fmt 43 48 fpath 44 49 gmap 50 + http 45 51 ipaddr 46 52 lambdasoup 47 53 logs ··· 51 57 menhir 52 58 menhirLib 53 59 merlin-lib 60 + monopam-info 61 + mst 54 62 mtime 55 63 multibase 56 64 ocaml 65 + oci 57 66 odoc 58 67 ohex 59 68 optint 60 69 ounit2 70 + pbkdf2 61 71 progress 62 72 ptime 63 73 randomconv 64 74 re 75 + respond 76 + retry 65 77 sedlex 66 78 terminal 79 + tty 80 + tty-eio 67 81 tw 68 82 uri 69 83 uucp 70 84 uuidm 71 85 uunf 72 86 uutf 87 + vec3 73 88 wire 74 89 xdg 75 90 zarith
+42 -42
llms.txt
··· 6 6 7 7 ## Packages 8 8 9 + - [atproto-handle](./README.md): ATProto handle syntax and resolution 10 + - [atproto-oauth](./README.md): ATProto OAuth: client, discovery, and session management 11 + - [auth](./README.md): User authentication and session management for web applications 12 + - [cache](./README.md): Generic TTL-based cache with Eio support 13 + - [ccsds](./README.md): CCSDS Protocol Suite for OCaml 14 + - [cgr](./README.md): Contact Graph Routing for time-varying satellite networks 15 + - [crc](./README.md): CRC checksums for OCaml 16 + - [crdt](./README.md): Conflict-free Replicated Data Types 17 + - [demod](./README.md): BPSK/QPSK demodulation with carrier and timing recovery 18 + - [did](./README.md): Decentralized Identifiers (DIDs) per W3C DID Core 1.0 19 + - [did-plc](./README.md): did:plc method resolver for the Public Ledger of Credentials 20 + - [did-web](./README.md): did:web method resolver per W3C DID Method: Web 21 + - [dns-eio](./README.md): Eio-native DNS client on top of the dns protocol library 22 + - [dsp](./README.md): Digital signal processing primitives 23 + - [dupfind](./README.md): Duplicate code detection for OCaml 24 + - [fdir](./README.md): Integrity monitoring for kernel isolation structures 25 + - [freebox](./README.md): OCaml client for the Freebox router API 26 + - [hap](./README.md): HomeKit Accessory Protocol (HAP) for OCaml 27 + - [http](./README.md): HTTP types: headers, status codes, methods, bodies, MIME types 28 + - [jailhouse](./README.md): Jailhouse partitioning hypervisor configuration 29 + - [linkedin](./README.md): OCaml client for the LinkedIn Voyager API 30 + - [matter](./README.md): Matter protocol implementation for OCaml 31 + - [monopam-info](./README.md): Git commit hash version for OCaml CLIs 32 + - [mst](./README.md): Generic Merkle Search Tree 33 + - [oci](./README.md): OCaml library and CLI for OCI and Docker image manipulation 34 + - [openamp](./README.md): OpenAMP remoteproc interface for asymmetric multiprocessing 35 + - [pbkdf2](./README.md): PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) 36 + - [pid1](./README.md): Minimal OCaml PID 1 primitives for VM init processes 37 + - [precommit](./README.md): Pre-commit hook initialization for OCaml projects 38 + - [respond](./README.md): Eio HTTP server with static file serving and route handlers 39 + - [retry](./README.md): Generic retry logic with exponential backoff 40 + - [rpmsg](./README.md): RPMsg inter-partition messaging over shared memory 41 + - [rtlsdr](./README.md): RTL-SDR IQ sample reader 42 + - [slack](./README.md): OCaml client for the Slack Web API 43 + - [spake2](./README.md): SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange 44 + - [srp](./README.md): SRP-6a Secure Remote Password protocol 45 + - [tty](./README.md): Terminal styling and layout widgets 46 + - [tty-eio](./README.md): Eio bindings for tty progress bars 47 + - [vec3](./README.md): 3D vectors for astrodynamics and rendering 48 + - [websocket](./README.md): WebSocket frame codec (RFC 6455) 49 + - [zephyr](./README.md): Virtio-serial port IO for guest VMs 9 50 - [bottler](bottler/README.md): Homebrew bottle builder and tap manager for OCaml monorepos 10 51 - [ca-certs](ca-certs/README.md): Detect root CA certificates from the operating system 11 - - [dupfind](dupfind/README.md): Duplicate code detection for OCaml 12 52 - [irmin](irmin/README.md): Content-addressable store with Git and ATProto MST support 13 53 - [kdf](kdf/README.md): Key Derivation Functions: HKDF RFC 5869, PBKDF RFC 2898, SCRYPT RFC 7914 14 54 - [memtrace](memtrace/README.md): Streaming client for Memprof 15 55 - [merlint](merlint/README.md): OCaml linter enforcing modern coding conventions 16 56 - [monopam](monopam/README.md): Monorepo manager for OCaml packages 17 - - [monopam-info](monopam-info/README.md): Git commit hash version for OCaml CLIs 18 57 - [adm](ocaml-adm/README.md): CCSDS 504.0-B Attitude Data Messages parser and serializer 19 58 - [aem](ocaml-aem/README.md): CCSDS 504.0-B Attitude Ephemeris Message parser and serializer 20 59 - [agent](ocaml-agent/README.md): Autonomous Claude Code agent for OCaml projects ··· 33 72 - [standard-site](ocaml-atp/README.md): Standard Site client library and CLI for AT Protocol 34 73 - [tangled](ocaml-atp/README.md): Tangled client library and CLI for AT Protocol 35 74 - [xrpc-auth](ocaml-atp/README.md): Authentication helpers for AT Protocol CLIs 36 - - [atproto-handle](ocaml-atproto-handle/README.md): ATProto handle syntax and resolution 37 - - [atproto-oauth](ocaml-atproto-oauth/README.md): ATProto OAuth: client, discovery, and session management 38 - - [auth](ocaml-auth/README.md): User authentication and session management for web applications 39 75 - [ax25](ocaml-ax25/README.md): AX.25 Amateur Radio Link-Layer Protocol 40 76 - [block](ocaml-block/README.md): Block device abstraction for OCaml 5 with Eio 41 77 - [bloom](ocaml-bloom/README.md): Bloom filters for OCaml ··· 43 79 - [btree](ocaml-btree/README.md): Pure OCaml B-tree implementation for persistent storage 44 80 - [bundle](ocaml-bundle/README.md): Bundle Protocol Version 7 (RFC 9171) 45 81 - [bytesrw-eio](ocaml-bytesrw-eio/README.md): Bytesrw readers and writers for Eio 46 - - [cache](ocaml-cache/README.md): Generic TTL-based cache with Eio support 47 82 - [cam](ocaml-cam/README.md): Collision Avoidance Maneuver design for conjunction assessment 48 83 - [cbor](ocaml-cbor/README.md): Native CBOR codec with type-safe combinators 49 - - [ccsds](ocaml-ccsds/README.md): CCSDS Protocol Suite for OCaml 50 84 - [cdm](ocaml-cdm/README.md): Conjunction Data Message (CCSDS 508.0-B-1) 51 85 - [cfdp](ocaml-cfdp/README.md): CCSDS File Delivery Protocol (CCSDS 727.0-B-5) 52 86 - [cfdp-eio](ocaml-cfdp/README.md): CFDP file transfer over TCP with Eio 53 - - [cgr](ocaml-cgr/README.md): Contact Graph Routing for time-varying satellite networks 54 - - [claude](ocaml-claude/README.md): OCaml client library for Claude Code 55 87 - [ocaml-claude-skills](ocaml-claude-skills/README.md): Claude Code skills marketplace for OCaml monorepo workflows 88 + - [claude](ocaml-claudeio/README.md): OCaml client library for Claude Code 56 89 - [clcw](ocaml-clcw/README.md): CCSDS Command Link Control Word (CCSDS 232.1-B-2) 57 90 - [collision](ocaml-collision/README.md): Collision probability computation for conjunction assessment 58 91 - [conpool](ocaml-conpool/README.md): Protocol-agnostic TCP/IP connection pooling library for Eio ··· 63 96 - [cop1-eio](ocaml-cop1/README.md): COP-1 service layer with Eio timers 64 97 - [cose](ocaml-cose/README.md): CBOR Object Signing and Encryption (COSE) 65 98 - [cpio](ocaml-cpio/README.md): CPIO archive reader and writer in pure OCaml 66 - - [crc](ocaml-crc/README.md): CRC checksums for OCaml 67 - - [crdt](ocaml-crdt/README.md): Conflict-free Replicated Data Types 68 99 - [crow](ocaml-crow/README.md): Crowbar campaign orchestrator for AFL fuzzing 69 100 - [crypto](ocaml-crypto/README.md): Simple symmetric cryptography (fork of mirage-crypto) 70 101 - [crypto-ec](ocaml-crypto/README.md): Elliptic Curve Cryptography (fork of mirage-crypto-ec) ··· 75 106 - [csts](ocaml-csts/README.md): CCSDS Cross Support Transfer Services (CSTS) 76 107 - [csv](ocaml-csv/README.md): Declarative CSV codecs 77 108 - [delegation](ocaml-delegation/README.md): X.509 certificate-based hierarchical resource delegation 78 - - [demod](ocaml-demod/README.md): BPSK/QPSK demodulation with carrier and timing recovery 79 - - [did](ocaml-did/README.md): Decentralized Identifiers (DIDs) per W3C DID Core 1.0 80 - - [did-plc](ocaml-did/README.md): did:plc method resolver for the Public Ledger of Credentials 81 - - [did-web](ocaml-did/README.md): did:web method resolver per W3C DID Method: Web 82 - - [dns-eio](ocaml-dns-eio/README.md): Eio-native DNS client on top of the dns protocol library 83 109 - [dpop](ocaml-dpop/README.md): DPoP (RFC 9449) proof-of-possession tokens 84 - - [dsp](ocaml-dsp/README.md): Digital signal processing primitives 85 110 - [erasure](ocaml-erasure/README.md): CCSDS 131.5-B erasure correcting codes 86 111 - [ewah](ocaml-ewah/README.md): EWAH-compressed bitmaps (git-compatible) 87 - - [fdir](ocaml-fdir/README.md): Integrity monitoring for kernel isolation structures 88 112 - [flexacm](ocaml-flexacm/README.md): CCSDS Flexible Advanced Coding and Modulation (131.2-B) 89 - - [freebox](ocaml-freebox/README.md): OCaml client for the Freebox router API 90 113 - [fsr](ocaml-fsr/README.md): CCSDS Frame Security Report (FSR) 91 114 - [gauth](ocaml-gauth/README.md): Google API authentication helpers: service accounts and local OAuth 92 115 - [gdocs](ocaml-gdocs/README.md): Google Docs API client for OCaml 93 116 - [git](ocaml-git/README.md): Git format in pure OCaml 94 117 - [globe](ocaml-globe/README.md): Reusable 3D Earth globe widget (pure OCaml + WebGL) 95 118 - [gpt](ocaml-gpt/README.md): A library to manipulate GUID Partition Tables 96 - - [hap](ocaml-hap/README.md): HomeKit Accessory Protocol (HAP) for OCaml 97 119 - [hcomp](ocaml-hcomp/README.md): CCSDS 123.0-B Lossless Multispectral and Hyperspectral Image Compression 98 120 - [hkdf](ocaml-hkdf/README.md): HMAC-based Extract-and-Expand Key Derivation Function (RFC 5869) 99 121 - [homebrew](ocaml-homebrew/README.md): Generic Homebrew primitives: formulas, taps, bottle conventions 100 122 - [hostname](ocaml-hostname/README.md): RFC 1123 hostname validation for HTTP Host headers 101 - - [http](ocaml-http/README.md): HTTP types: headers, status codes, methods, bodies, MIME types 102 123 - [idc](ocaml-idc/README.md): CCSDS 122.0-B Image Data Compression 103 124 - [initramfs](ocaml-initramfs/README.md): Build initramfs cpio archives from file and directory entries 104 - - [jailhouse](ocaml-jailhouse/README.md): Jailhouse partitioning hypervisor configuration 105 125 - [json](ocaml-json/README.md): Declarative JSON data manipulation for OCaml 106 126 - [json-logs](ocaml-json-logs/README.md): JSON structured logging reporter for the Logs library 107 127 - [jwt](ocaml-jwt/README.md): JSON Web Token (JWT) and CBOR Web Token (CWT) for OCaml ··· 110 130 - [ldpc](ocaml-ldpc/README.md): LDPC codes with belief propagation decoding 111 131 - [leb128](ocaml-leb128/README.md): LEB128 variable-length integer codec 112 132 - [lfsr](ocaml-lfsr/README.md): Linear Feedback Shift Registers for OCaml 113 - - [linkedin](ocaml-linkedin/README.md): OCaml client for the LinkedIn Voyager API 114 133 - [loc](ocaml-loc/README.md): Source locations and structured errors for text codecs (extracted from jsont) 115 134 - [ltp](ocaml-ltp/README.md): Licklider Transmission Protocol (RFC 5326) 116 135 - [ltp-eio](ocaml-ltp/README.md): Eio-based LTP segment transport 117 136 - [mal](ocaml-mal/README.md): CCSDS 521.0-B-1 Mission Operations Message Abstraction Layer 118 - - [matter](ocaml-matter/README.md): Matter protocol implementation for OCaml 119 137 - [mbr](ocaml-mbr/README.md): A library to manipulate Master Boot Records 120 138 - [mdns](ocaml-mdns/README.md): mDNS/DNS-SD service discovery (RFC 6763) 121 139 - [merge3](ocaml-merge3/README.md): 3-way merge with Myers diff ··· 123 141 - [meross](ocaml-meross/README.md): Meross smart plug local control over HTTP 124 142 - [meta](ocaml-meta/README.md): Streaming findlib META file codec for OCaml 125 143 - [monitor](ocaml-monitor/README.md): Workload monitor for containers, unikernels, and VMs 126 - - [mst](ocaml-mst/README.md): Generic Merkle Search Tree 127 144 - [oauth](ocaml-oauth/README.md): OAuth 2.0 authorization and token exchange 128 - - [oci](ocaml-oci/README.md): OCaml library and CLI for OCI and Docker image manipulation 129 145 - [ocm](ocaml-ocm/README.md): CCSDS Orbit Comprehensive Message (OCM) parser 130 146 - [odm](ocaml-odm/README.md): Orbit Data Messages (CCSDS 502.0-B-3) 131 147 - [oem](ocaml-oem/README.md): CCSDS 502.0-B-3 Orbit Ephemeris Message parser and interpolator 132 148 - [opam](ocaml-opam/README.md): Streaming opam file codec for OCaml 133 - - [openamp](ocaml-openamp/README.md): OpenAMP remoteproc interface for asymmetric multiprocessing 134 149 - [opm](ocaml-opm/README.md): CCSDS 502.0-B Orbit Parameter Message parser and serializer 135 150 - [osv](ocaml-osv/README.md): OSV.dev vulnerability database client 136 151 - [paseto](ocaml-paseto/README.md): PASETO (Platform-Agnostic Security Tokens) implementation 137 - - [pbkdf2](ocaml-pbkdf2/README.md): PBKDF2: Password-Based Key Derivation Function 2 (RFC 8018) 138 152 - [pds](ocaml-pds/README.md): ATProto Personal Data Server storage for OCaml 139 - - [pid1](ocaml-pid1/README.md): Minimal OCaml PID 1 primitives for VM init processes 140 - - [precommit](ocaml-precommit/README.md): Pre-commit hook initialization for OCaml projects 141 153 - [protobuf](ocaml-protobuf/README.md): Protocol Buffers codec for hand-written schemas 142 154 - [proximity1](ocaml-proximity1/README.md): CCSDS Proximity-1 Space Link Protocol (211.0-B) 143 155 - [publicsuffix](ocaml-publicsuffix/README.md): Public Suffix List implementation for OCaml ··· 149 161 - [reed-solomon](ocaml-reed-solomon/README.md): Reed-Solomon error correction over GF(2^8) 150 162 - [rego](ocaml-rego/README.md): Native OCaml Rego/OPA policy engine 151 163 - [requests](ocaml-requests/README.md): Batteries included HTTPS client library for OCaml 152 - - [respond](ocaml-respond/README.md): Eio HTTP server with static file serving and route handlers 153 - - [retry](ocaml-retry/README.md): Generic retry logic with exponential backoff 154 164 - [rice](ocaml-rice/README.md): CCSDS 121.0-B-3 Lossless Data Compression (Rice/Golomb coding) 155 - - [rpmsg](ocaml-rpmsg/README.md): RPMsg inter-partition messaging over shared memory 156 - - [rtlsdr](ocaml-rtlsdr/README.md): RTL-SDR IQ sample reader 157 165 - [runc](ocaml-runc/README.md): OCI runtime spec types and runc command wrapper 158 166 - [s3](ocaml-s3/README.md): Pure-OCaml S3 protocol client 159 167 - [sbom](ocaml-sbom/README.md): Software Bill of Materials (SBOM) generation for OCaml ··· 170 178 - [sgp4](ocaml-sgp4/README.md): SGP4/SDP4 satellite orbit propagator 171 179 - [short-ldpc](ocaml-short-ldpc/README.md): CCSDS 131.4-B short block-length LDPC codes 172 180 - [sigstore](ocaml-sigstore/README.md): Sigstore signing and verification for OCaml 173 - - [slack](ocaml-slack/README.md): OCaml client for the Slack Web API 174 181 - [sle](ocaml-sle/README.md): CCSDS Space Link Extension (SLE) protocols 175 182 - [sle-eio](ocaml-sle/README.md): Eio-based SLE client 176 183 - [space-packet](ocaml-space-packet/README.md): CCSDS 133.0-B Space Packet Protocol 177 184 - [spacedata](ocaml-spacedata/README.md): Space situational awareness data sources 178 185 - [spacefibre](ocaml-spacefibre/README.md): SpaceFibre (ECSS-E-ST-50-11C) 179 186 - [spacewire](ocaml-spacewire/README.md): SpaceWire (ECSS-E-ST-50-12C) and RMAP (ECSS-E-ST-50-52C) 180 - - [spake2](ocaml-spake2/README.md): SPAKE2 and SPAKE2+ Password-Authenticated Key Exchange 181 187 - [sqlite](ocaml-sqlite/README.md): Minimal SQLite key-value store for OCaml 182 188 - [squashfs](ocaml-squashfs/README.md): SquashFS compressed filesystem reader in pure OCaml 183 - - [srp](ocaml-srp/README.md): SRP-6a Secure Remote Password protocol 184 189 - [sse](ocaml-sse/README.md): Server-Sent Events (SSE) parser and serializer 185 190 - [stix](ocaml-stix/README.md): STIX 2.1 cyber threat intelligence objects and TAXII 2.1 client 186 191 - [streaming-aead](ocaml-streaming-aead/README.md): Streaming Authenticated Encryption (OAE2) for large data ··· 195 200 - [tls-eio](ocaml-tls/README.md): Transport Layer Security purely in OCaml - Eio 196 201 - [tm](ocaml-tm/README.md): CCSDS TM Transfer Frames (CCSDS 132.0-B) 197 202 - [toml](ocaml-toml/README.md): TOML 1.1 codec library for OCaml 198 - - [tty](ocaml-tty/README.md): Terminal styling and layout widgets 199 - - [tty-eio](ocaml-tty/README.md): Eio bindings for tty progress bars 200 203 - [turbo](ocaml-turbo/README.md): Turbo codes with BCJR/MAP decoding 201 204 - [udpcl](ocaml-udpcl/README.md): UDP Convergence Layer for the Bundle Protocol (RFC 7122) 202 205 - [uslp](ocaml-uslp/README.md): CCSDS USLP Transfer Frames (CCSDS 732.1-B-2) 203 - - [vec3](ocaml-vec3/README.md): 3D vectors for astrodynamics and rendering 204 206 - [viterbi](ocaml-viterbi/README.md): Convolutional codes with Viterbi decoding 205 207 - [vlog](ocaml-vlog/README.md): Cmdliner terms for ergonomic logging configuration 206 208 - [vz](ocaml-vz/README.md): Apple Virtualization.framework bindings for OCaml 207 209 - [wal](ocaml-wal/README.md): Write-Ahead Log for OCaml 208 - - [websocket](ocaml-websocket/README.md): WebSocket frame codec (RFC 6455) 209 210 - [x509](ocaml-x509/README.md): Public Key Infrastructure (RFC 5280, PKCS) purely in OCaml 210 211 - [xff](ocaml-xff/README.md): X-Forwarded-For parsing and trusted proxy detection 211 212 - [xml](ocaml-xml/README.md): Minimal XML parser and serializer 212 213 - [xtce](ocaml-xtce/README.md): XTCE: XML Telemetric and Command Exchange (CCSDS 660.1-B) 213 214 - [yaml](ocaml-yaml/README.md): YAML 1.2 codec library for OCaml 214 - - [zephyr](ocaml-zephyr/README.md): Virtio-serial port IO for guest VMs 215 215 - [osrelease](osrelease/README.md): Detect operating system, distro and version information 216 216 - [prune](prune/README.md): Find unused exports in OCaml interface files 217 217 - [uniboot](uniboot/README.md): Minimal bootable disk image builder