Next:
Introduction
[
Contents
]
GNU Artanis web-framework Manual
¶
Table of Contents
1 Introduction
1.1 Conventions used in this manual
1.2 No warranty
2 License
3 Installation
3.1 For Guix users
3.2 For Ubuntu/Debian users to install dependencies
3.3 For hardcore users
3.4 For contributors
4 Configuration
4.1 Config APIs
5 Hello World
5.1 Use Guile REPL and verify GNU Artanis installation
5.2 Simple HTTP server
5.3 Try simple URL remapping
5.4 More complex URL remapping
5.5 Regex in URL remapping
5.6 Database operating
6 Scheme Basics
6.1 For newbies
6.2 For Pythonistas
6.3 For Rubyist
6.4 For deep learners
7 GNU Artanis Basics
7.1 How to run a site with GNU Artanis
7.2 Initialization
7.3 Registering handlers for HTTP methods
7.4 Emit a Response
7.5 Running the server
7.6 Working with Nginx
8 The Art command line
8.1 art create
8.2 art draw
8.3 art api
8.4 art migrate
8.5 art work
9 URL remapping
9.1 Introduction to URL remapping
9.2 URL handling
9.3 OPTIONS method
9.4 Get parameters from a URL
9.5 Redirecting
10 Route context
10.1 Route context APIs
11 Page status handling
11.1 HTTP status code
11.2 The default behaviour of status handling
11.3 Dynamic status page generating
12 MVC
12.1 Controllers/Views
12.2 Models
12.2.1 Create models
12.2.2 Define table in Model
12.2.3 Tables dependencies
12.2.4 Model API
12.3 Model mapping
12.3.1 Table get
12.3.2 Table set
12.3.3 Table existance
12.3.4 Table schema get
12.3.5 Table create
12.3.6 Table remove
12.3.7 Table modify
12.3.8 Further reading
13 Query String
13.1 Query string from GET
13.2 Query string from POST
14 Layouts and Rendering in GNU Artanis
14.1 Templating
14.2 Templating for Pythoners
14.3 Templating for Rubyists
14.4 Templating APIs
14.5 Embedded Templates
14.5.1 Template special commands
14.6 SXML Templates
15 Databases
15.1 DB init hooks
15.2 DB connection pool
15.3 Migration
15.4 ORM problem
15.5 SSQL
15.6 FPRM (experimental)
15.6.1 Connect to DB server
15.6.2 Map DB table
15.6.3 Create table
15.6.4 Get columns from table
15.6.5 Set values to table
15.6.6 Drop a table
15.6.7 Check existence of table
15.6.8 Get schema of a table
15.7 SQL Mapping (experimental)
16 RESTful API
17 MIME
17.1 JSON
17.2 CSV
17.3 XML
17.4 SXML
18 Upload files
18.1 Receive an upload from the client
18.2 Send an upload to a Server
19 Sessions
19.1 Session backend
20 Cookies
21 Authentication
21.1 Init Authentication
21.2 Basic Authentication
21.3 Common Authentication
21.4 Login Authentication
21.5 Authenticate checking
21.6 Customized Authentication
21.7 Websocket Authentication
21.8 HMAC
22 Cache
22.1 On web caching
22.2 Cache APIs
23 Shortcuts
23.1 What is shortcuts?
23.2 Database connection
23.3 Raw SQL
23.4 String template
23.5 SQL-Mapping shortcut (unfinished)
23.6 Authentication shortcut
24 Websocket (Experimental)
24.1 Websocket introduction
24.2 Websocket basic usage
24.3 Websocket named-pipe
24.4 Websocket APIs
24.4.1 Websocket configuration
24.4.2 Websocket application
24.5 Websocket frame
24.6 Websocket opcode
24.7 Websocket authentication
25 Ragnarok server core
25.1 Ragnarok introduction
25.2 Principles
25.3 Features
25.4 Ragnarok APIs
26 Key-Value Database
26.1 LPC
27 Utils
27.1 String Template
27.2 Random String Generator
27.3 Cryptographic hash functions
27.4 Stack & Queue
27.5 Useful string operation
27.6 Time operation tool
28 Debug mode
29 Appendix A GNU Free Documentation License