Enter the query into the form above. You can look for specific version of a package by using @ symbol like this: gcc@10.
API method:
GET /api/packages?search=hello&page=1&limit=20
where search is your query, page is a page number and limit is a number of items on a single page. Pagination information (such as a number of pages and etc) is returned
in response headers.
If you'd like to join our channel search send a patch to ~whereiseveryone/toys@lists.sr.ht adding your channel as an entry in channels.scm.
This package provides string type based on [Bigarray], for use in I/O and C-bindings.
This package backports some of the new stdlib features to older compilers, such as the Stdlib module. This allows projects that require compatibility with older compiler to use these new features in their code.
Contains Async's core data structures, like Deferred. Async_kernel is portable, and so can be used in JavaScript using Async_js.
Cmdliner is a module for the declarative definition of command line interfaces. It provides a simple and compositional mechanism to convert command line arguments to OCaml values and pass them to your functions. The module automatically handles syntax errors, help messages and UNIX man page generation. It supports programs with single or multiple commands and respects most of the POSIX and GNU conventions.
Syntax extension for writing in-line benchmarks in ocaml code.
IO pages are page-aligned, and wrapped in the Cstruct library to avoid copying the data contained within the page.
A ppx rewriter that rewrites simple match statements with an if then else expression.
Ocaml-cairo2 is a binding to Cairo, a 2D graphics library with support for multiple output devices. Currently supported output targets include the X Window System, Quartz, Win32, image buffers, PostScript, PDF, and SVG file output.
This package provides two library modules:
Stream: imperative streams, with in-place update and memoization of the latest element produced.
Genlex: a small parameterized lexical analyzer producing streams of tokens from streams of characters.
The two modules are designed for use with Camlp4 and Camlp5: The stream patterns and stream expressions of Camlp4/Camlp5 consume and produce data of type 'a Stream.t. The Genlex tokenizer can be used as a simple lexical analyzer for Camlp4/Camlp5-generated parsers.
The Stream module can also be used by hand-written recursive-descent parsers, but is not very convenient for this purpose.
The Stream and Genlex modules have been part of the OCaml standard library for a long time, and have been distributed as part of the core OCaml system. They will be removed from the OCaml standard library at some future point, but will be maintained and distributed separately in the camlpstreams package.
OUnit2 is a unit testing framework for OCaml. It is similar to JUnit and other XUnit testing frameworks.
Eio_main selects an appropriate backend (e.g. eio_linux or eio_luv), depending on your platform.
This package backports new language features such as let+ to older OCaml compilers.
This module provides an abstract engine for text edition. It can be used to write text editors, edition widgets, readlines, and more. The module Zed uses Camomile to fully support the Unicode specification, and implements an UTF-8 encoded string type with validation, and a rope datastructure to achieve efficient operations on large Unicode buffers. Zed also features a regular expression search on ropes. To support efficient text edition capabilities, Zed provides macro recording and cursor management facilities.
This library implements a rather complete and efficient monadic parser combinator library similar to the Parsec library for Haskell by Daan Leijen and the FParsec library for FSharp by Stephan Tolksdorf.
Opam's default solver is designed to maintain a set of packages over time, minimising disruption when installing new programs and finding a compromise solution across all packages. In many situations (e.g. CI, local roots or duniverse builds) this is not necessary, and we can get a solution much faster by using a different algorithm. This package provides a generic solver library which uses 0install's solver library. The library uses the CUDF library in order to interface with opam as it is the format common used to talk to all the supported solvers.
MirageOS OS library for Xen targets, which handles the main loop and timers. It also provides the low level C startup code and C stubs required by the OCaml code.
This library implements structured concurrency for ocaml. It offers no backwards compatibility guarantees.
Luv is a binding to libuv, the cross-platform C library that does asynchronous I/O in Node.js and runs its main loop. Besides asynchronous I/O, libuv also supports multiprocessing and multithreading. Multiple event loops can be run in different threads. libuv also exposes a lot of other functionality, amounting to a full OS API, and an alternative to the standard module Unix.
This package can automatically generate runtime types from type definitions.
Client-side URL transfer library, supporting HTTP and a multitude of other network protocols (FTP/SMTP/RTSP/etc).
This project provides a Mmap.map_file function for mapping files in memory. This function is the same as the Unix.map_file function added in OCaml >= 4.06.
Libraries for creating shared memory producer/consumer rings. The rings follow the Xen ABI and may be used to create or implement Xen virtual devices.
OCamlbuild is a generic build tool, that has built-in rules for building OCaml library and programs.
Lambda-Term is a cross-platform library for manipulating the terminal. It provides an abstraction for keys, mouse events, colors, as well as a set of widgets to write curses-like applications. The main objective of Lambda-Term is to provide a higher level functional interface to terminal manipulation than, for example, ncurses, by providing a native OCaml interface instead of bindings to a C library.