Skip to content
Colin Adams edited this page May 1, 2016 · 59 revisions

Here are some third-party libraries for Idris:

Parsing

Package Description Repository
Lightyear Parser combinators ziman/lightyear
idris-monadic-parser A lightweight alternative tauli/idris-monadic-parser
commonmark Markdown parser using CommonMark soimort/idris-commonmark
tomladris TOML parser based on Lightyear eklavya/tomladris

Pretty Printers

Package Description Repository
wl-pprint Wadler/Leijen pretty printer [shayan-najd/wl-pprint] (https://github.com/shayan-najd/wl-pprint)

Data

Package Description Repository
text Packed encoded strings. Working but not very efficient due to abuse of String as raw byte storage. ziman/text
idris-lens Library for lenses. idris-hackers/idris-lens
idris-containers Various data structures for use in the Idris Language. jfdm/idris-containers

Testing

Package Description Repository
QuickCheck A port of QuickCheck to Idris david-christiansen/idris-quickcheck

Bindings

Package Description Repository
SDL SDL bindings edwinb/SDL-idris
usb Low level bindings to libusb-1.0 high level USB effects. idris-hackers/usb
Sodium An experimental Idris Binding to libSodium edwinb/sodium-idris
curses Curses bindings JakobBruenker/curses-idris
SQLIte Bindings for SQLite IdrisSqlite
libmicrohttpd Bindings for GNU libmicrohttpd Idris microhttpd
libwebsockets Bindings for libwebsockets Idris libwebsockets

JavaScript

Package Description Repository
IdrisScript FFI Bindings to interact with the unsafe world of JavaScript idris-hackers/IdrisScript
iQuery Idris Lib to interact with the DOM and Browser API for the JavaScript backend idris-hackers/iQuery

Web

Package Description Repository
IdrisWeb A secure web framework, built in the Idris language. idris-hackers/IdrisWeb

System Libraries

Package Description Repository
posix FFI calls to handle files, etc. idris-hackers/idris-posix

Networking

Package Description Repository
Protocols A DSL for describing and implementing communication protocols. edwinb/Protocols
IdrisNet2 Verified networking using dependent types. SimonJF/IdrisNet2
idris-http A library for making http requests written in idris. uwap/idris-http

Miscellaneous

Package Description Repository
Type providers demos Demos of the type providers feature: CSV and SQLite david-christiansen/idris-type-providers
Quantities Type-safe physical computations and unit conversions timjb/quantities
Command Arg Parser A rudimentary command args parser. jfdm/idris-args
Config File Parser Rudimentary config file parser. Parses INI, JSON, YAML and property files. jfdm/idris-config
Free Free Monads and useful constructions to work with them idris-hackers/idris-free
Bifunctors Bifunctors (+verified), biapplicatives (+verified), etc. Based on Kmett's Haskell bifunctors package. japesinator/Idris-Bifunctors
Profunctors Profunctors (+verified), lenses, isomorphisms, prisms. Based on Kmett's Haskell profunctors package. japesinator/Idris-Profunctors
Probability Manipulation and display of probability distributions. Based on Probabilistic Functional Programming. blackbrane/probability
Crypto Implementation of cryptographic primitives using Idris idris-hackers/idris-crypto
Clone this wiki locally