nero: Lens-based HTTP toolkit

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain] [Publish]


This package provides the core functionality of the Nero HTTP toolkit.

Check the README for a more detailed explanation.

[Skip to Readme]


Versions 0.1, 0.1.1, 0.2, 0.3, 0.3.1, 0.3.1
Change log
Dependencies base (>=4.6 && <4.9), bifunctors (>=, bytestring (>=, containers (>=, lens (>=, text (>= [details]
License BSD-3-Clause
Copyright Copyright (C) 2015 J. Daniel Navarro
Author Danny Navarro
Maintainer Danny Navarro <>
Category Web
Home page
Bug tracker
Source repo head: git clone git://
Uploaded by jdnavarro at 2015-04-16T09:58:23Z




Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Readme for nero-0.3.1

[back to package description]


A Lens-based HTTP toolkit.

⚠️ The following is a declaration of intentions. Expect wild changes in the API until the 1.0.0 release.

Hackage Version Build Status


{-# LANGUAGE OverloadedStrings #-}
import Nero.Prelude
import Nero (Request, Response, _GET, prefixed, ok)
import Nero.Warp (serve) -- from `nero-warp`

app :: Request -> Maybe Response
app request = request ^? _GET . prefixed "/hello/" <&> \name ->
    ok $ "<h1>Hello " <> name <> "</h1>"

main :: IO ()
main = serve 8080 app

More examples in the examples directory.