]> gitweb.factorcode.org Git - factor.git/blob - basis/furnace/furnace-docs.factor
8fbf992e627959031652d51bb6bc453ddc5744eb
[factor.git] / basis / furnace / furnace-docs.factor
1 USING: assocs help.markup help.syntax kernel
2 quotations sequences strings urls xml.data http ;
3 IN: furnace
4
5 ARTICLE: "furnace.persistence" "Furnace persistence layer"
6 { $subsections "furnace.db" }
7 "Server-side state:"
8 { $subsections
9     "furnace.sessions"
10     "furnace.conversations"
11     "furnace.asides"
12     "furnace.presentation"
13 } ;
14
15 ARTICLE: "furnace.presentation" "Furnace presentation layer"
16 "HTML components:"
17 { $subsections
18     "html.components"
19     "html.forms"
20 }
21 "Content templates:"
22 { $subsections
23     "html.templates"
24     "html.templates.chloe"
25     "html.templates.fhtml"
26     "furnace.boilerplate"
27 }
28 "Other types of content:"
29 { $subsections
30     "furnace.syndication"
31     "furnace.json"
32 } ;
33
34 ARTICLE: "furnace.load-balancing" "Load balancing and fail-over with Furnace"
35 "The Furnace session manager persists sessions to a database. This means that HTTP requests can be transparently distributed between multiple Factor HTTP server instances, running the same web app on top of the same database, as long as the web applications do not use mutable global state, such as global variables. The Furnace framework itself does not use any mutable global state." ;
36
37 ARTICLE: "furnace" "Furnace framework"
38 "The " { $vocab-link "furnace" } " vocabulary implements a full-featured web framework on top of the " { $link "http.server" } ". Some of its features include:"
39 { $list
40     "Session management capable of load-balancing and fail-over"
41     "Form components and validation"
42     "Authentication system with basic authentication or login pages, and pluggable authentication backends"
43     "Easy Atom feed syndication"
44     "Conversation scope and asides for complex page flow"
45 }
46 "Major functionality:"
47 { $subsections
48     "furnace.actions"
49     "furnace.alloy"
50     "furnace.persistence"
51     "furnace.presentation"
52     "furnace.auth"
53     "furnace.load-balancing"
54 }
55 "Utilities:"
56 { $subsections
57     "furnace.referrer"
58     "furnace.redirection"
59     "furnace.extension-points"
60     "furnace.misc"
61 }
62 "Related frameworks:"
63 { $subsections
64     "db"
65     "xml"
66     "http.server"
67     "logging"
68     "urls"
69 } ;
70
71 ABOUT: "furnace"