Haxl

A Haskell library that simplifies access to remote data, such as databases or web-based services.

  • Owner: facebook/Haxl
  • Platform:
  • License:: BSD 3-Clause "New" or "Revised" License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Haxl Logo

Haxl

Build Status

Haxl is a Haskell library that simplifies access to remote data, such
as databases or web-based services. Haxl can automatically

  • batch multiple requests to the same data source,
  • request data from multiple data sources concurrently,
  • cache previous requests,
  • memoize computations.

Having all this handled for you behind the scenes means that your
data-fetching code can be much cleaner and clearer than it would
otherwise be if it had to worry about optimizing data-fetching. We'll
give some examples of how this works in the pages linked below.

There are two Haskell packages here:

To use Haxl in your own application, you will likely need to build one or more
data sources: the thin layer between Haxl and the data that you want
to fetch, be it a database, a web API, a cloud service, or whatever.

There is a generic datasource in "Haxl.DataSource.ConcurrentIO" that
can be used for performing arbitrary IO operations concurrently, given
a bit of boilerplate to define the IO operations you want to perform.

The haxl-facebook package shows how we might build a Haxl data
source based on the existing fb package for talking to the Facebook
Graph API.

Where to go next?

Overview

Name With Ownerfacebook/Haxl
Primary LanguageHaskell
Program languageHaskell (Language Count: 1)
Platform
License:BSD 3-Clause "New" or "Revised" License
Release Count6
Last Release Name2.1.2.0 (Posted on )
First Release Name0.3.1.0 (Posted on )
Created At2014-04-02 20:10:58
Pushed At2023-11-01 21:17:41
Last Commit At
Stargazers Count4.2k
Watchers Count196
Fork Count334
Commits Count308
Has Issues Enabled
Issues Count37
Issue Open Count3
Pull Requests Count16
Pull Requests Open Count5
Pull Requests Close Count91
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private
To the top