| CARVIEW |
Select Language
HTTP/1.1 200 OK
Connection: keep-alive
Server: nginx/1.24.0 (Ubuntu)
Content-Type: text/html; charset=utf-8
Cache-Control: public, max-age=300
Content-Encoding: gzip
Via: 1.1 varnish, 1.1 varnish
Accept-Ranges: bytes
Age: 0
Date: Sat, 17 Jan 2026 23:17:03 GMT
X-Served-By: cache-dfw-ktki8620099-DFW, cache-bom-vanm7210052-BOM
X-Cache: MISS, MISS
X-Cache-Hits: 0, 0
X-Timer: S1768691823.769232,VS0,VE292
Vary: Accept, Accept-Encoding
transfer-encoding: chunked
suavemente: An applicative functor that seamlessly talks to HTML inputs.
suavemente: An applicative functor that seamlessly talks to HTML inputs.
Modules
[Index] [Quick Jump]
Downloads
- suavemente-0.2.0.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
| Versions [RSS] | 0.1.0.0, 0.2.0.0 |
|---|---|
| Change log | ChangeLog.md |
| Dependencies | aeson, base (>=4.7 && <5), blaze-markup, bytestring, colour, containers, diagrams-core, diagrams-lib, diagrams-svg, interpolatedstring-perl6, lens, mtl, servant, servant-blaze, servant-server, servant-websockets, stm, streaming, svg-builder, text, transformers, warp, websockets [details] |
| License | BSD-3-Clause |
| Copyright | 2019 Sandy Maguire |
| Author | Sandy Maguire |
| Maintainer | sandy@sandymaguire.me |
| Uploaded | by isovector at 2019-07-08T14:37:57Z |
| Category | Web |
| Home page | https://github.com/isovector/suavemente#readme |
| Bug tracker | https://github.com/isovector/suavemente/issues |
| Source repo | head: git clone https://github.com/isovector/suavemente |
| Distributions | NixOS:0.2.0.0 |
| Downloads | 1199 total (6 in the last 30 days) |
| Rating | (no votes yet) [estimated by Bayesian average] |
| Your Rating |
|
| Status | Docs uploaded by user [build log] All reported builds failed as of 2019-07-08 [all 3 reports] |
Readme for suavemente-0.2.0.0
[back to package description]suavemente
Dedication
Today's kitchen is all about a well-planned space that makes cooking a completely interactive experience among family and friends.
Candice Olson
Overview
Suavemente is an applicative functor capable of seamlessly talking to HTML elements. Running a suavemente program automatically spins up a webserver and hooks up its pages with websockets. The use case is to quickly deploy simple, interactive Haskell programs without needing to figure out how the fuck GHCJS works.
Example
{-# LANGUAGE ApplicativeDo #-}
module Main where
import Diagrams.Backend.SVG
import Diagrams.Prelude hiding (rad)
import Web.Suavemente
import Web.Suavemente.Diagrams
main :: IO ()
main = suavemente sendDiagram $ do
rad <- slider "Radius" 1 10 5
r <- realSlider "Red" 0 1 0.05 1
g <- realSlider "Green" 0 1 0.05 1
b <- realSlider "Blue" 0 1 0.05 1
x <- slider "X" 0 20 10
y <- slider "Y" 0 20 10
pure (
circle rad
# fc (sRGB r g b)
# translate (r2 (x, y))
# rectEnvelope (p2 (0, 0)) (r2 (20, 20))
:: Diagram B)
Hit localhost:8080 to see it in action!