Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 63 lines (36 sloc) 1.706 kb
b22027f Initial checkin of various non-code files
Carl Howells authored
1 Snap Framework
2 ==============
3
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
4 Snap is a web framework for Haskell, based on iteratee I/O (as [popularized by
5d591d8 @mightybyte More readme work
mightybyte authored
5 Oleg Kiselyov](http://okmij.org/ftp/Streams.html#iteratee)). For more
6 information about Snap, read the `README.SNAP.md` or visit the Snap project
7 website at http://www.snapframework.com/.
b22027f Initial checkin of various non-code files
Carl Howells authored
8
9 ## Library contents
10
5d591d8 @mightybyte More readme work
mightybyte authored
11 This is top-level project for the Snap Framework, which contains:
b22027f Initial checkin of various non-code files
Carl Howells authored
12
13 * a command-line utility for creating initial Snap applications
14
15 * a library allowing Snap applications to recompile actions on the
16 fly in development mode, with no performance loss in production
17 mode.
18
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
19 * a "snaplet" API allowing web applications to be build from composable
20 pieces.
b22027f Initial checkin of various non-code files
Carl Howells authored
21
22 Building snap
23 =============
24
25 The snap tool and library are built using
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
26 [Cabal](http://www.haskell.org/cabal/) and
b22027f Initial checkin of various non-code files
Carl Howells authored
27 [Hackage](http://hackage.haskell.org/packages/hackage.html). Just run
28
29 cabal install
30
31 from the `snap` toplevel directory.
32
33
34 ## Building the Haddock Documentation
35
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
36 The haddock documentation can be built using 'cabal haddock'.
b22027f Initial checkin of various non-code files
Carl Howells authored
37
38 The docs get put in `dist/doc/html/`.
39
40
41 ## Building the testsuite
42
43 To build the test suite, `cd` into the `test/` directory and run
44
45 $ cabal configure
46 $ cabal build
47
48 From here you can invoke the testsuite by running:
49
50 $ ./runTestsAndCoverage.sh
51
52
53 The testsuite generates an `hpc` test coverage report in `test/dist/hpc`.
d8d6ab3 @mightybyte Add description of suggested roadmap for learning about snaplets.
mightybyte authored
54
55
56 ## Roadmap to Understanding Snaplets
57
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
58 1. Read Tutorial.lhs which is in `project_template/tutorial/src`.
d8d6ab3 @mightybyte Add description of suggested roadmap for learning about snaplets.
mightybyte authored
59 2. Generate and read the haddock docs.
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
60 3. The test code has the nice property that it actually functions as a pretty good example app and covers a lot of the use cases.
d8d6ab3 @mightybyte Add description of suggested roadmap for learning about snaplets.
mightybyte authored
61 4. If you're interested in the implementation, read design.md.
96e3347 @mightybyte Updated readmes, removed example app and related data.
mightybyte authored
62
Something went wrong with that request. Please try again.