The blank-canvas package

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]

blank-canvas is a Haskell binding to the complete HTML5 Canvas API. blank-canvas allows Haskell users to write, in Haskell, interactive images onto their web browsers. blank-canvas gives the user a single full-window canvas, and provides many well-documented functions for rendering images.

{--}
module Main where
import Graphics.Blank                     -- import the blank canvas

main = blankCanvas 3000 $ \ context -> do -- start blank canvas on port 3000
  send context $ do                       -- send commands to this specific context
    moveTo(50,50)
    lineTo(200,100)
    lineWidth 10
    strokeStyle "red"
    stroke()                              -- this draws the ink into the canvas

For more details, read the blank-canvas wiki.


[Skip to ReadMe]

Properties

Versions0.2.0, 0.2.0.1, 0.2.2, 0.2.3, 0.2.3.1, 0.2.3.2, 0.3.1, 0.4.0, 0.4.0, 0.5, 0.6, 0.6.1
Change logNone available
Dependenciesaeson (==0.7.*), base (>=4.3.1 && <4.8), bytestring (==0.10.*), containers (==0.5.*), http-types (==0.8.*), kansas-comet (==0.3.*), network (>=2.4 && <2.6), scotty (==0.8.*), stm (>=2.2 && <2.5), text (==1.1.*), transformers (>=0.3 && <0.5), vector (==0.10.*), wai (==3.*), wai-extra (==3.*), warp (==3.*) [details]
LicenseBSD3
CopyrightCopyright (c) 2014 The University of Kansas
AuthorAndy Gill
Maintainerandygill@ku.edu
CategoryGraphics
Home pagehttps://github.com/ku-fpg/blank-canvas/wiki
Bug trackerhttps://github.com/ku-fpg/blank-canvas/issues
Source repositoryhead: git clone git://github.com/ku-fpg/blank-canvas.git
UploadedSat Jun 21 05:23:49 UTC 2014 by AndyGill

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for blank-canvas-0.4.0

[back to package description]

Background

blank-canvas is a Haskell binding to the complete HTML5 Canvas API. blank-canvas allows Haskell users to write, in Haskell, interactive images onto their web browsers. blank-canvas gives the user a single full-window canvas, and provides many well-documented functions for rendering images.

First Example

{-# LANGUAGE OverloadedStrings #-}
module Main where

import Graphics.Blank                     -- import the blank canvas

main = blankCanvas 3000 $ \ context -> do -- start blank canvas on port 3000
        send context $ do                 -- send commands to this specific context
                moveTo(50,50)
                lineTo(200,100)
                lineWidth 10
                strokeStyle "red"
                stroke()                  -- this draws the ink into the canvas

Running this program, and going to http://localhost:3000/ gives

images/Red_Line.png

For more details about this example, see Red Line.

Documentation

| Link | Notes | |-------|-------| | Examples | Various complete examples of using blank-canvas | | Installation | How to install blank-canvas | | Hackage | Current release is 0.4.0 | | API | Discussion of API, compared with the original JavaScript API | | Canvas Examples | Transliterated from http://www.html5canvastutorials.com/ into Haskell and blank-canvas, with kind permission of Eric Rowell, author of the JavaScript HTML5 Canvas Tutorial. | | FAQ | F.A.Q. |

Other Links

Credits

Thank you to Eric Rowell, for allowing blank-canvas to base our Canvas examples on his JavaScript Canvas examples.

The "Haskell" picture is taken by Mandy Lackey, from link <http://www.flickr.com/photos/77649176@N00/3776224595/.> This picture allows sharing, under the creative commons license.